lib/ambit.rb
# Indicate that the current combination of choices has failed, and roll execution back
# to the last #choose, continuing with the next choice.
Indicate that the current combination of choices has failed, and roll execution back
to the last #choose, continuing with the next choice.
Indicate that the current combination of choices has failed and roll execution back to the last #choose continuing with the next choice .
def fail!
      raise ChoicesExhausted.new if @paths.empty?
      cc = @paths.shift
      cc.call
    end
def fail! raise ChoicesExhausted . new if @paths . empty? cc = @paths . shift cc . call end
Indicate that the current combination of choices has failed, and roll execution back
to the last #choose, continuing with the next choice.
Indicate that the current combination of choices has failed and roll execution back to the last #choose continuing with the next choice .
# if it quacks (or can be called) like a duck, call it -- it's either a Proc # from #mark or a Continuation from #choose