Changeset 4803 for openmrs/branches/logic-api-refactoring/src/api/org/openmrs/arden/ArdenRecognizer.g
- Timestamp:
- 07/03/08 12:57:59 (5 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
openmrs/branches/logic-api-refactoring/src/api/org/openmrs/arden/ArdenRecognizer.g
r4615 r4803 108 108 LINKS="links"; 109 109 TYPE="type"; 110 DATA="data";111 LOGIC="logic";112 ACTION="action";113 110 DATE="date"; 111 AGE_MIN="age_min"; 112 AGE_MAX="age_max"; 114 113 115 114 OF = "of"; … … 120 119 TO = "to"; 121 120 ANY = "any"; 121 RESEARCH = "research"; 122 SECOND = "second"; 123 OCCUR = "occur"; 124 PRESENT = "present"; 125 NUMBER = "number"; 122 126 123 127 } … … 285 289 action_slot 286 290 urgency_slot! 291 age_min_slot 292 age_max_slot 287 293 ; 288 294 … … 383 389 | READ | MINIMUM | MIN | MAXIMUM | MAX | LAST | FIRST | EARLIEST | LATEST | EVENT | WHERE | EXIST | EXISTS | PAST 384 390 | AVERAGE | AVG | SUM | MEDIAN | CONCLUDE | ELSE | ELSEIF | ENDIF | TRUE | FALSE | DATA | LOGIC | ACTION | CALL | WITH 385 | TO | ANY 391 | TO | ANY | RESEARCH | DAY | SECOND | OCCUR | PURPOSE | PRESENT | NUMBER | KNOWLEDGE 386 392 ; 387 393 388 394 text 389 : ID | (any_reserved_word) | INTLIT | (LPAREN (ID| INTLIT| (any_reserved_word))* RPAREN) 395 : ID | (any_reserved_word) | INTLIT | 396 MINUS | COMMA| DOT | DIV | UNDERSCORE|AT|STRING_LITERAL| 397 (LPAREN (ID| INTLIT| (any_reserved_word))* RPAREN) 390 398 // exception 391 399 // catch [RecognitionException ex] … … 960 968 | 961 969 970 ; 971 age_min_slot: 972 | /* empty */ 973 | AGE_MIN^ COLON INTLIT age_code ENDBLOCK 974 ; 975 age_max_slot: 976 | /* empty */ 977 | AGE_MAX^ COLON INTLIT age_code ENDBLOCK 978 ; 979 980 age_code 981 : "days" | "weeks" | "months" | "years" 962 982 ; 963 983 … … 1269 1289 1270 1290 | ((EXIST | EXISTS) 1271 {s+=b;obj.setReadType(" last"); obj.setHowMany("1");System.err.println("ReadType = Exist");}1291 {s+=b;obj.setReadType("exist"); obj.setHowMany("1");System.err.println("ReadType = Exist");} 1272 1292 b=readAST[obj, instr]) 1273 1293 … … 1439 1459 {String a,b;} 1440 1460 : ( 1441 #(CALL b=exprStringAST[obj, key] {obj.SetConceptVar(b);} a = exprStringAST [obj, b] {obj.setReadType("call"); obj.AddConcept(a);}1461 #(CALL b=exprStringAST[obj, key] {obj.SetConceptVar(b);} a = exprStringAST [obj, b] {obj.setReadType("call");} 1442 1462 1443 1463 ) … … 1448 1468 {String a,b;} 1449 1469 : ( 1450 #(CALL b= exprStringAST[obj, key] a = exprStringAST [obj, b] {obj.addCall(b,a);}1470 #(CALL b=callStringAST[obj, key] a = callStringAST [obj, b] {obj.addCall(b,a);} 1451 1471 1452 1472 ) … … 1528 1548 ; 1529 1549 1550 callStringAST [MLMObject obj, String instr] returns [String s=""] 1551 {String a="",b="";} 1552 : 1553 ( 1554 #(ift:ID 1555 { a = ift.getText(); System.err.println("text = " + a); 1556 s=a; 1557 } 1558 ) 1559 ) 1560 ; 1530 1561 1531 1562 exprStringAST [MLMObject obj, String instr] returns [String s=""] … … 1754 1785 : //#(COLON {System.err.println("\n"); System.err.println("-------Starting Action--------");} 1755 1786 ( 1756 {System.err.println("-----------Starting Write -------");} s = writeAST[obj] { obj.addAction(s);System.err.println("\n");System.err.println("-----------End Write -------");}1787 {System.err.println("-----------Starting Write -------");} s = writeAST[obj] { System.err.println("\n");System.err.println("-----------End Write -------");} 1757 1788 | {System.err.println("-----------Starting CALL -------"); a = "" ;} callActionAST[obj, a] {System.err.println("\n");System.err.println("-----------End CALL -------");} 1758 1789 )* … … 1774 1805 | (i:STRING_LITERAL {s += i.getText();} /* {a = i.getText(); s += a.substring(1, a.length()-1); } */ ) /* get rid of "" sorrounding each string literal */ 1775 1806 )* 1776 1807 {obj.addAction(s);} 1777 1808 ( 1778 1809 AT idat: ID {obj.setAt(idat.getText());} … … 1834 1865 ) 1835 1866 */ 1867 |#(AGE_MIN 1868 COLON {s += " Age_Min: "; } b = doubleAST[obj] {obj.setAgeMin(b); s += b; s += "\n";} 1869 ) 1870 |#(AGE_MAX 1871 COLON {s += " Age_Max: "; } b = doubleAST[obj] {obj.setAgeMax(b); s += b; s += "\n";} 1872 ) 1836 1873 | a = textAST[obj] {s += a;} ENDBLOCK {s += "\n";} 1837 1874 ) … … 1878 1915 ) 1879 1916 */ 1917 |#(AGE_MIN 1918 COLON b = doubleAST[obj] {obj.setAgeMin(b); s += b; s += "\n";} 1919 ) 1920 |#(AGE_MAX 1921 COLON b = doubleAST[obj] {obj.setAgeMax(b); s += b; s += "\n";} 1922 ) 1880 1923 | a = textAST[obj] {s += a;} ENDBLOCK {s += "\n";} 1881 1924 )