class CarryOut::Plan::NodeContext

Public Class Methods

new(node) click to toggle source
# File lib/carry_out/plan/node_context.rb, line 8
def initialize(node)
  @node = node
end

Public Instance Methods

action() click to toggle source
# File lib/carry_out/plan/node_context.rb, line 12
def action
  self
end
context(*args) click to toggle source
# File lib/carry_out/plan/node_context.rb, line 16
def context(*args)
  Proc.new do |context|
    args.inject(context) { |c, k| c.nil? ? nil : c[k] }
  end
end
except_when(value = nil, &block) click to toggle source
# File lib/carry_out/plan/node_context.rb, line 26
def except_when(value = nil, &block)
  @node.guard_with_inverse(value || block)
end
method_missing(method, *args, &block) click to toggle source
Calls superclass method CarryOut::Cloaker#method_missing
# File lib/carry_out/plan/node_context.rb, line 30
def method_missing(method, *args, &block)
  if @node.respond_to?(method)
    @node.send(method, *args, &block)
  else
    super
  end
end
only_when(value = nil, &block) click to toggle source
# File lib/carry_out/plan/node_context.rb, line 22
def only_when(value = nil, &block)
  @node.guard_with(value || block)
end
respond_to?(method) click to toggle source
# File lib/carry_out/plan/node_context.rb, line 38
def respond_to?(method)
  @node.respond_to?(method)
end
return_as(key, &block) click to toggle source
# File lib/carry_out/plan/node_context.rb, line 42
def return_as(key, &block)
  @node.returns_as = key
  @node.return_transform = block unless block.nil?
end