Sha256: bf2c21cb1e96fcaa6a45a308a32d682effe9283b20405947bc39acdb15f305d7
Contents?: true
Size: 503 Bytes
Versions: 15
Compression:
Stored size: 503 Bytes
Contents
module BazaModels::Model::Delegation def self.included(base) base.extend(ClassMethods) end module ClassMethods def delegate(*methods, args) methods.each do |method| if args[:prefix] method_name = "#{args.fetch(:to)}_#{method}" else method_name = method end define_method(method_name) do |*method_args, &method_blk| __send__(args[:to]).__send__(method, *method_args, &method_blk) end end end end end
Version data entries
15 entries across 15 versions & 1 rubygems