Sha256: 61cf8fac00ca7c59df8888fd498aa4ce1cc9ad797dabddcb3a6bd69ffe7d9b89

Contents?: true

Size: 467 Bytes

Versions: 1

Compression:

Stored size: 467 Bytes

Contents

module Domain
  module ImplDomain

    def self.new(c_methods = [], i_methods = [])
      i_methods = Array(i_methods)
      c_methods = Array(c_methods).unshift(Domain)
      Module.new{
        c_methods.each{|c_m| include(c_m)}
        define_singleton_method(:extend_object) do |obj|
          obj.module_eval{ i_methods.each{|i_m| include(i_m)} } if obj.is_a?(Class)
          super(obj)
        end
      }
    end

  end # module ImplDomain
end # module Domain

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
domain-1.0.0.rc1 lib/domain/support/impl_domain.rb