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 2013/12/08 17:04:30 UTC
svn commit: r1549050 - in /uima/ruta/trunk:
ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/
ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/
Author: pkluegl
Date: Sun Dec 8 16:04:29 2013
New Revision: 1549050
URL: http://svn.apache.org/r1549050
Log:
UIMA-3482
- fixed AST, was a bug in the grammar
- report additional type problem
Modified:
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaCheckerProblemFactory.java
uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaTypeChecker.java
uima/ruta/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaParser.g
Modified: uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaCheckerProblemFactory.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaCheckerProblemFactory.java?rev=1549050&r1=1549049&r2=1549050&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaCheckerProblemFactory.java (original)
+++ uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaCheckerProblemFactory.java Sun Dec 8 16:04:29 2013
@@ -22,6 +22,7 @@ package org.apache.uima.ruta.ide.validat
import java.util.List;
import org.apache.uima.ruta.ide.core.extensions.IRutaCheckerProblemFactory;
+import org.apache.uima.ruta.ide.parser.ast.FeatureMatchExpression;
import org.apache.uima.ruta.ide.parser.ast.RutaAbstractDeclaration;
import org.apache.uima.ruta.ide.parser.ast.RutaAction;
import org.apache.uima.ruta.ide.parser.ast.RutaCondition;
@@ -102,6 +103,17 @@ public class RutaCheckerProblemFactory i
return problem;
}
+ public IProblem createTypeProblem(FeatureMatchExpression ref, ISourceModule currentFile) {
+
+ String errMsgHead = "Type \"";
+
+ String errMsgTailDefault = " \" not defined in this script/block!";
+ String errMsg = errMsgHead + ref.getFeature().getText() + errMsgTailDefault;
+ IProblem problem = new RutaCheckerDefaultProblem(currentFile.getElementName(), errMsg, ref,
+ linetracker.getLineNumberOfOffset(ref.sourceStart()));
+ return problem;
+ }
+
private String generateFileNotFoundProblemMsg(ASTNode node) {
return generateFileNotFoundProblemMsg(node.toString());
}
Modified: uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaTypeChecker.java
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaTypeChecker.java?rev=1549050&r1=1549049&r2=1549050&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaTypeChecker.java (original)
+++ uima/ruta/trunk/ruta-ep-ide-ui/src/main/java/org/apache/uima/ruta/ide/validator/RutaTypeChecker.java Sun Dec 8 16:04:29 2013
@@ -459,6 +459,7 @@ public class RutaTypeChecker implements
rep.reportProblem(problemFactory.createUnknownFeatureProblem(fme, aref));
}
} else {
+ rep.reportProblem(problemFactory.createTypeProblem(fme, currentFile));
rep.reportProblem(problemFactory.createUnknownFeatureProblem(fme, aref));
}
}
Modified: uima/ruta/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaParser.g
URL: http://svn.apache.org/viewvc/uima/ruta/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaParser.g?rev=1549050&r1=1549049&r2=1549050&view=diff
==============================================================================
--- uima/ruta/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaParser.g (original)
+++ uima/ruta/trunk/ruta-ep-ide/src/main/antlr3/org/apache/uima/ruta/ide/core/parser/RutaParser.g Sun Dec 8 16:04:29 2013
@@ -894,9 +894,10 @@ expr = ExpressionFactory.createEmptyType
(typeFunction)=> tf = typeFunction {expr = tf;}
|
st = simpleTypeExpression
- )
{expr = ExpressionFactory.createTypeExpression(st);
}
+ )
+
;