我想消除“=”符号的特定原因。它可能看起来像这样:替代“=”的红宝石方法
cat_that_has_name("Kelly").as(:kelly)
kelly.do_something
这里的“as”方法用于生成引用我的猫的方法“kelly”。任何人都可以帮助我吗?
任何建议,将不胜感激。
更新:
约尔格是正确的,我已经添加了一个简单的测试来证明我的意图:
require "test/unit"
class AsTest < Test::Unit::TestCase
def setup
@cats = ["Kelly", "Tommy"]
end
def teardown
end
def test_as
kelly1 = get_cat("Kelly")
get_cat("Kelly").as(:kelly2)
assert_equal(kelly1.object_id, kelly2.object_id)
end
private
def get_cat(name)
@cats.each do |cat|
if cat.to_s==name
return cat
end
end
return nil
end
end
你想消除哪个特定'=',在你的例子中看不到一个? – 2010-06-23 17:54:45
如果你的代码是“之后”,那么“之前”会是“kelly = cat_that_has_name(”Kelly“); kelly.do_something'? – 2010-06-23 23:22:03
@安德鲁,你是对的。 – eric2323223 2010-06-24 02:03:49