Module: Seatbelt::Gate::ImplementationCallee

Defined in:
lib/seatbelt/core/gate.rb

Instance Method Summary collapse

Instance Method Details

#mark_as_class_implementationObject



43
44
45
46
47
48
49
50
51
# File 'lib/seatbelt/core/gate.rb', line 43

def mark_as_class_implementation
  lambda do |implementation_method, name|
    config = implementation_method.values.pop
    method = name.to_sym#bind(self)
    config[:method] = method
    config[:type] = :class
    implement(name, config)
  end
end

#mark_as_instance_implementationObject



34
35
36
37
38
39
40
41
# File 'lib/seatbelt/core/gate.rb', line 34

def mark_as_instance_implementation
  lambda do |implementation_method, name|
    config = implementation_method.values.pop
    method = self.instance_method(name).bind(self.new)
    config[:method] = method
    implement(name, config)
  end
end