Revision 44006 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
DefaultInterpreter.java | ||
---|---|---|
191 | 191 |
switch( caller.type() ) { |
192 | 192 |
case Caller.UNARY_OPERATOR: |
193 | 193 |
if( args == null || args.count() != 1 ) { |
194 |
throw new RuntimeException("Number of argument mistmatch, expected 1 got " + args.count() + "."); |
|
194 |
throw new RuntimeException("Number of argument mistmatch in operator '"+function.name()+"', expected 1 got " + args.count() + ".");
|
|
195 | 195 |
} |
196 | 196 |
value = ((UnaryOperator) function).call(this, runCode(args.get(0))); |
197 | 197 |
break; |
198 | 198 |
|
199 | 199 |
case Caller.BINARY_OPERATOR: |
200 | 200 |
if( args == null || args.count() != 2 ) { |
201 |
throw new RuntimeException("Number of argument mistmatch, expected 2 got " + args.count() + "."); |
|
201 |
throw new RuntimeException("Number of argument mistmatch in operator '"+function.name()+"', expected 2 got " + args.count() + ".");
|
|
202 | 202 |
} |
203 | 203 |
value = ((BinaryOperator) function).call(this, runCode(args.get(0)), runCode(args.get(1))); |
204 | 204 |
break; |
... | ... | |
206 | 206 |
case Caller.FUNCTION: |
207 | 207 |
int argc = (args == null) ? 0 : args.count(); |
208 | 208 |
if( !function.argc().contains(argc) ) { |
209 |
throw new RuntimeException("Number of argument mistmatch, expected " + function.argc() + " got " + argc + "."); |
|
209 |
throw new RuntimeException("Number of argument mistmatch in function '"+function.name()+"', expected " + function.argc() + " got " + argc + ".");
|
|
210 | 210 |
} |
211 | 211 |
if( function.useArgumentsInsteadObjects() ) { |
212 | 212 |
value = function.call(this, args); |
Also available in: Unified diff