lib/mothership/inputs.rb in mothership-0.2.1 vs lib/mothership/inputs.rb in mothership-0.2.2
- old
+ new
@@ -71,10 +71,11 @@
# 5. global
# 6. global, singular
def get(name, context, *args)
return @inputs[name] if @inputs.key?(name)
+ before_input = @current_input
@current_input = [name, args]
if @command && meta = @command.inputs[name]
# special case so #invoke can be called with singular-named inputs
singular = meta[:singular]
@@ -91,10 +92,10 @@
@inputs[name] = context.instance_exec(*args, &interact)
else
@inputs[name] = convert_given(meta, context, val, *args)
end
ensure
- @current_input = nil
+ @current_input = before_input
end
def forget(name)
@given.delete(name)
@inputs.delete(name)