Я понимаю, что x == y
в Ruby интерпретируется как a. == (y)
. Я попытался проверить, могу ли я добиться того же с помощью специального метода foo
, например:
class Object
def foo(n)
self == n
end
end
class A
attr_accessor :x
end
a = A.new
a.x = 4
puts a.x.==(4) # => true
puts a.x.foo(4) # => true
puts a.x == 4 # => true
puts a.x foo 4 # => in `x': wrong number of arguments (1 for 0) (ArgumentError)
К сожалению, это не работает. Что мне не хватает? ==
- это специальный метод в Ruby?