# HG changeset patch # User Matthew Wild # Date 1255727012 -3600 # Node ID f56670ce64de0c390c47b3789d2eec1b95fabc95 # Parent e2b0026143c4e386ed40efd548d395419cad8ef8 util.helpers: Add get_upvalue(function, name) helper diff -r e2b0026143c4 -r f56670ce64de util/helpers.lua --- a/util/helpers.lua Fri Oct 16 19:52:09 2009 +0100 +++ b/util/helpers.lua Fri Oct 16 22:03:32 2009 +0100 @@ -24,4 +24,13 @@ events.fire_event, events[events.fire_event] = events[events.fire_event], nil; -- :) end +function get_upvalue(f, get_name) + local i, name, value = 0; + repeat + i = i + 1; + name, value = debug.getupvalue(f, i); + until name == get_name or name == nil; + return value; +end + return _M;