Revision 47465
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 | ||
---|---|---|
571 | 571 |
|
572 | 572 |
stmt = theGrammar.createStatement("DATE"); |
573 | 573 |
stmt.addRule(stmt.require_any_token("DATE")); |
574 |
stmt.addRule(stmt.require_expression().capture_as("EXP")); |
|
574 |
stmt.addRule(stmt.optional_any_token("(") |
|
575 |
.addRuleOnTrue(stmt.require_expression().capture_as("EXP")) |
|
576 |
.addRuleOnTrue(stmt.require_any_token(")")) |
|
577 |
.addRuleOnFalse(stmt.require_literal_string().capture_as("EXP")) |
|
578 |
); |
|
579 |
|
|
575 | 580 |
stmt.code(FUNCTION_DATE, stmt.args_names("EXP")); |
576 | 581 |
return stmt; |
577 | 582 |
} |
... | ... | |
581 | 586 |
|
582 | 587 |
stmt = theGrammar.createStatement("TIME"); |
583 | 588 |
stmt.addRule(stmt.require_any_token("TIME")); |
584 |
stmt.addRule(stmt.require_expression().capture_as("EXP")); |
|
589 |
stmt.addRule(stmt.optional_any_token("(") |
|
590 |
.addRuleOnTrue(stmt.require_expression().capture_as("EXP")) |
|
591 |
.addRuleOnTrue(stmt.require_any_token(")")) |
|
592 |
.addRuleOnFalse(stmt.require_literal_string().capture_as("EXP")) |
|
593 |
); |
|
585 | 594 |
stmt.code(FUNCTION_TIME, stmt.args_names("EXP")); |
586 | 595 |
return stmt; |
587 | 596 |
} |
... | ... | |
601 | 610 |
|
602 | 611 |
stmt = theGrammar.createStatement("TIMESTAMP"); |
603 | 612 |
stmt.addRule(stmt.require_any_token("TIMESTAMP")); |
604 |
stmt.addRule(stmt.require_expression().capture_as("EXP")); |
|
613 |
stmt.addRule(stmt.optional_any_token("(") |
|
614 |
.addRuleOnTrue(stmt.require_expression().capture_as("EXP")) |
|
615 |
.addRuleOnTrue(stmt.require_any_token(")")) |
|
616 |
.addRuleOnFalse(stmt.require_literal_string().capture_as("EXP")) |
|
617 |
); |
|
605 | 618 |
stmt.code(FUNCTION_TIMESTAMP, stmt.args_names("EXP")); |
606 | 619 |
return stmt; |
607 | 620 |
} |
Also available in: Unified diff