此模块用于代理一些方法
例如
class RecordCollection attr_accessor :records extend Forwardable def_delegator :@records, :[], :record_number end
@records是一个数组,defdelegator为这个类定义一个方法别名,这样可以通过rc.recordnumber(index)来访问指定索引的@records,换言之,record_number代理了@records的[]方法
class RecordCollection # re-open RecordCollection class def_delegators :@records, :size, :<<, :map end
代理更多方法,可以通过rc.size, rc << 4, rc.map等方法来直接调用。