This is an automated email from the ASF dual-hosted git repository.
mariofusco pushed a commit to branch dev-new-parser
in repository https://gitbox.apache.org/repos/asf/incubator-kie-drools.git
The following commit(s) were added to refs/heads/dev-new-parser by this push:
new 879f65c51c Match EOF at the end of the compilation unit (#5930)
879f65c51c is described below
commit 879f65c51c92a63af20f400844f4bb115e11e952
Author: Jiří Locker <[email protected]>
AuthorDate: Mon May 13 10:06:34 2024 +0200
Match EOF at the end of the compilation unit (#5930)
---
.../src/main/antlr4/org/drools/drl/parser/antlr4/DRLParser.g4 | 2 +-
.../src/main/java/org/drools/drl/parser/antlr4/DescrHelper.java | 9 +++++----
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git
a/drools-drl/drools-drl-parser/src/main/antlr4/org/drools/drl/parser/antlr4/DRLParser.g4
b/drools-drl/drools-drl-parser/src/main/antlr4/org/drools/drl/parser/antlr4/DRLParser.g4
index e277eb9826..da397785c1 100644
---
a/drools-drl/drools-drl-parser/src/main/antlr4/org/drools/drl/parser/antlr4/DRLParser.g4
+++
b/drools-drl/drools-drl-parser/src/main/antlr4/org/drools/drl/parser/antlr4/DRLParser.g4
@@ -14,7 +14,7 @@ import DRL6Expressions, JavaParser;
* | query
* ;
*/
-compilationUnit : packagedef? unitdef? drlStatementdef* ;
+compilationUnit : packagedef? unitdef? drlStatementdef* EOF ;
drlStatementdef
: importdef SEMI?
diff --git
a/drools-drl/drools-drl-parser/src/main/java/org/drools/drl/parser/antlr4/DescrHelper.java
b/drools-drl/drools-drl-parser/src/main/java/org/drools/drl/parser/antlr4/DescrHelper.java
index a822b5ddf7..02a4f38d27 100644
---
a/drools-drl/drools-drl-parser/src/main/java/org/drools/drl/parser/antlr4/DescrHelper.java
+++
b/drools-drl/drools-drl-parser/src/main/java/org/drools/drl/parser/antlr4/DescrHelper.java
@@ -22,9 +22,6 @@ import java.util.List;
import org.antlr.v4.runtime.ParserRuleContext;
import org.antlr.v4.runtime.Token;
-import org.antlr.v4.runtime.tree.TerminalNode;
-import org.drools.drl.ast.descr.AndDescr;
-import org.drools.drl.ast.descr.AttributeDescr;
import org.drools.drl.ast.descr.BaseDescr;
import org.drools.drl.ast.descr.ExprConstraintDescr;
import org.drools.drl.ast.descr.PatternDescr;
@@ -58,11 +55,15 @@ public class DescrHelper {
// However, it doesn't look reasonable. When we will update
LanguageLevel, we can remove this +1.
descr.setEndCharacter(stopToken.getStopIndex() + 1);
descr.setLocation(startToken.getLine(),
startToken.getCharPositionInLine());
- descr.setEndLocation(stopToken.getLine(),
stopToken.getCharPositionInLine() + stopToken.getText().length() - 1); // last
column of the end token
+ descr.setEndLocation(stopToken.getLine(),
stopToken.getCharPositionInLine() + stopTokenLength(stopToken) - 1); // last
column of the end token
}
return descr;
}
+ private static int stopTokenLength(Token token) {
+ return token.getType() == Token.EOF ? 0 : token.getText().length();
+ }
+
public static <T extends BaseDescr> T populateCommonProperties(T descr,
List<? extends ParserRuleContext> ctxList) {
if (ctxList.isEmpty()) {
return descr;
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]