diff options
author | Walter Bender <walter@walter-laptop.(none)> | 2010-02-09 16:17:44 (GMT) |
---|---|---|
committer | Walter Bender <walter@walter-laptop.(none)> | 2010-02-09 16:17:44 (GMT) |
commit | 21b5205a773fb9a5049a7ed9b973f268fd598d63 (patch) | |
tree | d68288ac04f50d8ebe7bdf25d6a2c1e10e18b540 /tajail.py | |
parent | 25d9cf32599975491adec6ea6d0b955c620125cf (diff) |
expandable no. args to user-defined blocks
Diffstat (limited to 'tajail.py')
-rw-r--r-- | tajail.py | 33 |
1 files changed, 25 insertions, 8 deletions
@@ -26,15 +26,32 @@ try: except ImportError: pass -def myfunc(lc, f, x): +def myfunc(f, args): # check to make sure no import calls are made - myf = "def f(x): return " + f.replace("import","") - userdefined = {} - try: - exec myf in globals(), userdefined - return userdefined.values()[0](x) - except: - return None + if len(args) == 1: + myf = "def f(x): return " + f.replace("import","") + userdefined = {} + try: + exec myf in globals(), userdefined + return userdefined.values()[0](args[0]) + except: + return None + elif len(args) == 2: + myf = "def f(x,y): return " + f.replace("import","") + userdefined = {} + try: + exec myf in globals(), userdefined + return userdefined.values()[0](args[0],args[1]) + except: + return None + elif len(args) == 3: + myf = "def f(x,y,z): return " + f.replace("import","") + userdefined = {} + try: + exec myf in globals(), userdefined + return userdefined.values()[0](args[0],args[1],args[2]) + except: + return None def myfunc_import(lc, f, x): userdefined = {} |