class CarryOut::Plan::Guard

Public Class Methods

new(proc, options = {}) click to toggle source
# File lib/carry_out/plan/guard.rb, line 6
def initialize(proc, options = {})
  @proc = proc
  invert(options[:invert])
end

Public Instance Methods

call(context = {}) click to toggle source
# File lib/carry_out/plan/guard.rb, line 11
def call(context = {})
  result = GuardContext.new(context).instance_exec(context, &@proc)
  result = !result if @invert
  result
end
invert(is_inverted = true) click to toggle source
# File lib/carry_out/plan/guard.rb, line 17
def invert(is_inverted = true)
  @invert = !!is_inverted
end