diff options
Diffstat (limited to 'lib/lace/builtin.lua')
-rw-r--r-- | lib/lace/builtin.lua | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/lace/builtin.lua b/lib/lace/builtin.lua index e99105b..289f688 100644 --- a/lib/lace/builtin.lua +++ b/lib/lace/builtin.lua @@ -16,6 +16,7 @@ end --[ Allow and Deny ]------------------------------------------------ local unconditional_result = nil +local last_result = nil local function get_set_last_unconditional_result(newv) local ret = unconditional_result @@ -23,6 +24,12 @@ local function get_set_last_unconditional_result(newv) return ret end +local function get_set_last_result(newv) + local ret = last_result + last_result = newv + return ret +end + local function _do_return(exec_context, result, reason, cond) if #cond > 0 then -- Run the conditions @@ -42,6 +49,7 @@ local function _return(compcontext, result, reason, ...) if #cond == 0 then unconditional_result = result end + last_result = result return { fn = _do_return, @@ -84,4 +92,5 @@ end return { commands = builtin, get_set_last_unconditional_result = get_set_last_unconditional_result, + get_set_last_result = get_set_last_result, } |