[Bprocessor-commit] bscript/src/net/sourceforge/bprocessor/model/evaluator Invokable.java, 1.1, 1.
Status: Pre-Alpha
Brought to you by:
henryml
From: Michael L. <he...@us...> - 2006-09-14 09:21:49
|
Update of /cvsroot/bprocessor/bscript/src/net/sourceforge/bprocessor/model/evaluator In directory sc8-pr-cvs3.sourceforge.net:/tmp/cvs-serv31054/src/net/sourceforge/bprocessor/model/evaluator Modified Files: Invokable.java Function.java Call.java Log Message: Improved scripting Index: Function.java =================================================================== RCS file: /cvsroot/bprocessor/bscript/src/net/sourceforge/bprocessor/model/evaluator/Function.java,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** Function.java 13 Sep 2006 13:36:32 -0000 1.4 --- Function.java 14 Sep 2006 09:21:46 -0000 1.5 *************** *** 73,87 **** /** ! * ! * @return result */ ! public Object evaluate(Environment env) { Iterator iter = operations.iterator(); - Stack stack = new Stack(); while (iter.hasNext()) { Operation current = (Operation) iter.next(); current.evaluate(env, stack); } - return stack.pop(); } } --- 73,85 ---- /** ! * @param env Environment ! * @param stack Stack */ ! public void evaluate(Environment env, Stack stack) { Iterator iter = operations.iterator(); while (iter.hasNext()) { Operation current = (Operation) iter.next(); current.evaluate(env, stack); } } } Index: Invokable.java =================================================================== RCS file: /cvsroot/bprocessor/bscript/src/net/sourceforge/bprocessor/model/evaluator/Invokable.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** Invokable.java 12 Sep 2006 09:27:30 -0000 1.1 --- Invokable.java 14 Sep 2006 09:21:46 -0000 1.2 *************** *** 8,11 **** --- 8,13 ---- package net.sourceforge.bprocessor.model.evaluator; + import java.util.Stack; + /** * Invokable *************** *** 13,19 **** public interface Invokable { /** ! * ! * @return result */ ! public Object evaluate(Environment env); } --- 15,21 ---- public interface Invokable { /** ! * @param env Environment ! * @param stack Stack */ ! public void evaluate(Environment env, Stack stack); } Index: Call.java =================================================================== RCS file: /cvsroot/bprocessor/bscript/src/net/sourceforge/bprocessor/model/evaluator/Call.java,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** Call.java 13 Sep 2006 13:36:32 -0000 1.3 --- Call.java 14 Sep 2006 09:21:46 -0000 1.4 *************** *** 61,66 **** } Environment activation = new Environment(env, locals, arguments); ! Object result = invokable.evaluate(activation); ! stack.push(result); } else { stack.push(name); --- 61,65 ---- } Environment activation = new Environment(env, locals, arguments); ! invokable.evaluate(activation, stack); } else { stack.push(name); |