/** * Return all tokens contained in this tree node. Those tokens can be directly or indirectly attached to this node. */ public List<Token> getTokens() { List<Token> tokens = new ArrayList<>(); getTokens(tokens); return tokens; }
/** * Return all tokens contained in this tree node. Those tokens can be directly or indirectly attached to this node. */ public List<Token> getTokens() { List<Token> tokens = Lists.newArrayList(); getTokens(tokens); return tokens; }
private static Set<String> extractStringInterpolationIdentifiers(AstNode functionTree) { return functionTree.getTokens().stream() .filter(CheckUtils::isStringInterpolation) .map(Token::getOriginalValue) .map(CheckUtils::stringLiteralContent) .map(IDENTIFIER_SEPARATOR::split) .flatMap(Arrays::stream) .collect(Collectors.toSet()); }
private static Set<String> extractStringInterpolationIdentifiers(AstNode functionTree) { return functionTree.getTokens().stream() .filter(CheckUtils::isStringInterpolation) .map(Token::getOriginalValue) .map(CheckUtils::stringLiteralContent) .map(IDENTIFIER_SEPARATOR::split) .flatMap(Arrays::stream) .collect(Collectors.toSet()); }
public static String exprToString(AstNode expression) { StringBuilder builder = new StringBuilder(); for (Token t : expression.getTokens()) { builder.append(t.getValue()); } return builder.toString(); }
private String concatenate(AstNode astNode) { StringBuilder sb = new StringBuilder(); for (Token token : astNode.getTokens()) { sb.append(token.getValue()); } return sb.toString(); } }
private void getTokens(List<Token> tokens) { if (!hasChildren()) { if (token != null) { tokens.add(token); } } else { for (int i = 0; i < children.size(); i++) { children.get(i).getTokens(tokens); } } }
private void getTokens(List<Token> tokens) { if (!hasChildren()) { if (token != null) { tokens.add(token); } } else { for (int i = 0; i < children.size(); i++) { children.get(i).getTokens(tokens); } } }
private static String concatenate(AstNode astNode) { StringBuilder sb = new StringBuilder(); for (Token token : astNode.getTokens()) { sb.append(token.getValue()); } return sb.toString(); } }
private static List<Token> getCaseImplementationTokens(AstNode caseElement) { List<Token> tokens = Lists.newArrayList(); for (AstNode directive : caseElement.getChildren(FlexGrammar.DIRECTIVE)) { tokens.addAll(directive.getTokens()); } return tokens; }
private static String getPrimaryExpressionStringValue(AstNode postfixExpr) { StringBuilder builder = new StringBuilder(); for (Token t : postfixExpr.getTokens()) { builder.append(t.getValue()); } return builder.toString(); }
private void getTokens(List<Token> tokens) { if (!hasChildren()) { if (token != null) { tokens.add(token); } } else { for (int i = 0; i < children.size(); i++) { children.get(i).getTokens(tokens); } } }
private String getPrimaryExpressionStringValue(AstNode postfixExpr) { StringBuilder builder = new StringBuilder(); for (Token t : postfixExpr.getTokens()) { builder.append(t.getValue()); } return builder.toString(); }
private void checkFirstStatement(@Nullable AstNode firstStatement) { if (firstStatement != null) { List<Token> tokens = firstStatement.getTokens(); if (tokens.size() == 2 && tokens.get(0).getType().equals(PythonTokenType.STRING)) { // second token is NEWLINE highlight(tokens.get(0), TypeOfText.STRUCTURED_COMMENT); docStringTokens.add(tokens.get(0)); } } }
private Object getNamespaceName(AstNode namespaceNode) { AstNode namespaceName = namespaceNode.getFirstChild(PHPGrammar.NAMESPACE_NAME); StringBuilder builder = new StringBuilder(); if (namespaceName != null) { for (Token t : namespaceName.getTokens()) { builder.append(t.getOriginalValue()); } } return builder.toString(); }
@Override public void visitNode(AstNode node) { if (node.is(CSharpGrammar.CLASS_DECLARATION)) { types.clear(); } else { types.add(joinTokens(node.getTokens())); } }
private static boolean isUselessCallToSuper(AstNode singleStatement, String methodName, List<String> parameters) { StringBuilder sb = new StringBuilder(); for (Token token : singleStatement.getFirstChild().getTokens()) { sb.append(token.getValue()); } String actual = sb.toString(); String expected = FlexKeyword.SUPER.getValue() + "." + methodName + "(" + Joiner.on(",").join(parameters) + ");"; return actual.equals(expected) || actual.equals(FlexKeyword.RETURN.getValue() + expected); } }
private String getClassName(AstNode expr) { StringBuilder builder = new StringBuilder(); for (Token token : expr.getTokens()) { if (token.getType() == PHPPunctuator.LPARENTHESIS) { break; } if (token.getType() != PHPKeyword.NAMESPACE) { builder.append(token.getOriginalValue()); } } return builder.toString(); }
private static boolean containsComment(AstNode suiteNode) { for (Token token : suiteNode.getTokens()) { for (Trivia trivia : token.getTrivia()) { if (trivia.isComment()) { return true; } } } return false; }
private void createLoopVariables(AstNode loopTree) { AstNode target = loopTree.getFirstChild(PythonGrammar.EXPRLIST); if (target.getTokens().size() == 1) { addWriteUsage(target.getFirstDescendant(PythonGrammar.NAME)); } }