public void addToken(Token... tokens) { checkArgument(tokens.length > 0, "at least one token must be given"); Token firstToken = tokens[0]; Token firstTokenWithTrivia; // Performance optimization: no need to rebuild token, if there is no trivia if (trivia.isEmpty() && !firstToken.hasTrivia()) { firstTokenWithTrivia = firstToken; } else { firstTokenWithTrivia = Token.builder(firstToken).setTrivia(trivia).build(); trivia.clear(); } this.tokens.add(firstTokenWithTrivia); if (tokens.length > 1) { this.tokens.addAll(Arrays.asList(tokens).subList(1, tokens.length)); } }
public void addToken(Token... tokens) { if (tokens.length <= 0) { throw new IllegalArgumentException("at least one token must be given"); } Token firstToken = tokens[0]; Token firstTokenWithTrivia; // Performance optimization: no need to rebuild token, if there is no trivia if (trivia.isEmpty() && !firstToken.hasTrivia()) { firstTokenWithTrivia = firstToken; } else { firstTokenWithTrivia = Token.builder(firstToken).setTrivia(trivia).build(); trivia.clear(); } this.tokens.add(firstTokenWithTrivia); if (tokens.length > 1) { this.tokens.addAll(Arrays.asList(tokens).subList(1, tokens.length)); } }
public void addToken(Token... tokens) { if (tokens.length <= 0) { throw new IllegalArgumentException("at least one token must be given"); } Token firstToken = tokens[0]; Token firstTokenWithTrivia; // Performance optimization: no need to rebuild token, if there is no trivia if (trivia.isEmpty() && !firstToken.hasTrivia()) { firstTokenWithTrivia = firstToken; } else { firstTokenWithTrivia = Token.builder(firstToken).setTrivia(trivia).build(); trivia.clear(); } this.tokens.add(firstTokenWithTrivia); if (tokens.length > 1) { this.tokens.addAll(Arrays.asList(tokens).subList(1, tokens.length)); } }
} else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { updateTokenPositionAndValue(node); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); tokenBuilder.setType(ruleMatcher.getTokenType()); if (ruleMatcher.getTokenType() == GenericTokenType.COMMENT) { tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); trivias.add(Trivia.createComment(tokenBuilder.build())); return null; tokenBuilder.setType(UNDEFINED_TOKEN_TYPE); Token token = tokenBuilder.setTrivia(trivias).build(); trivias.clear(); AstNode astNode = new AstNode(token);
} else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { updateTokenPositionAndValue(node); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); tokenBuilder.setType(ruleMatcher.getTokenType()); if (ruleMatcher.getTokenType() == GenericTokenType.COMMENT) { tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); trivias.add(Trivia.createComment(tokenBuilder.build())); return null; tokenBuilder.setType(UNDEFINED_TOKEN_TYPE); Token token = tokenBuilder.setTrivia(trivias).build(); trivias.clear(); AstNode astNode = new AstNode(token);
} else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { updateTokenPositionAndValue(node); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); tokenBuilder.setType(ruleMatcher.getTokenType()); if (ruleMatcher.getTokenType() == GenericTokenType.COMMENT) { tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); trivias.add(Trivia.createComment(tokenBuilder.build())); return null; tokenBuilder.setType(UNDEFINED_TOKEN_TYPE); Token token = tokenBuilder.setTrivia(trivias).build(); trivias.clear(); AstNode astNode = new AstNode(token);
} else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { updateTokenPositionAndValue(node); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); tokenBuilder.setType(ruleMatcher.getTokenType()); if (ruleMatcher.getTokenType() == GenericTokenType.COMMENT) { tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); trivias.add(Trivia.createComment(tokenBuilder.build())); return null; tokenBuilder.setType(UNDEFINED_TOKEN_TYPE); Token token = tokenBuilder.setTrivia(trivias).build(); trivias.clear(); AstNode astNode = new AstNode(token);
} else if (ruleMatcher.getTriviaKind() == TriviaKind.COMMENT) { updateTokenPositionAndValue(node); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); tokenBuilder.setType(ruleMatcher.getTokenType()); if (ruleMatcher.getTokenType() == GenericTokenType.COMMENT) { tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); trivias.add(Trivia.createComment(tokenBuilder.build())); return null; tokenBuilder.setType(UNDEFINED_TOKEN_TYPE); Token token = tokenBuilder.setTrivia(trivias).build(); trivias.clear(); AstNode astNode = new AstNode(token);
@Override public AstNode createTerminal(Input input, int startIndex, int endIndex, List<Trivia> trivias, TokenType type) { int[] lineAndColumn = input.lineAndColumnAt(startIndex); Token token = Token.builder() .setType(type == null ? UNDEFINED_TOKEN_TYPE : type) .setLine(lineAndColumn[0]) .setColumn(lineAndColumn[1] - 1) .setValueAndOriginalValue(input.substring(startIndex, endIndex)) .setURI(input.uri()) .setGeneratedCode(false) .setTrivia(trivias) .build(); AstNode astNode = new AstNode(token); astNode.setFromIndex(startIndex); astNode.setToIndex(endIndex); return astNode; }
@Override public AstNode createTerminal(Input input, int startIndex, int endIndex, List<Trivia> trivias, TokenType type) { int[] lineAndColumn = input.lineAndColumnAt(startIndex); Token token = Token.builder() .setType(type == null ? UNDEFINED_TOKEN_TYPE : type) .setLine(lineAndColumn[0]) .setColumn(lineAndColumn[1] - 1) .setValueAndOriginalValue(input.substring(startIndex, endIndex)) .setURI(input.uri()) .setGeneratedCode(false) .setTrivia(trivias) .build(); AstNode astNode = new AstNode(token); astNode.setFromIndex(startIndex); astNode.setToIndex(endIndex); return astNode; }
private void addComment(ParseNode node) { tokenBuilder.setGeneratedCode(false); int[] lineAndColumn = input.lineAndColumnAt(node.getStartIndex()); tokenBuilder.setLine(lineAndColumn[0]); tokenBuilder.setColumn(lineAndColumn[1] - 1); tokenBuilder.setURI(input.uri()); String value = input.substring(node.getStartIndex(), node.getEndIndex()); tokenBuilder.setValueAndOriginalValue(value); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); }
private void addComment(ParseNode node) { tokenBuilder.setGeneratedCode(false); int[] lineAndColumn = input.lineAndColumnAt(node.getStartIndex()); tokenBuilder.setLine(lineAndColumn[0]); tokenBuilder.setColumn(lineAndColumn[1] - 1); tokenBuilder.setURI(input.uri()); String value = input.substring(node.getStartIndex(), node.getEndIndex()); tokenBuilder.setValueAndOriginalValue(value); tokenBuilder.setTrivia(Collections.<Trivia>emptyList()); tokenBuilder.setType(GenericTokenType.COMMENT); trivias.add(Trivia.createComment(tokenBuilder.build())); }