Revision 44752 trunk/org.gvsig.desktop/org.gvsig.desktop.library/org.gvsig.expressionevaluator/org.gvsig.expressionevaluator.lib/org.gvsig.expressionevaluator.lib.impl/src/main/java/org/gvsig/expressionevaluator/impl/DefaultInterpreter.java

View differences:

DefaultInterpreter.java
15 15
import org.gvsig.expressionevaluator.Code;
16 16
import org.gvsig.expressionevaluator.Code.Constant;
17 17
import org.gvsig.expressionevaluator.Code.Identifier;
18
import org.gvsig.expressionevaluator.Code.Caller;
19 18
import org.gvsig.expressionevaluator.Code.Method;
20 19
import org.gvsig.expressionevaluator.Codes;
21 20
import org.gvsig.expressionevaluator.ExpressionRuntimeException;
......
27 26
import org.gvsig.expressionevaluator.impl.function.programming.ReturnFunction.ReturnException;
28 27
import org.gvsig.expressionevaluator.spi.AbstractSymbolTable;
29 28
import org.gvsig.tools.resourcesstorage.ResourcesStorage;
29
import org.gvsig.expressionevaluator.Code.Callable;
30 30

  
31 31
public class DefaultInterpreter implements Interpreter {
32 32

  
......
291 291
                    value = method.call(this, argvalues);
292 292
                    break;
293 293
                }
294
            case Code.CALLER:
295
                Caller caller = (Caller) code;
294
            case Code.CALLABLE:
295
                Callable caller = (Callable) code;
296 296
                Function function = caller.function();
297 297
                if( function == null ) {
298 298
                    function = this.getSymbolTable().function(caller.name());
......
307 307
                Codes args = caller.parameters();
308 308
                try {
309 309
                    switch( caller.type() ) {
310
                    case Caller.UNARY_OPERATOR:
310
                    case Callable.UNARY_OPERATOR:
311 311
                        if( args == null || args.size() != 1 ) {
312 312
                            throw new ExpressionRuntimeException(code, I18N.Number_of_argument_mistmatch_in_operator_XIdentifierX_expected_1_got_XargcX(function.name(),args==null?0:args.size()));
313 313
                        }
314 314
                        value = ((UnaryOperator) function).call(this, runCode(args.get(0)));
315 315
                        break;
316 316

  
317
                    case Caller.BINARY_OPERATOR:
317
                    case Callable.BINARY_OPERATOR:
318 318
                        if( args == null || args.size() != 2 ) {
319 319
                            throw new ExpressionRuntimeException(code, I18N.Number_of_argument_mistmatch_in_operator_XIdentifierX_expected_2_got_XargcX(function.name(),args==null?0:args.size()));
320 320
                        }
321 321
                        value = ((BinaryOperator) function).call(this, runCode(args.get(0)), runCode(args.get(1)));
322 322
                        break;
323 323

  
324
                    case Caller.FUNCTION:
324
                    case Callable.FUNCTION:
325 325
                        int argc = (args == null) ? 0 : args.size();
326 326
                        if( !function.argc().contains(argc) ) {
327 327
                            throw new ExpressionRuntimeException(code, I18N.Number_of_argument_mistmatch_in_function_XIdentifierX_expected_XexpectedX_got_XfoundX(function.name(),function.argc(),argc));

Also available in: Unified diff