X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=src%2Forg%2Fibex%2Fjs%2FJSFunction.java;h=b36a5928250085c608bdb7f9a36144478f81aee2;hb=9aff374663aa8e336b3903c2ee97aa09f344ea0c;hp=40a550dab55bcb51a6d9b789a29d76f51823e283;hpb=64b8c4b435a4457e342fd03fc4a725d5ea16da36;p=org.ibex.core.git diff --git a/src/org/ibex/js/JSFunction.java b/src/org/ibex/js/JSFunction.java index 40a550d..b36a592 100644 --- a/src/org/ibex/js/JSFunction.java +++ b/src/org/ibex/js/JSFunction.java @@ -28,7 +28,7 @@ class JSFunction extends JS implements ByteCodes, Tokens, Task { // FEATURE: make sure that this can only be called from the Scheduler... /** if you enqueue a function, it gets invoked in its own pauseable context */ public void perform() throws JSExn { - Interpreter i = new Interpreter(this, true, new JSArray()); + Interpreter i = new Interpreter(this, true, new Interpreter.JSArgs(this)); i.resume(); } @@ -60,13 +60,8 @@ class JSFunction extends JS implements ByteCodes, Tokens, Task { } /** Note: code gets run in an unpauseable context. */ - public Object call(Object a0, Object a1, Object a2, Object[] rest, int nargs) throws JSExn { - JSArray args = new JSArray(); - if (nargs > 0) args.addElement(a0); - if (nargs > 1) args.addElement(a1); - if (nargs > 2) args.addElement(a2); - for(int i=3; i