Revision 44858 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/grammars/BasicGrammarFactory.java
BasicGrammarFactory.java | ||
---|---|---|
27 | 27 |
import org.gvsig.expressionevaluator.impl.function.programming.WhileFunction; |
28 | 28 |
import org.gvsig.expressionevaluator.spi.AbstractGrammarFactory; |
29 | 29 |
import org.gvsig.expressionevaluator.Code.Callable; |
30 |
import static org.gvsig.expressionevaluator.ExpressionBuilder.FUNCTION_MAP; |
|
30 | 31 |
|
31 | 32 |
/** |
32 | 33 |
* |
... | ... | |
346 | 347 |
stmt.code(FUNCTION_EXTRACT,stmt.args_names("FIELD", "EXP")); |
347 | 348 |
theGrammar.addStatement(stmt); |
348 | 349 |
|
350 |
stmt = theGrammar.createStatement("MAP"); |
|
351 |
stmt.addRule(stmt.require_any_token("MAP")); |
|
352 |
stmt.addRule(stmt.require_any_token("(")); |
|
353 |
stmt.addRule(stmt.repeat() |
|
354 |
.addRule(stmt.require_identifier().capture_as("NAME#")) |
|
355 |
.addRule(stmt.require_any_token("=")) |
|
356 |
.addRule(stmt.require_expression().capture_as("VALUE#")) |
|
357 |
.addRule(stmt.optional_any_token(",") |
|
358 |
.addRuleOnFalse(stmt.break_loop()) |
|
359 |
) |
|
360 |
); |
|
361 |
stmt.addRule(stmt.require_any_token(")")); |
|
362 |
stmt.code(FUNCTION_MAP,stmt.args_names("NAME#", "VALUE#")); |
|
363 |
theGrammar.addStatement(stmt); |
|
364 |
|
|
349 | 365 |
this.grammar = theGrammar; |
350 | 366 |
|
351 | 367 |
|
Also available in: Unified diff