Sha256: ee6c2bb5509abaf02bec91af8e465c23e25de24a65c8da93cb2475763280a751

Contents?: true

Size: 547 Bytes

Versions: 2

Compression:

Stored size: 547 Bytes

Contents

require 'orangutan/stub_include'

module Orangutan
  class StubBase    
    instance_methods.each { |m| undef_method m unless m =~ /^__/ }

    include StubInclude

    def initialize name, parent, recursive=false
      @name, @parent, @recursive = name, parent, recursive
    end

    def method_missing method, *args
      yield_container, return_container = __react__(method, args)
      if yield_container && block_given?
        yield_container.value.each {|v| yield *v }
      end
      __return__(method, return_container)
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
orangutan-0.0.7 lib/orangutan/stub_base.rb
orangutan-0.0.6 lib/orangutan/stub_base.rb