List of usage examples for org.antlr.v4.runtime Token getLine
int getLine();
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoAssignmentVisitor.java
License:Open Source License
private ASTNode blockCase(AssignmentContext ctx, String id) { Token token = ctx.getStart(); int lineNumber = token.getLine(); logger.debug("Resolving assignment of block to {}. Line number {}", id, lineNumber); BlockContext child = (BlockContext) ctx.getChild(1); Stream<ASTNode> children = blockVisitor.getChildrenAsNodes(child); return new ASTNode(id, children, lineNumber); }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoAssignmentVisitor.java
License:Open Source License
private ASTNode singletonCase(AssignmentContext ctx, String id) { Token token = ctx.getStart(); int lineNumber = token.getLine(); logger.debug("Resolving assignment of singleton to {}. Line number {}", id, lineNumber); ParseTree child = ctx.getChild(2);// w w w.j a v a 2 s . c o m ASTNode value = child.accept(singletonVisitor); Stream<ASTNode> children = Stream.of(value); return new ASTNode(id, children, lineNumber); }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoPrimitiveBooleanVisitor.java
License:Open Source License
@Override public ASTNode visitBoolPrimitive(@NotNull BoolPrimitiveContext ctx) { if (ctx.getChildCount() != 1) { throw new IllegalStateException("Internal error: malformed primitive"); }//from w w w. j av a 2s. c o m Token token = ctx.getStart(); int lineNumber = token.getLine(); ParseTree child = ctx.getChild(0); verifyPayload(child, CommonToken.class); String valueText = child.getText(); ASTNode valueNode = new ASTNode(valueText, Stream.empty(), lineNumber); Stream<ASTNode> children = Stream.of(valueNode); ASTNode container = new ASTNode(IDENTIFIER, children, lineNumber); logger.debug("Translated literal \"{}\" as a Boolean primitive.", valueText); return container; }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoPrimitiveDoubleVisitor.java
License:Open Source License
@Override public ASTNode visitFloatPrimitive(@NotNull NanosyntaxParser.FloatPrimitiveContext ctx) { if (ctx.getChildCount() != 1) { throw new IllegalStateException("Internal error: malformed primitive"); }/* ww w.j a v a2 s . co m*/ Token token = ctx.getStart(); int lineNumber = token.getLine(); ParseTree child = ctx.getChild(0); verifyPayload(child, CommonToken.class); String valueText = child.getText(); ASTNode valueNode = new ASTNode(valueText, Stream.empty(), lineNumber); Stream<ASTNode> children = Stream.of(valueNode); ASTNode container = new ASTNode(IDENTIFIER, children, lineNumber); logger.debug("Translated literal \"{}\" as a Double primitive. Line number {}", valueText, lineNumber); return container; }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoPrimitiveIntegerVisitor.java
License:Open Source License
@Override public ASTNode visitIntPrimitive(@NotNull NanosyntaxParser.IntPrimitiveContext ctx) { if (ctx.getChildCount() != 1) { throw new IllegalStateException("Malformed primitive"); }//from w w w . ja v a 2s . c om Token token = ctx.getStart(); int lineNumber = token.getLine(); ParseTree child = ctx.getChild(0); verifyPayload(child, CommonToken.class); String valueText = child.getText(); ASTNode valueNode = new ASTNode(valueText, Stream.empty(), lineNumber); Stream<ASTNode> children = Stream.of(valueNode); ASTNode container = new ASTNode(IDENTIFIER, children, lineNumber); logger.debug("Translated literal \"{}\" as an Integer primitive. Line number {}", valueText, lineNumber); return container; }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoPrimitiveStringVisitor.java
License:Open Source License
@Override public ASTNode visitStringPrimitive(@NotNull NanosyntaxParser.StringPrimitiveContext ctx) { if (ctx.getChildCount() != 1) { throw new IllegalStateException("Malformed primitive"); }//w w w . ja va 2 s . com Token token = ctx.getStart(); int lineNumber = token.getLine(); ParseTree child = ctx.getChild(0); verifyPayload(child, CommonToken.class); String valueText = child.getText(); valueText = valueText.replaceAll("^\"|\"$", ""); ASTNode valueNode = new ASTNode(valueText, Stream.empty(), lineNumber); Stream<ASTNode> children = Stream.of(valueNode); ASTNode container = new ASTNode(IDENTIFIER, children, lineNumber); logger.debug("Translated literal \"{}\" as a String primitive. Line number {}", valueText, lineNumber); return container; }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoRootVisitor.java
License:Open Source License
public ASTNode visitRoot(@NotNull NanosyntaxParser.RootContext ctx) { Token token = ctx.getStart(); int lineNumber = token.getLine(); logger.debug("Visiting root with {} children. Line number {}", ctx.getChildCount(), lineNumber); Stream<ASTNode> children = helper.doVisit(ctx, 0, ctx.getChildCount()); ASTNode ret = new ASTNode(IDENTIFIER, children, lineNumber); return ret;//from ww w. j av a 2 s . co m }
From source file:nanoverse.compiler.pipeline.interpret.visitors.NanoStandaloneIdVisitor.java
License:Open Source License
@Override public ASTNode visitId(@NotNull NanosyntaxParser.IdContext ctx) { Token token = ctx.getStart(); int lineNumber = token.getLine(); ParseTree idTree = ctx.getChild(0);/*ww w.j ava 2 s .c om*/ verifyPayload(idTree, CommonToken.class); String identifier = idTree.getText(); logger.debug("Translated stand-alone ID \"{}\" as \"{}\". Line number {}", ctx.getText(), idTree.getText(), lineNumber); return new ASTNode(identifier, Stream.empty(), lineNumber); }
From source file:net.cpollet.thorium.ThoriumException.java
License:Apache License
protected static String location(Token token) { return token.getLine() + ":" + (token.getCharPositionInLine() + 1) + " (" + token.getText() + ")"; }
From source file:net.sf.jame.contextfree.parser.Builder.java
License:Open Source License
protected void warning(String message, Token location) { System.out.println("[" + location.getLine() + ":" + location.getCharPositionInLine() + "] : " + message); }