@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name, TypeSolver typeSolver) { for (Expression expression : wrappedNode.getInitialization()) { if (expression instanceof VariableDeclarationExpr) { VariableDeclarationExpr variableDeclarationExpr = (VariableDeclarationExpr) expression; for (VariableDeclarator variableDeclarator : variableDeclarationExpr.getVariables()) { if (variableDeclarator.getName().getId().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(variableDeclarator, typeSolver)); } } } else if (!(expression instanceof AssignExpr || expression instanceof MethodCallExpr)) { throw new UnsupportedOperationException(expression.getClass().getCanonicalName()); } } if (getParentNode(wrappedNode) instanceof NodeWithStatements) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name, typeSolver); } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name, TypeSolver typeSolver) { for (Expression expression : wrappedNode.getInitialization()) { if (expression instanceof VariableDeclarationExpr) { VariableDeclarationExpr variableDeclarationExpr = (VariableDeclarationExpr) expression; for (VariableDeclarator variableDeclarator : variableDeclarationExpr.getVariables()) { if (variableDeclarator.getName().getId().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(variableDeclarator, typeSolver)); } } } else if (!(expression instanceof AssignExpr || expression instanceof MethodCallExpr)) { throw new UnsupportedOperationException(expression.getClass().getCanonicalName()); } } if (getParentNode(wrappedNode) instanceof NodeWithStatements) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name, typeSolver); } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name) { for (Expression expression : wrappedNode.getInitialization()) { if (expression instanceof VariableDeclarationExpr) { VariableDeclarationExpr variableDeclarationExpr = (VariableDeclarationExpr) expression; for (VariableDeclarator variableDeclarator : variableDeclarationExpr.getVariables()) { if (variableDeclarator.getName().getId().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(variableDeclarator, typeSolver)); } } } else if (!(expression instanceof AssignExpr || expression instanceof MethodCallExpr)) { throw new UnsupportedOperationException(expression.getClass().getCanonicalName()); } } if (requireParentNode(wrappedNode) instanceof NodeWithStatements) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name); } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name, TypeSolver typeSolver) { for (Expression expr : wrappedNode.getResources()) { if (expr instanceof VariableDeclarationExpr) { for (VariableDeclarator v : ((VariableDeclarationExpr)expr).getVariables()) { if (v.getName().getIdentifier().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(v, typeSolver)); } } } } if (getParentNode(wrappedNode) instanceof BlockStmt) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name, typeSolver); } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name) { for (Expression expr : wrappedNode.getResources()) { if (expr instanceof VariableDeclarationExpr) { for (VariableDeclarator v : ((VariableDeclarationExpr)expr).getVariables()) { if (v.getName().getIdentifier().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(v, typeSolver)); } } } } if (requireParentNode(wrappedNode) instanceof BlockStmt) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name); } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name, TypeSolver typeSolver) { for (Expression expr : wrappedNode.getResources()) { if (expr instanceof VariableDeclarationExpr) { for (VariableDeclarator v : ((VariableDeclarationExpr)expr).getVariables()) { if (v.getName().getIdentifier().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(v, typeSolver)); } } } } if (getParentNode(wrappedNode) instanceof BlockStmt) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name, typeSolver); } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name) { if (wrappedNode.getVariable().getVariables().size() != 1) { throw new IllegalStateException(); } VariableDeclarator variableDeclarator = wrappedNode.getVariable().getVariables().get(0); if (variableDeclarator.getName().getId().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(variableDeclarator, typeSolver)); } else { if (requireParentNode(wrappedNode) instanceof BlockStmt) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name); } } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name, TypeSolver typeSolver) { if (wrappedNode.getVariable().getVariables().size() != 1) { throw new IllegalStateException(); } VariableDeclarator variableDeclarator = wrappedNode.getVariable().getVariables().get(0); if (variableDeclarator.getName().getId().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(variableDeclarator, typeSolver)); } else { if (getParentNode(wrappedNode) instanceof BlockStmt) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name, typeSolver); } } }
@Override public SymbolReference<? extends ResolvedValueDeclaration> solveSymbol(String name, TypeSolver typeSolver) { if (wrappedNode.getVariable().getVariables().size() != 1) { throw new IllegalStateException(); } VariableDeclarator variableDeclarator = wrappedNode.getVariable().getVariables().get(0); if (variableDeclarator.getName().getId().equals(name)) { return SymbolReference.solved(JavaParserSymbolDeclaration.localVar(variableDeclarator, typeSolver)); } else { if (getParentNode(wrappedNode) instanceof BlockStmt) { return StatementContext.solveInBlock(name, typeSolver, wrappedNode); } else { return getParent().solveSymbol(name, typeSolver); } } }