You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by pk...@apache.org on 2012/01/09 11:22:04 UTC

svn commit: r1229085 [5/5] - in /uima/sandbox/trunk/TextMarker: uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/ uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/expression/ uimaj-ep-textmarker-engine/src/main/jav...

Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/parser/TextMarkerParser.tokens
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/parser/TextMarkerParser.tokens?rev=1229085&r1=1229084&r2=1229085&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/parser/TextMarkerParser.tokens (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/parser/TextMarkerParser.tokens Mon Jan  9 10:22:03 2012
@@ -52,101 +52,103 @@ FEATURE=54
 FILL=55
 FILTERMARKUP=56
 FILTERTYPE=57
-FloatTypeSuffix=58
-FloatingPointLiteral=59
-GATHER=60
-GET=61
-GETFEATURE=62
-GETLIST=63
-GREATER=64
-GREATEREQUAL=65
-HexDigit=66
-HexLiteral=67
-IF=68
-INLIST=69
-INTLIST=70
-IS=71
-ISINTAG=72
-Identifier=73
-IntString=74
-IntegerTypeSuffix=75
-JavaIDDigit=76
-LAST=77
-LBRACK=78
-LCURLY=79
-LESS=80
-LESSEQUAL=81
-LINE_COMMENT=82
-LOG=83
-LOGN=84
-LPAREN=85
-Letter=86
-ListIdentifier=87
-LogLevel=88
-MARK=89
-MARKFAST=90
-MARKLAST=91
-MARKONCE=92
-MARKSCORE=93
-MARKTABLE=94
-MATCHEDTEXT=95
-MERGE=96
-MINUS=97
-MOFN=98
-NEAR=99
-NOT=100
-NOTEQUAL=101
-OR=102
-OctalEscape=103
-OctalLiteral=104
-OldColor=105
-PARSE=106
-PARTOF=107
-PARTOFNEQ=108
-PERCENT=109
-PLUS=110
-POSITION=111
-PackageString=112
-QUESTION=113
-RBRACK=114
-RCURLY=115
-REGEXP=116
-REMOVE=117
-REMOVEDUPLICATE=118
-REMOVESTRING=119
-REPLACE=120
-RETAINMARKUP=121
-RETAINTYPE=122
-RPAREN=123
-RessourceLiteral=124
-SCORE=125
-SEMI=126
-SETFEATURE=127
-SIN=128
-SIZE=129
-SLASH=130
-STAR=131
-STARTSWITH=132
-STRINGLIST=133
-ScriptString=134
-StringLiteral=135
-StringString=136
-SymbolString=137
-TAN=138
-THEN=139
-TOTALCOUNT=140
-TRANSFER=141
-TRIE=142
-TRUE=143
-TYPELIST=144
-TypeString=145
-TypeSystemString=146
-UNMARK=147
-UNMARKALL=148
-UnicodeEscape=149
-VBAR=150
-VOTE=151
-WORDLIST=152
-WORDTABLE=153
-WS=154
-XOR=155
+FLOATLIST=58
+FloatString=59
+FloatTypeSuffix=60
+FloatingPointLiteral=61
+GATHER=62
+GET=63
+GETFEATURE=64
+GETLIST=65
+GREATER=66
+GREATEREQUAL=67
+HexDigit=68
+HexLiteral=69
+IF=70
+INLIST=71
+INTLIST=72
+IS=73
+ISINTAG=74
+Identifier=75
+IntString=76
+IntegerTypeSuffix=77
+JavaIDDigit=78
+LAST=79
+LBRACK=80
+LCURLY=81
+LESS=82
+LESSEQUAL=83
+LINE_COMMENT=84
+LOG=85
+LOGN=86
+LPAREN=87
+Letter=88
+ListIdentifier=89
+LogLevel=90
+MARK=91
+MARKFAST=92
+MARKLAST=93
+MARKONCE=94
+MARKSCORE=95
+MARKTABLE=96
+MATCHEDTEXT=97
+MERGE=98
+MINUS=99
+MOFN=100
+NEAR=101
+NOT=102
+NOTEQUAL=103
+OR=104
+OctalEscape=105
+OctalLiteral=106
+OldColor=107
+PARSE=108
+PARTOF=109
+PARTOFNEQ=110
+PERCENT=111
+PLUS=112
+POSITION=113
+PackageString=114
+QUESTION=115
+RBRACK=116
+RCURLY=117
+REGEXP=118
+REMOVE=119
+REMOVEDUPLICATE=120
+REMOVESTRING=121
+REPLACE=122
+RETAINMARKUP=123
+RETAINTYPE=124
+RPAREN=125
+RessourceLiteral=126
+SCORE=127
+SEMI=128
+SETFEATURE=129
+SIN=130
+SIZE=131
+SLASH=132
+STAR=133
+STARTSWITH=134
+STRINGLIST=135
+ScriptString=136
+StringLiteral=137
+StringString=138
+SymbolString=139
+TAN=140
+THEN=141
+TOTALCOUNT=142
+TRANSFER=143
+TRIE=144
+TRUE=145
+TYPELIST=146
+TypeString=147
+TypeSystemString=148
+UNMARK=149
+UNMARKALL=150
+UnicodeEscape=151
+VBAR=152
+VOTE=153
+WORDLIST=154
+WORDTABLE=155
+WS=156
+XOR=157

Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ExpressionVerbalizer.java
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ExpressionVerbalizer.java?rev=1229085&r1=1229084&r2=1229085&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ExpressionVerbalizer.java (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-engine/src/main/java/org/apache/uima/textmarker/verbalize/ExpressionVerbalizer.java Mon Jan  9 10:22:03 2012
@@ -36,12 +36,10 @@ import org.apache.uima.textmarker.expres
 import org.apache.uima.textmarker.expression.list.SimpleNumberListExpression;
 import org.apache.uima.textmarker.expression.list.SimpleStringListExpression;
 import org.apache.uima.textmarker.expression.list.SimpleTypeListExpression;
-import org.apache.uima.textmarker.expression.number.ComposedDoubleExpression;
-import org.apache.uima.textmarker.expression.number.ComposedIntegerExpression;
+import org.apache.uima.textmarker.expression.number.ComposedNumberExpression;
 import org.apache.uima.textmarker.expression.number.NegativeNumberExpression;
 import org.apache.uima.textmarker.expression.number.NumberExpression;
-import org.apache.uima.textmarker.expression.number.ReferenceDoubleExpression;
-import org.apache.uima.textmarker.expression.number.ReferenceIntegerExpression;
+import org.apache.uima.textmarker.expression.number.ReferenceNumberExpression;
 import org.apache.uima.textmarker.expression.number.SimpleNumberExpression;
 import org.apache.uima.textmarker.expression.resource.ReferenceWordListExpression;
 import org.apache.uima.textmarker.expression.resource.ReferenceWordTableExpression;
@@ -135,17 +133,14 @@ public class ExpressionVerbalizer {
     } else if (expression instanceof NegativeNumberExpression) {
       NegativeNumberExpression e = (NegativeNumberExpression) expression;
       return "-(" + e.getExpression() + ")";
-    } else if (expression instanceof ReferenceDoubleExpression) {
-      ReferenceDoubleExpression e = (ReferenceDoubleExpression) expression;
-      return e.getVar();
-    } else if (expression instanceof ReferenceIntegerExpression) {
-      ReferenceIntegerExpression e = (ReferenceIntegerExpression) expression;
+    } else if (expression instanceof ReferenceNumberExpression) {
+      ReferenceNumberExpression e = (ReferenceNumberExpression) expression;
       return e.getVar();
     } else if (expression instanceof SimpleNumberExpression) {
       SimpleNumberExpression e = (SimpleNumberExpression) expression;
       return e.getNumber().toString();
-    } else if (expression instanceof ComposedDoubleExpression) {
-      ComposedDoubleExpression e = (ComposedDoubleExpression) expression;
+    } else if (expression instanceof ComposedNumberExpression) {
+      ComposedNumberExpression e = (ComposedNumberExpression) expression;
       NumberExpression ne = e.getExpressions().get(0);
       if (ne == null) {
         return "";
@@ -158,17 +153,6 @@ public class ExpressionVerbalizer {
         }
       }
       return result.toString();
-    } else if (expression instanceof ComposedIntegerExpression) {
-      ComposedIntegerExpression e = (ComposedIntegerExpression) expression;
-      NumberExpression ne = e.getExpressions().get(0);
-      if (ne == null) {
-        return "";
-      }
-      String result = verbalize(ne);
-      for (int i = 0; i < e.getOperators().size(); i++) {
-        result += e.getOperators().get(i) + verbalize(e.getExpressions().get(i + 1));
-      }
-      return result;
     }
     return expression.getClass().getSimpleName();
   }

Modified: uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g
URL: http://svn.apache.org/viewvc/uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g?rev=1229085&r1=1229084&r2=1229085&view=diff
==============================================================================
--- uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g (original)
+++ uima/sandbox/trunk/TextMarker/uimaj-ep-textmarker-ide/src/main/java/org/apache/uima/textmarker/ide/core/parser/TextMarkerParser.g Mon Jan  9 10:22:03 2012
@@ -340,6 +340,13 @@ variableDeclaration returns [List<Statem
 		 stmts.add(StatementFactory.createDeclarationsStatement(type, decls, init));
 		 }
 	|
+	type = FloatString id = Identifier {addVariable(id.getText(), type.getText());decls.add(StatementFactory.createFloatVariable(id, type));}
+			(COMMA id = Identifier {addVariable(id.getText(), type.getText());decls.add(StatementFactory.createFloatVariable(id, type));}
+		 )* (ASSIGN_EQUAL init = numberExpression)?  SEMI
+		{
+		 stmts.add(StatementFactory.createDeclarationsStatement(type, decls, init));
+		 }
+	|
 	type = StringString id = Identifier {addVariable(id.getText(), type.getText());decls.add(StatementFactory.createStringVariable(id, type));}
 			(COMMA id = Identifier {addVariable(id.getText(), type.getText());decls.add(StatementFactory.createStringVariable(id, type));}
 		 )* (ASSIGN_EQUAL init = stringExpression)?  SEMI
@@ -395,6 +402,13 @@ variableDeclaration returns [List<Statem
         decls.add(StatementFactory.createVarListVariable(id,type,list, TMTypeConstants.TM_TYPE_NL));
         stmts.add(StatementFactory.createDeclarationsStatement(type, decls, list));
         }
+          |
+        type = FLOATLIST id = Identifier (ASSIGN_EQUAL list = numberListExpression)?  SEMI
+        {
+        addVariable(id.getText(), type.getText());
+        decls.add(StatementFactory.createVarListVariable(id,type,list, TMTypeConstants.TM_TYPE_NL));
+        stmts.add(StatementFactory.createDeclarationsStatement(type, decls, list));
+        }
                 |
         type = STRINGLIST id = Identifier (ASSIGN_EQUAL list = stringListExpression)?  SEMI
         {
@@ -461,7 +475,8 @@ declaration returns [List<Statement> stm
 			(
 			obj1 = annotationType{featureTypes.add(obj1);} 
 			| obj2 = StringString{featureTypes.add(obj2);} 
-			| obj3 = DoubleString{featureTypes.add(obj3);} 
+			| obj3 = DoubleString{featureTypes.add(obj3);}
+			| obj6 = FloatString{featureTypes.add(obj6);}  
 			| obj4 = IntString{featureTypes.add(obj4);}
 			| obj5 = BooleanString{featureTypes.add(obj5);}
 			//| obj6 = fsType{featureTypes.add(obj6.getText());}
@@ -473,6 +488,7 @@ declaration returns [List<Statement> stm
 			obj1 = annotationType{featureTypes.add(obj1);} 
 			| obj2 = StringString{featureTypes.add(obj2);} 
 			| obj3 = DoubleString{featureTypes.add(obj3);}
+			| obj6 = FloatString{featureTypes.add(obj6);}  
 			| obj4 = IntString{featureTypes.add(obj4);}
 			| obj5 = BooleanString{featureTypes.add(obj5);}
 			//| obj6 = fsType{featureTypes.add(obj5.getText());}
@@ -622,6 +638,7 @@ listExpression returns [Expression expr 
 	(booleanListExpression)=> e = booleanListExpression {expr = e;}
 	| (intListExpression)=> e = intListExpression {expr = e;}
 	| (doubleListExpression)=> e = doubleListExpression {expr = e;}
+	| (floatListExpression)=> e = floatListExpression {expr = e;}
 	| (stringListExpression)=> e = stringListExpression {expr = e;}
 	| (typeListExpression)=> e = typeListExpression {expr = e;}
 	;
@@ -667,6 +684,8 @@ numberListExpression returns [Expression
 	:
 	(e1 = doubleListExpression)=> e1 = doubleListExpression {expr = e1;}
 	|
+	(e1 = floatListExpression)=> e1 = floatListExpression {expr = e1;}
+	|
 	e2 = intListExpression {expr = e2;}
 	;
 	
@@ -687,6 +706,23 @@ simpleDoubleListExpression returns [Expr
 	{expr = ExpressionFactory.createListExpression(var, TMTypeConstants.TM_TYPE_NL);}
 	;
 
+floatListExpression returns [Expression expr = null]
+	:
+	e = simpleFloatListExpression {expr = e;}
+	;
+
+simpleFloatListExpression returns [Expression expr = null]
+@init{
+	List<Expression> list = new ArrayList<Expression>();
+}	:
+	LCURLY (e = simpleNumberExpression {list.add(e);} (COMMA e = simpleNumberExpression {list.add(e);})*)?  RCURLY
+	{expr = ExpressionFactory.createListExpression(list, TMTypeConstants.TM_TYPE_NL);}
+	|
+	{isVariableOfType(input.LT(1).getText(), "FLOATLIST")}? 
+	var = Identifier 
+	{expr = ExpressionFactory.createListExpression(var, TMTypeConstants.TM_TYPE_NL);}
+	;
+
 
 stringListExpression returns [Expression expr = null]
 	:
@@ -764,6 +800,7 @@ listVariable returns [Expression var = n
 	:
 	{isVariableOfType(input.LT(1).getText(), "BOOLEANLIST")
 	||isVariableOfType(input.LT(1).getText(), "INTLIST")
+	||isVariableOfType(input.LT(1).getText(), "FLOATLIST")
 	||isVariableOfType(input.LT(1).getText(), "DOUBLELIST")
 	||isVariableOfType(input.LT(1).getText(), "STRINGLIST")
 	||isVariableOfType(input.LT(1).getText(), "TYPELIST")
@@ -1837,6 +1874,7 @@ numberVariable returns [Expression expr 
 	:
 	   ( {isVariableOfType(input.LT(1).getText(), "INT")}? numVarRef = Identifier //
 	 | {isVariableOfType(input.LT(1).getText(), "DOUBLE")}? numVarRef = Identifier)
+	  | {isVariableOfType(input.LT(1).getText(), "FLOAT")}? numVarRef = Identifier)
 	 {	 expr = ExpressionFactory.createNumberVariableReference(numVarRef);}
 	;
 	catch [Exception e]{expr = ExpressionFactory.createNumberVariableReference(input.LT(1));}