У меня есть класс. Метод бар должен принимать аргумент Foo со значением по умолчанию, равным @fooRuby аргументы ключевого слова
class Foo
attr_accessor :foo
def bar(foo: foo)
p foo
end
end
В IRB я выполняю:
> f = Foo.new
> f.foo = 'foobar'
> f.bar
Для рубинового 2.0 результата:
=> "foobar"
и рубин 2.1:
=> nil
Кто может это объяснить havior?
Я могу поспорить, что в первую очередь кода с ошибкой броска –
определение функции бар (Foo: Foo) ', что это –
@RajarshiDas это определение метода , –