From 21b5205a773fb9a5049a7ed9b973f268fd598d63 Mon Sep 17 00:00:00 2001 From: Walter Bender Date: Tue, 09 Feb 2010 16:17:44 +0000 Subject: expandable no. args to user-defined blocks --- (limited to 'tajail.py') diff --git a/tajail.py b/tajail.py index 3283723..9954eb3 100644 --- a/tajail.py +++ b/tajail.py @@ -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 = {} -- cgit v0.9.1