Итак, я пытаюсь определить операторы +
и +=
для класса Ruby, и я стараюсь:Как определить составной оператор в Ruby (например, + =)?
class A
def +(x)
end
def +=(x)
end
end
Руби любит +
но не +=
, что дает мне эту ошибку:
syntax error, unexpected '=', expecting ';' or '\n'
Что я сделал не так?
'а + = b' ===' а = а + b', нет? –
Семантически, да. Однако Ruby (1.9.3, btw) не любит синтаксис метода оператора, который, как я думал, будет приемлемым, точно так же, как это определено для Fixnums, Strings и Arrays. –
@xuinkrbin. Для любого из этих классов не существует метода '+ =' или любого класса в Ruby. –