【发布时间】:2013-03-16 14:36:25
【问题描述】:
我委托了几个方法,并且还希望它们都是私有的。
class Walrus
delegate :+, :to => :bubbles
def bubbles
0
end
end
我可以说private :+,但我必须对每种方法都这样做。有没有办法返回委托方法列表或让委托创建私有方法?
【问题讨论】:
-
这部分不清楚:“我可以说是私有的:+,但是我委托的每个方法都必须立即、明确地设为私有”。这是为什么呢?
-
如果我想委托 10 个方法并让它们全部私有,我必须这样做:
delegate :method_1, :method_2, :method_3, :method_4, :method_5, :method_6, :method_7, :method_8, :method_9, :method_10, :to => :bubbles然后private :method_1, :method_2, :method_3, :method_4, :method_5, :method_6, :method_7, :method_8, :method_9, :method_10 -
那么,你写的方式有误导性。
标签: ruby delegates activesupport