Sha256: eaa710ff2d87226bc86fc231f64336b30654cdd41856e80940e6355586fcdfc4

Contents?: true

Size: 263 Bytes

Versions: 11

Compression:

Stored size: 263 Bytes

Contents

module Delegation
  def delegate *methods, receiver
    define_method :method_missing do |method, *args, &block|
      if methods.include?(method)
        receiver[:to].send(method, *args, &block)
      else
        raise NoMethodError
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
termit-2.10.0 lib/termit/modules/delegation.rb
termit-2.0.9 lib/termit/modules/delegation.rb
termit-2.0.8 lib/termit/modules/delegation.rb
termit-2.0.7 lib/termit/modules/delegation.rb
termit-2.0.6 lib/termit/modules/delegation.rb
termit-2.0.5 lib/termit/modules/delegation.rb
termit-2.0.4 lib/termit/modules/delegation.rb
termit-2.0.3 lib/termit/modules/delegation.rb
termit-2.0.2 lib/termit/modules/delegation.rb
termit-2.0.1 lib/termit/modules/delegation.rb
termit-2.0.0 lib/termit/modules/delegation.rb