From 295f99b179e1b48be808277d9cacb7d0dcc44991 Mon Sep 17 00:00:00 2001 From: Federico Tomassetti Date: Tue, 14 Aug 2018 14:25:46 +0200 Subject: [PATCH] reduce calls to wrappedNode.getResources in localVariablesExposedToChild --- .../contexts/TryWithResourceContext.java | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/TryWithResourceContext.java b/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/TryWithResourceContext.java index 69fa2fa2b4..893f781437 100644 --- a/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/TryWithResourceContext.java +++ b/javaparser-symbol-solver-core/src/main/java/com/github/javaparser/symbolsolver/javaparsermodel/contexts/TryWithResourceContext.java @@ -17,6 +17,7 @@ package com.github.javaparser.symbolsolver.javaparsermodel.contexts; import com.github.javaparser.ast.Node; +import com.github.javaparser.ast.NodeList; import com.github.javaparser.ast.body.VariableDeclarator; import com.github.javaparser.ast.expr.Expression; import com.github.javaparser.ast.expr.VariableDeclarationExpr; @@ -92,17 +93,19 @@ public SymbolReference solveMethod(String name, List< @Override public List localVariablesExposedToChild(Node child) { - for (int i=0;i e instanceof VariableDeclarationExpr ? ((VariableDeclarationExpr) e).getVariables() : Collections.emptyList()) + NodeList resources = wrappedNode.getResources(); + for (int i=0;i e instanceof VariableDeclarationExpr ? ((VariableDeclarationExpr) e).getVariables() + : Collections.emptyList()) .flatMap(List::stream) .collect(Collectors.toList()); } } if (child == wrappedNode.getTryBlock()) { List res = new LinkedList<>(); - for (Expression expr : wrappedNode.getResources()) { + for (Expression expr : resources) { if (expr instanceof VariableDeclarationExpr) { res.addAll(((VariableDeclarationExpr)expr).getVariables()); }