Ruby alias метод цепочки - PullRequest
       1

Ruby alias метод цепочки

1 голос
/ 18 февраля 2010

У меня есть такой класс

class Foo
   attr_accessor :name
end

f = Foo.new
f.name = "bar"

, и я хотел бы, чтобы он отвечал на следующую цепочку методов с атрибутом name, чтобы он взаимодействовал с другим объектом

f.baz.name == f.name

Есть ли простой способ вернуть это?

1 Ответ

3 голосов
/ 18 февраля 2010
#!/usr/bin/ruby1.8

class Foo

  attr_accessor :name

  def baz
    self
  end

end

foo = Foo.new
foo.name = 'Fred'
p [foo.name, foo.baz.name]    # => ["Fred", "Fred"]
foo.baz.name = 'Barney'
p [foo.name, foo.baz.name]    # => ["Barney", "Barney"]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...