You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@netbeans.apache.org by jl...@apache.org on 2017/10/04 19:41:24 UTC
[12/13] incubator-netbeans git commit: Work in progress: an
experiment on using javac from JDK for source code modeling.
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.editor/src/org/netbeans/modules/java/editor/rename/InstantRenamePerformer.java
----------------------------------------------------------------------
diff --git a/java.editor/src/org/netbeans/modules/java/editor/rename/InstantRenamePerformer.java b/java.editor/src/org/netbeans/modules/java/editor/rename/InstantRenamePerformer.java
index 936eaef..9b98b86 100644
--- a/java.editor/src/org/netbeans/modules/java/editor/rename/InstantRenamePerformer.java
+++ b/java.editor/src/org/netbeans/modules/java/editor/rename/InstantRenamePerformer.java
@@ -24,7 +24,7 @@ import com.sun.source.tree.LabeledStatementTree;
import com.sun.source.tree.StatementTree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.awt.Color;
import java.awt.event.KeyEvent;
@@ -413,7 +413,7 @@ public class InstantRenamePerformer implements DocumentListener, KeyListener {
if (labeledStatement.getLeaf().getKind() == Kind.LABELED_STATEMENT) {
result.add(org.netbeans.modules.java.editor.base.semantic.Utilities.findIdentifierSpan(info, document, labeledStatement));
final Name label = ((LabeledStatementTree)labeledStatement.getLeaf()).getLabel();
- new TreePathScanner <Void, Void>() {
+ new ErrorAwareTreePathScanner <Void, Void>() {
@Override
public Void visitBreak(BreakTree node, Void p) {
if (node.getLabel() != null && label.contentEquals(node.getLabel())) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.editor/test/unit/src/org/netbeans/modules/editor/java/GoToSupportTest.java
----------------------------------------------------------------------
diff --git a/java.editor/test/unit/src/org/netbeans/modules/editor/java/GoToSupportTest.java b/java.editor/test/unit/src/org/netbeans/modules/editor/java/GoToSupportTest.java
index 2f28db2..bf44269 100644
--- a/java.editor/test/unit/src/org/netbeans/modules/editor/java/GoToSupportTest.java
+++ b/java.editor/test/unit/src/org/netbeans/modules/editor/java/GoToSupportTest.java
@@ -38,12 +38,13 @@ import org.netbeans.api.java.source.CompilationController;
import org.netbeans.api.java.source.ElementHandle;
import org.netbeans.api.java.source.JavaSource;
import org.netbeans.api.java.source.SourceUtilsTestUtil;
+import org.netbeans.api.java.source.SourceUtilsTestUtil2;
import org.netbeans.api.java.source.Task;
import org.netbeans.api.java.source.TestUtilities;
import org.netbeans.api.lexer.Language;
import org.netbeans.junit.NbTestCase;
import org.netbeans.modules.editor.java.GoToSupport.UiUtilsCaller;
-import org.netbeans.modules.java.source.TreeLoader;
+//import org.netbeans.modules.java.source.TreeLoader;
import org.netbeans.modules.java.source.parsing.JavacParser;
import org.openide.cookies.EditorCookie;
import org.openide.filesystems.FileObject;
@@ -68,7 +69,7 @@ public class GoToSupportTest extends NbTestCase {
protected void setUp() throws Exception {
SourceUtilsTestUtil.prepareTest(new String[] {"org/netbeans/modules/java/editor/resources/layer.xml"}, new Object[0]);
org.netbeans.api.project.ui.OpenProjects.getDefault().getOpenProjects();
- TreeLoader.DISABLE_ARTIFICAL_PARAMETER_NAMES = true;
+ SourceUtilsTestUtil2.disableArtificalParameterNames();
JavacParser.DISABLE_SOURCE_LEVEL_DOWNGRADE = false;
}
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.editor/test/unit/src/org/netbeans/modules/editor/java/UtilitiesTest.java
----------------------------------------------------------------------
diff --git a/java.editor/test/unit/src/org/netbeans/modules/editor/java/UtilitiesTest.java b/java.editor/test/unit/src/org/netbeans/modules/editor/java/UtilitiesTest.java
index 0887c79..9c0181a 100644
--- a/java.editor/test/unit/src/org/netbeans/modules/editor/java/UtilitiesTest.java
+++ b/java.editor/test/unit/src/org/netbeans/modules/editor/java/UtilitiesTest.java
@@ -22,7 +22,7 @@ package org.netbeans.modules.editor.java;
import java.util.ArrayList;
import com.sun.source.tree.MethodInvocationTree;
import com.sun.source.tree.NewClassTree;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Arrays;
import java.util.LinkedList;
import java.util.List;
@@ -226,7 +226,7 @@ public class UtilitiesTest extends NbTestCase {
public void run(final CompilationController cc) throws Exception {
cc.toPhase(Phase.RESOLVED);
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override
public Void visitMethodInvocation(MethodInvocationTree node, Void p) {
if (!cc.getTreeUtilities().isSynthetic(getCurrentPath())) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.editor/test/unit/src/org/netbeans/modules/java/editor/codegen/DelegateMethodGeneratorTest.java
----------------------------------------------------------------------
diff --git a/java.editor/test/unit/src/org/netbeans/modules/java/editor/codegen/DelegateMethodGeneratorTest.java b/java.editor/test/unit/src/org/netbeans/modules/java/editor/codegen/DelegateMethodGeneratorTest.java
index cb5cfdb..ef07d10 100644
--- a/java.editor/test/unit/src/org/netbeans/modules/java/editor/codegen/DelegateMethodGeneratorTest.java
+++ b/java.editor/test/unit/src/org/netbeans/modules/java/editor/codegen/DelegateMethodGeneratorTest.java
@@ -53,7 +53,7 @@ import org.netbeans.api.java.source.TreePathHandle;
import org.netbeans.api.java.source.WorkingCopy;
import org.netbeans.junit.NbTestCase;
import org.netbeans.modules.java.editor.codegen.ui.ElementNode;
-import org.netbeans.modules.java.source.TreeLoader;
+//import org.netbeans.modules.java.source.TreeLoader;
import org.openide.filesystems.FileObject;
import org.openide.filesystems.FileUtil;
@@ -68,7 +68,7 @@ public class DelegateMethodGeneratorTest extends NbTestCase {
}
protected void setUp() throws Exception {
- TreeLoader.DISABLE_CONFINEMENT_TEST = true;
+// TreeLoader.DISABLE_CONFINEMENT_TEST = true;
}
public void testFindUsableFields() throws Exception {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.editor/test/unit/src/org/netbeans/modules/java/editor/completion/CompletionTestBase.java
----------------------------------------------------------------------
diff --git a/java.editor/test/unit/src/org/netbeans/modules/java/editor/completion/CompletionTestBase.java b/java.editor/test/unit/src/org/netbeans/modules/java/editor/completion/CompletionTestBase.java
index 502e583..843a367 100644
--- a/java.editor/test/unit/src/org/netbeans/modules/java/editor/completion/CompletionTestBase.java
+++ b/java.editor/test/unit/src/org/netbeans/modules/java/editor/completion/CompletionTestBase.java
@@ -51,6 +51,7 @@ import org.netbeans.api.java.lexer.JavaTokenId;
import org.netbeans.api.java.source.ClasspathInfo;
import org.netbeans.api.java.source.CompilationController;
import org.netbeans.api.java.source.JavaSource;
+import org.netbeans.api.java.source.SourceUtilsTestUtil2;
import org.netbeans.api.java.source.Task;
import org.netbeans.api.java.source.gen.WhitespaceIgnoringDiff;
import org.netbeans.api.lexer.Language;
@@ -60,7 +61,7 @@ import org.netbeans.modules.editor.completion.CompletionItemComparator;
import org.netbeans.modules.editor.java.JavaCompletionProvider;
import org.netbeans.modules.editor.java.JavaKit;
import org.netbeans.modules.java.JavaDataLoader;
-import org.netbeans.modules.java.source.TreeLoader;
+//import org.netbeans.modules.java.source.TreeLoader;
import org.netbeans.modules.java.source.indexing.TransactionContext;
import org.netbeans.modules.java.source.parsing.JavacParserFactory;
import org.netbeans.modules.java.source.usages.BinaryAnalyser;
@@ -100,7 +101,7 @@ public class CompletionTestBase extends NbTestCase {
System.setProperty("org.openide.util.Lookup", Lkp.class.getName());
Assert.assertEquals(Lkp.class, Lookup.getDefault().getClass());
- TreeLoader.DISABLE_ARTIFICAL_PARAMETER_NAMES = true;
+ SourceUtilsTestUtil2.disableArtificalParameterNames();
}
static final int FINISH_OUTTIME = 5 * 60 * 1000;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.editor/test/unit/src/org/netbeans/modules/java/editor/overridden/IsOverriddenAnnotationCreatorTest.java
----------------------------------------------------------------------
diff --git a/java.editor/test/unit/src/org/netbeans/modules/java/editor/overridden/IsOverriddenAnnotationCreatorTest.java b/java.editor/test/unit/src/org/netbeans/modules/java/editor/overridden/IsOverriddenAnnotationCreatorTest.java
index 39a0994..c689e06 100644
--- a/java.editor/test/unit/src/org/netbeans/modules/java/editor/overridden/IsOverriddenAnnotationCreatorTest.java
+++ b/java.editor/test/unit/src/org/netbeans/modules/java/editor/overridden/IsOverriddenAnnotationCreatorTest.java
@@ -32,9 +32,10 @@ import org.netbeans.api.java.source.CompilationInfo;
import org.netbeans.api.java.source.JavaSource;
import org.netbeans.api.java.source.JavaSource.Phase;
import org.netbeans.api.java.source.SourceUtilsTestUtil;
+import org.netbeans.api.java.source.SourceUtilsTestUtil2;
import org.netbeans.junit.NbTestCase;
import org.netbeans.modules.java.source.TestUtil;
-import org.netbeans.modules.java.source.TreeLoader;
+//import org.netbeans.modules.java.source.TreeLoader;
import org.openide.cookies.EditorCookie;
import org.openide.filesystems.FileObject;
import org.openide.filesystems.FileUtil;
@@ -120,8 +121,8 @@ public class IsOverriddenAnnotationCreatorTest extends NbTestCase {
ComputeOverriders.dependenciesOverride = Collections.singletonMap(sourceRoot.getURL(), Collections.<URL>emptyList());
ComputeOverriders.reverseSourceRootsInOrderOverride = Arrays.asList(sourceRoot.getURL());
- TreeLoader.DISABLE_CONFINEMENT_TEST = true;
- TreeLoader.DISABLE_ARTIFICAL_PARAMETER_NAMES = true;
+// TreeLoader.DISABLE_CONFINEMENT_TEST = true;
+ SourceUtilsTestUtil2.disableArtificalParameterNames();
}
//does not work as recursive lookup does not work:
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/DeclarativeHintsParser.java
----------------------------------------------------------------------
diff --git a/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/DeclarativeHintsParser.java b/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/DeclarativeHintsParser.java
index 3a31049..79d8a5b 100644
--- a/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/DeclarativeHintsParser.java
+++ b/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/DeclarativeHintsParser.java
@@ -419,13 +419,14 @@ public class DeclarativeHintsParser {
if (javacApiJar != null) {
Logger.getLogger(DeclarativeHintsParser.class.getName()).log(Level.FINE, "javacApiJar={0}", javacApiJar);
File aj = FileUtil.archiveOrDirForURL(javacApiJar);
- res = ClassPathSupport.createClassPath(FileUtil.urlForArchiveOrDir(aj));
- javacApiClasspath = new WeakReference<>(res);
- return res;
- } else {
- javacApiClasspath = NONE;
- return null;
+ if (aj != null) {
+ res = ClassPathSupport.createClassPath(FileUtil.urlForArchiveOrDir(aj));
+ javacApiClasspath = new WeakReference<>(res);
+ return res;
+ }
}
+ javacApiClasspath = NONE;
+ return null;
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/conditionapi/Matcher.java
----------------------------------------------------------------------
diff --git a/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/conditionapi/Matcher.java b/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/conditionapi/Matcher.java
index abe2cab..46f8391 100644
--- a/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/conditionapi/Matcher.java
+++ b/java.hints.declarative/src/org/netbeans/modules/java/hints/declarative/conditionapi/Matcher.java
@@ -21,7 +21,7 @@ package org.netbeans.modules.java.hints.declarative.conditionapi;
import com.sun.source.tree.Tree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Collection;
import java.util.LinkedList;
import javax.lang.model.element.Element;
@@ -69,7 +69,7 @@ public final class Matcher {
for (TreePath toSearch : paths) {
//XXX:
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override
public Void scan(Tree tree, Void p) {
if (tree == null) return null;
@@ -98,7 +98,7 @@ public final class Matcher {
}
for (TreePath tp : ctx.getVariable(in)) {
- boolean occurs = new TreePathScanner<Boolean, Void>() {
+ boolean occurs = new ErrorAwareTreePathScanner<Boolean, Void>() {
@Override
public Boolean scan(Tree tree, Void p) {
if (tree == null) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints.declarative/test/unit/src/org/netbeans/modules/java/hints/declarative/debugging/EvaluationSpanTaskTest.java
----------------------------------------------------------------------
diff --git a/java.hints.declarative/test/unit/src/org/netbeans/modules/java/hints/declarative/debugging/EvaluationSpanTaskTest.java b/java.hints.declarative/test/unit/src/org/netbeans/modules/java/hints/declarative/debugging/EvaluationSpanTaskTest.java
index c94dc22..df3d3ff 100644
--- a/java.hints.declarative/test/unit/src/org/netbeans/modules/java/hints/declarative/debugging/EvaluationSpanTaskTest.java
+++ b/java.hints.declarative/test/unit/src/org/netbeans/modules/java/hints/declarative/debugging/EvaluationSpanTaskTest.java
@@ -37,7 +37,7 @@ import org.netbeans.api.java.source.SourceUtilsTestUtil;
import org.netbeans.api.java.source.TestUtilities;
import org.netbeans.api.lexer.Language;
import org.netbeans.junit.NbTestCase;
-import org.netbeans.modules.java.source.TreeLoader;
+//import org.netbeans.modules.java.source.TreeLoader;
import org.openide.cookies.EditorCookie;
import org.openide.filesystems.FileObject;
import org.openide.filesystems.FileUtil;
@@ -57,7 +57,8 @@ public class EvaluationSpanTaskTest extends NbTestCase {
protected void setUp() throws Exception {
super.setUp();
SourceUtilsTestUtil.prepareTest(new String[] {"org/netbeans/modules/java/editor/resources/layer.xml"}, new Object[0]);
- TreeLoader.DISABLE_CONFINEMENT_TEST = true;
+ //XXX:
+// TreeLoader.DISABLE_CONFINEMENT_TEST = true;
}
public void testHintConditions() throws Exception {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints.test/src/org/netbeans/modules/java/hints/test/api/HintTest.java
----------------------------------------------------------------------
diff --git a/java.hints.test/src/org/netbeans/modules/java/hints/test/api/HintTest.java b/java.hints.test/src/org/netbeans/modules/java/hints/test/api/HintTest.java
index 6e285e0..b792027 100644
--- a/java.hints.test/src/org/netbeans/modules/java/hints/test/api/HintTest.java
+++ b/java.hints.test/src/org/netbeans/modules/java/hints/test/api/HintTest.java
@@ -99,7 +99,6 @@ import org.netbeans.modules.java.hints.spiimpl.hints.HintsInvoker;
import org.netbeans.modules.java.hints.spiimpl.options.HintsSettings;
import org.netbeans.modules.java.hints.test.Utilities.TestLookup;
import org.netbeans.modules.java.source.JavaSourceAccessor;
-import org.netbeans.modules.java.source.TreeLoader;
import org.netbeans.modules.parsing.api.indexing.IndexingManager;
import org.netbeans.modules.parsing.impl.indexing.CacheFolder;
import org.netbeans.modules.parsing.impl.indexing.MimeTypes;
@@ -224,7 +223,6 @@ public class HintTest {
MimeTypes.setAllMimeTypes(amt);
org.netbeans.api.project.ui.OpenProjects.getDefault().getOpenProjects();
- TreeLoader.DISABLE_CONFINEMENT_TEST = true;
testPreferences = new TempPreferences();
hintSettings = new HintsSettings() {
@Override public boolean isEnabled(HintMetadata hint) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints.ui/nbproject/project.properties
----------------------------------------------------------------------
diff --git a/java.hints.ui/nbproject/project.properties b/java.hints.ui/nbproject/project.properties
index 59289f0..84013ec 100644
--- a/java.hints.ui/nbproject/project.properties
+++ b/java.hints.ui/nbproject/project.properties
@@ -17,3 +17,4 @@
javac.source=1.7
javac.compilerargs=-Xlint -Xlint:-serial
spec.version.base=1.19.0
+requires.nb.javac=true
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/ArithmeticUtilities.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/ArithmeticUtilities.java b/java.hints/src/org/netbeans/modules/java/hints/ArithmeticUtilities.java
index ef797e9..a2b0eee 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/ArithmeticUtilities.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/ArithmeticUtilities.java
@@ -34,7 +34,7 @@ import com.sun.source.tree.TypeCastTree;
import com.sun.source.tree.UnaryTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.EnumSet;
import java.util.HashMap;
import java.util.Map;
@@ -194,7 +194,7 @@ public class ArithmeticUtilities {
}
- private static final class VisitorImpl extends TreePathScanner<Object, Void> {
+ private static final class VisitorImpl extends ErrorAwareTreePathScanner<Object, Void> {
// PENDING: instanceof String could be handled
private static final Set<Kind> ACCEPTED_KINDS = EnumSet.of(
MULTIPLY, DIVIDE, REMAINDER, PLUS, MINUS,
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/AssignmentIssues.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/AssignmentIssues.java b/java.hints/src/org/netbeans/modules/java/hints/AssignmentIssues.java
index f0ff80a..c666e92 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/AssignmentIssues.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/AssignmentIssues.java
@@ -26,7 +26,7 @@ import com.sun.source.tree.CompoundAssignmentTree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.UnaryTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import com.sun.source.util.Trees;
import java.util.ArrayList;
import java.util.LinkedList;
@@ -169,7 +169,7 @@ public class AssignmentIssues {
new ReplaceAssignmentFix(NbBundle.getMessage(AssignmentIssues.class, "FIX_ReplaceAssignmentWithOperatorAssignment", path.getLeaf()), TreePathHandle.create(path, context.getInfo())).toEditorFix()); //NOI18N
}
- private static final class AssignmentFinder extends TreePathScanner<Void, List<TreePath>> {
+ private static final class AssignmentFinder extends ErrorAwareTreePathScanner<Void, List<TreePath>> {
private final Trees trees;
private final Element param;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/ConvertAnonymousToInner.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/ConvertAnonymousToInner.java b/java.hints/src/org/netbeans/modules/java/hints/ConvertAnonymousToInner.java
index 6a49054..b3a60ba 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/ConvertAnonymousToInner.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/ConvertAnonymousToInner.java
@@ -33,7 +33,7 @@ import com.sun.source.tree.TypeParameterTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.SourcePositions;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collections;
@@ -233,7 +233,7 @@ public class ConvertAnonymousToInner extends AbstractHint {
}
}
- private static final class DetectUsedVars extends TreePathScanner<Void, Set<VariableElement>> {
+ private static final class DetectUsedVars extends ErrorAwareTreePathScanner<Void, Set<VariableElement>> {
private CompilationInfo info;
private TreePath newClassToConvert;
@@ -258,7 +258,7 @@ public class ConvertAnonymousToInner extends AbstractHint {
}
- private static final class DetectUseOfNonStaticMembers extends TreePathScanner<Boolean, Void> {
+ private static final class DetectUseOfNonStaticMembers extends ErrorAwareTreePathScanner<Boolean, Void> {
private CompilationInfo info;
private TreePath newClassToConvert;
@@ -546,7 +546,7 @@ public class ConvertAnonymousToInner extends AbstractHint {
}
private static TreePath findSuperConstructorCall(final CompilationInfo info, TreePath nct) {
- class FindSuperConstructorCall extends TreePathScanner<TreePath, Void> {
+ class FindSuperConstructorCall extends ErrorAwareTreePathScanner<TreePath, Void> {
private boolean stop;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/DoubleCheck.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/DoubleCheck.java b/java.hints/src/org/netbeans/modules/java/hints/DoubleCheck.java
index b1027ac..27a60b0 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/DoubleCheck.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/DoubleCheck.java
@@ -34,7 +34,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Collections;
import java.util.Iterator;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -393,7 +393,7 @@ public class DoubleCheck {
}
}
- private static final class VariableAccessWalker extends TreePathScanner {
+ private static final class VariableAccessWalker extends ErrorAwareTreePathScanner {
private final VariableElement originalVariable;
private final ExpressionTree fieldAccessTree;
/**
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/EqualsMethodHint.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/EqualsMethodHint.java b/java.hints/src/org/netbeans/modules/java/hints/EqualsMethodHint.java
index cea42d6..b5a3e45 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/EqualsMethodHint.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/EqualsMethodHint.java
@@ -25,7 +25,7 @@ import com.sun.source.tree.MemberSelectTree;
import com.sun.source.tree.MethodInvocationTree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import javax.lang.model.element.Element;
import javax.lang.model.element.ElementKind;
import org.netbeans.api.java.source.CompilationInfo;
@@ -69,7 +69,7 @@ public class EqualsMethodHint {
NbBundle.getMessage(EqualsMethodHint.class, "ERR_EQUALS_NOT_CHECKING_TYPE"));
}
- private static final class VisitorImpl extends TreePathScanner<Void, Void> {
+ private static final class VisitorImpl extends ErrorAwareTreePathScanner<Void, Void> {
private CompilationInfo info;
private Element parameter;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/OrganizeImports.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/OrganizeImports.java b/java.hints/src/org/netbeans/modules/java/hints/OrganizeImports.java
index 4ce6ad9..a577005 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/OrganizeImports.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/OrganizeImports.java
@@ -46,7 +46,7 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.SourcePositions;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import com.sun.source.util.Trees;
import com.sun.tools.javac.code.Scope;
import com.sun.tools.javac.code.Symbol;
@@ -232,7 +232,7 @@ public class OrganizeImports {
final Set<Element> ret = new HashSet<Element>();
final Trees trees = info.getTrees();
final Types types = info.getTypes();
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override
public Void visitIdentifier(IdentifierTree node, Void p) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/WrongPackageSuggestion.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/WrongPackageSuggestion.java b/java.hints/src/org/netbeans/modules/java/hints/WrongPackageSuggestion.java
index d241aba..40f5139 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/WrongPackageSuggestion.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/WrongPackageSuggestion.java
@@ -25,7 +25,7 @@ import com.sun.source.tree.MemberSelectTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.io.File;
import java.io.IOException;
import java.util.Arrays;
@@ -93,7 +93,7 @@ public class WrongPackageSuggestion extends AbstractHint {
boolean hasPackageClause = tree.getPackageName() != null;
if (hasPackageClause) {
- new TreeScanner<Void, StringBuffer>() {
+ new ErrorAwareTreeScanner<Void, StringBuffer>() {
@Override
public Void visitIdentifier(IdentifierTree node, StringBuffer p) {
p.append(node.getName().toString());
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/AssertWithSideEffects.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/AssertWithSideEffects.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/AssertWithSideEffects.java
index 56dfd1f..99e6d44 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/AssertWithSideEffects.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/AssertWithSideEffects.java
@@ -29,7 +29,7 @@ import com.sun.source.tree.NewClassTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.UnaryTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Deque;
import java.util.LinkedList;
import javax.lang.model.element.Element;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/CloneAndCloneable.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/CloneAndCloneable.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/CloneAndCloneable.java
index 5e8d3bd..3475195 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/CloneAndCloneable.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/CloneAndCloneable.java
@@ -26,7 +26,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.TypeParameterTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Collections;
import javax.lang.model.element.Element;
import javax.lang.model.element.ExecutableElement;
@@ -93,7 +93,7 @@ public class CloneAndCloneable {
* Finder provides true, if it finds a call to 'superClone' method element passed
* in the constructor.
*/
- private static final class SuperCloneFinder extends TreePathScanner<Boolean, Void> {
+ private static final class SuperCloneFinder extends ErrorAwareTreePathScanner<Boolean, Void> {
private final CompilationInfo info;
private final ExecutableElement superClone;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/ComparatorParameterNotUsed.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/ComparatorParameterNotUsed.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/ComparatorParameterNotUsed.java
index 1352b21..082b73c 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/ComparatorParameterNotUsed.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/ComparatorParameterNotUsed.java
@@ -23,7 +23,7 @@ import com.sun.source.tree.MethodTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.text.Collator;
import java.util.ArrayList;
import java.util.Collections;
@@ -58,7 +58,7 @@ import static org.netbeans.modules.java.hints.bugs.Bundle.*;
"# {0} - parameter name",
"TEXT_ComparatorParameterNotUsed=Comparator.comparable does not use parameter ''{0}''"
})
-public class ComparatorParameterNotUsed extends TreePathScanner {
+public class ComparatorParameterNotUsed extends ErrorAwareTreePathScanner {
private final CompilationInfo ci;
private final Set<VariableElement> unusedVars;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/InfiniteRecursion.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/InfiniteRecursion.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/InfiniteRecursion.java
index 399d3d0..0365e93 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/InfiniteRecursion.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/InfiniteRecursion.java
@@ -41,7 +41,7 @@ import com.sun.source.tree.SwitchTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.WhileLoopTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Collections;
import java.util.Deque;
import java.util.EnumSet;
@@ -224,7 +224,7 @@ public class InfiniteRecursion {
* only in the speculative for loop evaluation, otherwise for/while bodies incl any continue statements do not count.
*
*/
- private static class RecursionVisitor extends TreePathScanner<State, Void> {
+ private static class RecursionVisitor extends ErrorAwareTreePathScanner<State, Void> {
private final CompilationInfo ci;
private final ExecutableElement checkMethod;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/Regexp.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/Regexp.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/Regexp.java
index 5be0b91..87d35bb 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/Regexp.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/Regexp.java
@@ -26,7 +26,7 @@ import com.sun.source.tree.MemberSelectTree;
import com.sun.source.tree.MethodInvocationTree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.regex.Pattern;
import java.util.regex.PatternSyntaxException;
import javax.lang.model.element.Element;
@@ -97,7 +97,7 @@ public class Regexp {
final StringBuilder regexp = new StringBuilder();
final boolean[] accept = {true};
TreePath pattern = ctx.getVariables().get("$pattern");
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override
public Void visitLiteral(LiteralTree node, Void p) {
if (node.getValue() instanceof String) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/Tiny.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/Tiny.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/Tiny.java
index 6cc965a..ca9d9f1 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/Tiny.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/Tiny.java
@@ -37,8 +37,8 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.WhileLoopTree;
import com.sun.source.util.SourcePositions;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -342,7 +342,7 @@ public class Tiny {
final LabeledStatementTree lt = (LabeledStatementTree)lPath.getLeaf();
final Name l = lt.getLabel();
final CompilationInfo info = ctx.getInfo();
- Boolean b = new TreePathScanner<Boolean, Void>() {
+ Boolean b = new ErrorAwareTreePathScanner<Boolean, Void>() {
@Override
public Boolean reduce(Boolean r1, Boolean r2) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/bugs/TryCatchFinally.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/bugs/TryCatchFinally.java b/java.hints/src/org/netbeans/modules/java/hints/bugs/TryCatchFinally.java
index 5aac965..010b799 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/bugs/TryCatchFinally.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/bugs/TryCatchFinally.java
@@ -28,7 +28,7 @@ import com.sun.source.tree.ThrowTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.TryTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Collection;
@@ -226,7 +226,7 @@ public class TryCatchFinally {
return errs;
}
- private static final class ExitsFromBranches extends TreePathScanner<Void, Collection<TreePath>> {
+ private static final class ExitsFromBranches extends ErrorAwareTreePathScanner<Void, Collection<TreePath>> {
private final boolean analyzeThrows;
private final CompilationInfo info;
private final Set<Tree> seenTrees = new HashSet<Tree>();
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/control/RemoveUnnecessary.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/control/RemoveUnnecessary.java b/java.hints/src/org/netbeans/modules/java/hints/control/RemoveUnnecessary.java
index e7658ed..b5626a4 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/control/RemoveUnnecessary.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/control/RemoveUnnecessary.java
@@ -44,7 +44,7 @@ import com.sun.source.tree.TryTree;
import com.sun.source.tree.TypeCastTree;
import com.sun.source.tree.UnaryTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayList;
import java.util.EnumSet;
import java.util.List;
@@ -260,7 +260,7 @@ public class RemoveUnnecessary {
* Transforms expression tree into series of statements.
*
*/
- static class ExpressionToStatement extends TreePathScanner {
+ static class ExpressionToStatement extends ErrorAwareTreePathScanner {
private boolean remove = true;
private List<StatementTree> statements = new ArrayList<>();
private final TreeMaker mk;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/errors/AddParameterOrLocalFix.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/errors/AddParameterOrLocalFix.java b/java.hints/src/org/netbeans/modules/java/hints/errors/AddParameterOrLocalFix.java
index 995e61c..c92b3b0 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/errors/AddParameterOrLocalFix.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/errors/AddParameterOrLocalFix.java
@@ -30,7 +30,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.io.IOException;
import java.util.Arrays;
import java.util.EnumSet;
@@ -264,7 +264,7 @@ public class AddParameterOrLocalFix implements EnhancedFix {
return;
}
- class FirstUsage extends TreePathScanner<TreePath, Void> {
+ class FirstUsage extends ErrorAwareTreePathScanner<TreePath, Void> {
public @Override TreePath visitIdentifier(IdentifierTree tree, Void v) {
if (tree.getName().contentEquals(el.getSimpleName()) && isError(wc, wc.getTrees().getElement(getCurrentPath()))) {
return findStatement(getCurrentPath());
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/errors/ImplementAllAbstractMethods.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/errors/ImplementAllAbstractMethods.java b/java.hints/src/org/netbeans/modules/java/hints/errors/ImplementAllAbstractMethods.java
index ba538f9..778331d 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/errors/ImplementAllAbstractMethods.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/errors/ImplementAllAbstractMethods.java
@@ -29,7 +29,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
@@ -198,7 +198,7 @@ public final class ImplementAllAbstractMethods implements ErrorRule<Object>, Ove
//(missing '()' for constructor)
//do not propose the hint in this case:
final boolean[] parentError = new boolean[] {false};
- new TreePathScanner() {
+ new ErrorAwareTreePathScanner() {
@Override
public Object visitNewClass(NewClassTree nct, Object o) {
if (leaf == nct) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/errors/MagicSurroundWithTryCatchFix.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/errors/MagicSurroundWithTryCatchFix.java b/java.hints/src/org/netbeans/modules/java/hints/errors/MagicSurroundWithTryCatchFix.java
index c21f6f6..69b0ff7 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/errors/MagicSurroundWithTryCatchFix.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/errors/MagicSurroundWithTryCatchFix.java
@@ -34,7 +34,7 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.TryTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import com.sun.source.util.Trees;
import java.io.IOException;
import java.util.ArrayList;
@@ -187,7 +187,7 @@ final class MagicSurroundWithTryCatchFix implements Fix {
return null;
}
- private final class TransformerImpl extends TreePathScanner<Void, Void> {
+ private final class TransformerImpl extends ErrorAwareTreePathScanner<Void, Void> {
private WorkingCopy info;
private List<TypeMirrorHandle> thandles;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/errors/MissingReturnStatement.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/errors/MissingReturnStatement.java b/java.hints/src/org/netbeans/modules/java/hints/errors/MissingReturnStatement.java
index a1a6a41..27e8bda 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/errors/MissingReturnStatement.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/errors/MissingReturnStatement.java
@@ -27,7 +27,7 @@ import com.sun.source.tree.ReturnTree;
import com.sun.source.tree.StatementTree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import com.sun.tools.javac.tree.JCTree;
import java.util.ArrayList;
import java.util.Arrays;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/errors/OrigSurroundWithTryCatchFix.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/errors/OrigSurroundWithTryCatchFix.java b/java.hints/src/org/netbeans/modules/java/hints/errors/OrigSurroundWithTryCatchFix.java
index 337d5f0..ccf8998 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/errors/OrigSurroundWithTryCatchFix.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/errors/OrigSurroundWithTryCatchFix.java
@@ -29,7 +29,7 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.TryTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Arrays;
import java.util.Collections;
import java.util.LinkedList;
@@ -171,7 +171,7 @@ class OrigSurroundWithTryCatchFix implements Fix {
return path;
}
- private static final class FindUsages extends TreePathScanner<Boolean, VariableElement> {
+ private static final class FindUsages extends ErrorAwareTreePathScanner<Boolean, VariableElement> {
private Tree ignore;
private CompilationInfo info;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/errors/Utilities.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/errors/Utilities.java b/java.hints/src/org/netbeans/modules/java/hints/errors/Utilities.java
index df1babc..a634619 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/errors/Utilities.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/errors/Utilities.java
@@ -55,7 +55,7 @@ import com.sun.source.tree.ContinueTree;
import com.sun.source.tree.IfTree;
import com.sun.source.tree.ReturnTree;
import com.sun.source.tree.TryTree;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import org.netbeans.api.java.source.TreeUtilities;
import org.openide.filesystems.FileUtil;
import org.openide.util.NbBundle;
@@ -97,7 +97,7 @@ import com.sun.source.tree.VariableTree;
import com.sun.source.tree.WhileLoopTree;
import com.sun.source.util.SourcePositions;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Collection;
@@ -865,7 +865,7 @@ public class Utilities {
@NbBundle.Messages({
"DisplayName_Unknown=<missing>"
})
- private static class HintDisplayNameVisitor extends TreeScanner<String, Void> {
+ private static class HintDisplayNameVisitor extends ErrorAwareTreeScanner<String, Void> {
private CompilationInfo info;
@@ -1258,7 +1258,7 @@ public class Utilities {
* {@link #seenTrees} before processing, so if a break/continue targets such a node, such jump is not considered an exit.
* Jumps can register the target Tree in {@link #targetTrees} which causes false to be returned from that tree's inspection.
*/
- private static final class ExitsFromAllBranches extends TreePathScanner<Boolean, Void> {
+ private static final class ExitsFromAllBranches extends ErrorAwareTreePathScanner<Boolean, Void> {
private CompilationInfo info;
private final Set<Tree> seenTrees = new HashSet<Tree>();
@@ -1876,10 +1876,10 @@ public class Utilities {
}
}
};
- ArgumentAttr argumentAttr = ArgumentAttr.instance(jti.getContext());
- ArgumentAttr.LocalCacheContext cacheContext = argumentAttr.withLocalCacheContext();
+// ArgumentAttr argumentAttr = ArgumentAttr.instance(jti.getContext());
+// ArgumentAttr.LocalCacheContext cacheContext = argumentAttr.withLocalCacheContext();
try {
- enter.shadowTypeEnvs(true);
+// enter.shadowTypeEnvs(true);
Attr attr = Attr.instance(jti.getContext());
Env<AttrContext> env = ((JavacScope) scope).getEnv();
if (tree instanceof JCTree.JCExpression) {
@@ -1887,10 +1887,10 @@ public class Utilities {
}
return attr.attribStat((JCTree) tree,env);
} finally {
- cacheContext.leave();
+// cacheContext.leave();
log.useSource(prev);
log.popDiagnosticHandler(discardHandler);
- enter.shadowTypeEnvs(false);
+// enter.shadowTypeEnvs(false);
}
}
// -------------------------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/finalize/FinalizeDoesNotCallSuper.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/finalize/FinalizeDoesNotCallSuper.java b/java.hints/src/org/netbeans/modules/java/hints/finalize/FinalizeDoesNotCallSuper.java
index 6dd6d26..0bdad2d 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/finalize/FinalizeDoesNotCallSuper.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/finalize/FinalizeDoesNotCallSuper.java
@@ -32,7 +32,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.TryTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
@@ -77,7 +77,7 @@ public class FinalizeDoesNotCallSuper {
new FixImpl(TreePathHandle.create(ctx.getPath(), ctx.getInfo())).toEditorFix());
}
- static final class FindSuper extends TreeScanner<Void, Void> {
+ static final class FindSuper extends ErrorAwareTreeScanner<Void, Void> {
boolean found;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/introduce/Flow.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/introduce/Flow.java b/java.hints/src/org/netbeans/modules/java/hints/introduce/Flow.java
index 348508c..99681c6 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/introduce/Flow.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/introduce/Flow.java
@@ -73,7 +73,7 @@ import com.sun.source.tree.VariableTree;
import com.sun.source.tree.WhileLoopTree;
import com.sun.source.tree.WildcardTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
@@ -243,7 +243,7 @@ public class Flow {
}
- private static class PathFinder extends TreePathScanner {
+ private static class PathFinder extends ErrorAwareTreePathScanner {
final Map<Tree, TreePath> node2Path;
final Set<Tree> interestingNodes;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/introduce/InstanceRefFinder.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/introduce/InstanceRefFinder.java b/java.hints/src/org/netbeans/modules/java/hints/introduce/InstanceRefFinder.java
index 3232480..36cece3 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/introduce/InstanceRefFinder.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/introduce/InstanceRefFinder.java
@@ -25,7 +25,7 @@ import com.sun.source.tree.MemberSelectTree;
import com.sun.source.tree.NewClassTree;
import com.sun.source.tree.Tree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
@@ -47,7 +47,7 @@ import org.netbeans.api.java.source.CompilationInfo;
*
* @author sdedic
*/
-public class InstanceRefFinder extends TreePathScanner {
+public class InstanceRefFinder extends ErrorAwareTreePathScanner {
/**
* The initial path for analysis
*/
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/introduce/IntroduceHint.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/introduce/IntroduceHint.java b/java.hints/src/org/netbeans/modules/java/hints/introduce/IntroduceHint.java
index ce66a79..6beaef7 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/introduce/IntroduceHint.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/introduce/IntroduceHint.java
@@ -35,8 +35,8 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.TypeParameterTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.awt.Color;
import java.awt.Rectangle;
import java.util.ArrayList;
@@ -441,7 +441,7 @@ public class IntroduceHint implements CancellableTask<CompilationInfo> {
}
}
- class ReferencesLocalVariable extends TreePathScanner<Void, Void> {
+ class ReferencesLocalVariable extends ErrorAwareTreePathScanner<Void, Void> {
@Override
public Void visitIdentifier(IdentifierTree node, Void p) {
Element e = info.getTrees().getElement(getCurrentPath());
@@ -550,7 +550,7 @@ public class IntroduceHint implements CancellableTask<CompilationInfo> {
return formalArguments;
}
- static class VariableRenamer extends TreePathScanner {
+ static class VariableRenamer extends ErrorAwareTreePathScanner {
private final Map<VariableElement, CharSequence> renamedVars;
private final Set<Name> changedNames;
private final WorkingCopy info;
@@ -750,7 +750,7 @@ public class IntroduceHint implements CancellableTask<CompilationInfo> {
static ClassTree insertField(final WorkingCopy parameter, ClassTree clazz, VariableTree fieldToAdd, Set<Tree> allNewUses, int offset) {
ClassTree nueClass = INSERT_CLASS_MEMBER.insertClassMember(parameter, clazz, fieldToAdd, offset);
- class Contains extends TreeScanner<Boolean, Set<Tree>> {
+ class Contains extends ErrorAwareTreeScanner<Boolean, Set<Tree>> {
@Override public Boolean reduce(Boolean r1, Boolean r2) {
return r1 == Boolean.TRUE || r2 == Boolean.TRUE;
}
@@ -809,7 +809,7 @@ public class IntroduceHint implements CancellableTask<CompilationInfo> {
final Set<Element> used = Collections.newSetFromMap(new IdentityHashMap<Element, Boolean>());
final boolean statik = fieldToAdd.getModifiers().getFlags().contains(Modifier.STATIC);
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override public Void visitIdentifier(IdentifierTree node, Void p) {
handleCurrentPath();
return super.visitIdentifier(node, p); //To change body of generated methods, choose Tools | Templates.
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/introduce/ReferenceTransformer.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/introduce/ReferenceTransformer.java b/java.hints/src/org/netbeans/modules/java/hints/introduce/ReferenceTransformer.java
index 95d4e48..afd6cca 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/introduce/ReferenceTransformer.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/introduce/ReferenceTransformer.java
@@ -22,7 +22,7 @@ import com.sun.source.tree.IdentifierTree;
import com.sun.source.tree.MemberSelectTree;
import com.sun.source.tree.Tree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import javax.lang.model.element.Element;
import javax.lang.model.element.ElementKind;
import javax.lang.model.element.Modifier;
@@ -35,7 +35,7 @@ import org.netbeans.api.java.source.WorkingCopy;
*
* @author sdedic
*/
-final class ReferenceTransformer extends TreePathScanner {
+final class ReferenceTransformer extends ErrorAwareTreePathScanner {
private final ElementKind kind;
private final String name;
private final WorkingCopy copy;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/introduce/ScanStatement.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/introduce/ScanStatement.java b/java.hints/src/org/netbeans/modules/java/hints/introduce/ScanStatement.java
index 74929cf..b2bbfbe 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/introduce/ScanStatement.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/introduce/ScanStatement.java
@@ -32,7 +32,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.tree.WhileLoopTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayList;
import java.util.Collection;
import java.util.HashSet;
@@ -53,7 +53,7 @@ import org.netbeans.api.java.source.TreePathHandle;
*
* @author sdedic
*/
-final class ScanStatement extends TreePathScanner<Void, Void> {
+final class ScanStatement extends ErrorAwareTreePathScanner<Void, Void> {
private static final int PHASE_BEFORE_SELECTION = 1;
private static final int PHASE_INSIDE_SELECTION = 2;
private static final int PHASE_AFTER_SELECTION = 3;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToARM.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToARM.java b/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToARM.java
index 4832b96..b0ddf35 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToARM.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToARM.java
@@ -32,8 +32,8 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.TryTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import com.sun.source.util.Trees;
import java.util.ArrayList;
import java.util.Collection;
@@ -841,7 +841,7 @@ public class ConvertToARM {
}
}
final Set<VariableTree> result = new HashSet<VariableTree>();
- final TreeScanner<Void,Void> scanner = new TreeScanner<Void,Void>(){
+ final ErrorAwareTreeScanner<Void,Void> scanner = new ErrorAwareTreeScanner<Void,Void>(){
@Override
public Void visitIdentifier(IdentifierTree node, Void p) {
final Element elm = trees.getElement(trees.getPath(cu, node));
@@ -863,7 +863,7 @@ public class ConvertToARM {
final Trees trees) {
final List<TreePath> usages = new LinkedList<>();
if (statements != null) {
- final TreePathScanner<List<TreePath>,List<TreePath>> scanner = new TreePathScanner<List<TreePath>, List<TreePath>>() {
+ final ErrorAwareTreePathScanner<List<TreePath>,List<TreePath>> scanner = new ErrorAwareTreePathScanner<List<TreePath>, List<TreePath>>() {
@Override
public List<TreePath> visitIdentifier(IdentifierTree node, List<TreePath> p) {
final TreePath path = getCurrentPath();
@@ -910,7 +910,7 @@ public class ConvertToARM {
final Element what,
final Iterable<? extends TreePath> where,
final Trees trees) {
- TreePathScanner<Boolean, Void> scanner = new TreePathScanner<Boolean, Void>() {
+ ErrorAwareTreePathScanner<Boolean, Void> scanner = new ErrorAwareTreePathScanner<Boolean, Void>() {
@Override public Boolean visitAssignment(AssignmentTree node, Void p) {
if (trees.getElement(new TreePath(getCurrentPath(), node.getVariable())) == what) {
return true;
@@ -955,7 +955,7 @@ public class ConvertToARM {
usedAfterCloseVarNames.add(vt.getName().toString());
}
- TreeScanner<Boolean, Void> scanner = new TreeScanner<Boolean, Void>() {
+ ErrorAwareTreeScanner<Boolean, Void> scanner = new ErrorAwareTreeScanner<Boolean, Void>() {
@Override public Boolean visitVariable(VariableTree node, Void p) {
if (usedAfterCloseVarNames.contains(node.getName().toString()) && !usedAfterCloseVarDecls.contains(node)) {
return true;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaConverter.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaConverter.java b/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaConverter.java
index 9e15fe5..e5d6661 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaConverter.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaConverter.java
@@ -32,7 +32,7 @@ import com.sun.source.tree.Scope;
import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import com.sun.source.util.Trees;
import java.util.Collection;
import java.util.Collections;
@@ -223,7 +223,7 @@ public class ConvertToLambdaConverter {
return make.TypeCast(expectedType, tree);
}
- private class ShadowedVariableRenameScanner extends TreePathScanner<Tree, Trees> {
+ private class ShadowedVariableRenameScanner extends ErrorAwareTreePathScanner<Tree, Trees> {
private final Map<Element, CharSequence> originalToNewName = new HashMap<Element, CharSequence>();
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaPreconditionChecker.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaPreconditionChecker.java b/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaPreconditionChecker.java
index 56930ea..1731bd8 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaPreconditionChecker.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/jdk/ConvertToLambdaPreconditionChecker.java
@@ -34,7 +34,7 @@ import com.sun.source.tree.Scope;
import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import com.sun.source.util.Trees;
import java.util.ArrayList;
import java.util.EnumSet;
@@ -235,7 +235,7 @@ public class ConvertToLambdaPreconditionChecker {
foundOverloadWhichMakesLambdaAmbiguous = doesOverloadMakeLambdaAmbiguous();
}
- private class PreconditionScanner extends TreePathScanner<Tree, Trees> {
+ private class PreconditionScanner extends ErrorAwareTreePathScanner<Tree, Trees> {
@Override
public Tree visitClass(ClassTree node, Trees p) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/jdk/IteratorToFor.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/jdk/IteratorToFor.java b/java.hints/src/org/netbeans/modules/java/hints/jdk/IteratorToFor.java
index 2b9c99f..6b57474 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/jdk/IteratorToFor.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/jdk/IteratorToFor.java
@@ -35,7 +35,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayList;
import java.util.Collection;
import java.util.EnumSet;
@@ -269,7 +269,7 @@ public class IteratorToFor {
return false;
}
for (TreePath tp : statements) {
- boolean occurs = Boolean.TRUE.equals(new TreePathScanner<Boolean, Void>() {
+ boolean occurs = Boolean.TRUE.equals(new ErrorAwareTreePathScanner<Boolean, Void>() {
@Override public Boolean scan(Tree tree, Void p) {
if (tree == null) {
return false;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/jdk/UseSpecificCatch.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/jdk/UseSpecificCatch.java b/java.hints/src/org/netbeans/modules/java/hints/jdk/UseSpecificCatch.java
index 0fd6c0f..b36959e 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/jdk/UseSpecificCatch.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/jdk/UseSpecificCatch.java
@@ -25,7 +25,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.TryTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayDeque;
import java.util.ArrayList;
import java.util.Arrays;
@@ -262,7 +262,7 @@ public class UseSpecificCatch implements CustomizerProvider {
final boolean[] result = new boolean[1];
for (TreePath tp : statements) {
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override
public Void visitAssignment(AssignmentTree node, Void p) {
if (tEl.equals(ctx.getInfo().getTrees().getElement(new TreePath(getCurrentPath(), node.getVariable())))) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/jdk/mapreduce/PreconditionsChecker.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/jdk/mapreduce/PreconditionsChecker.java b/java.hints/src/org/netbeans/modules/java/hints/jdk/mapreduce/PreconditionsChecker.java
index a4c29e1..579fcf2 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/jdk/mapreduce/PreconditionsChecker.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/jdk/mapreduce/PreconditionsChecker.java
@@ -34,8 +34,8 @@ import com.sun.source.tree.StatementTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import com.sun.source.util.Trees;
import java.util.HashMap;
import java.util.HashSet;
@@ -189,7 +189,7 @@ public class PreconditionsChecker {
return false;
}
- public static class VariablesVisitor extends TreeScanner<Tree, Trees> {
+ public static class VariablesVisitor extends ErrorAwareTreeScanner<Tree, Trees> {
private Set<Name> innerVariables = new HashSet<Name>();
private Set<Name> allLocalVariables = new HashSet<Name>();
@@ -234,7 +234,7 @@ public class PreconditionsChecker {
/*
* This class visits the loop to check if there are any failed preconditions.
*/
- private static class ForLoopTreeVisitor extends TreePathScanner<Tree, Trees> {
+ private static class ForLoopTreeVisitor extends ErrorAwareTreePathScanner<Tree, Trees> {
private Set<Name> inners;
private CompilationInfo workingCopy;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/perf/ManualArrayCopy.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/perf/ManualArrayCopy.java b/java.hints/src/org/netbeans/modules/java/hints/perf/ManualArrayCopy.java
index 0bf749e..2b3a4b3 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/perf/ManualArrayCopy.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/perf/ManualArrayCopy.java
@@ -21,7 +21,7 @@ package org.netbeans.modules.java.hints.perf;
import com.sun.source.tree.IdentifierTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
@@ -79,7 +79,7 @@ public class ManualArrayCopy {
if (i != null) {
final boolean[] used = new boolean[1];
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override public Void visitIdentifier(IdentifierTree node, Void p) {
Element use = ctx.getInfo().getTrees().getElement(getCurrentPath());
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/perf/ReplaceBufferByString.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/perf/ReplaceBufferByString.java b/java.hints/src/org/netbeans/modules/java/hints/perf/ReplaceBufferByString.java
index 564ff4c..bb00c2d 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/perf/ReplaceBufferByString.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/perf/ReplaceBufferByString.java
@@ -33,7 +33,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.UnaryTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
@@ -119,7 +119,7 @@ public class ReplaceBufferByString {
/**
* The scanner determines, if the expression is just a series of new SB().append().append()...
*/
- private static class NewAppendScanner extends TreePathScanner<Boolean, Void> {
+ private static class NewAppendScanner extends ErrorAwareTreePathScanner<Boolean, Void> {
private final CompilationInfo ci;
private boolean hasContents;
@@ -386,7 +386,7 @@ public class ReplaceBufferByString {
* Translates rest of references in the method so that .toString() is stripped, as the variable is going
* to change type to String.
*/
- private static class ToStringTranslator extends TreePathScanner {
+ private static class ToStringTranslator extends ErrorAwareTreePathScanner {
private final WorkingCopy wc;
private final Element varElement;
private final GeneratorUtilities gu;
@@ -442,7 +442,7 @@ public class ReplaceBufferByString {
* its value must NOT be assigned to another variable, field, passed to another method call or returned from the method.
* Only String-compatible methods may be called on the variable.
*/
- private static class StringBufferUsageScanner extends TreePathScanner<Boolean, Void> {
+ private static class StringBufferUsageScanner extends ErrorAwareTreePathScanner<Boolean, Void> {
private final CompilationInfo ci;
private final VariableElement var;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/perf/StringBuffer2Builder.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/perf/StringBuffer2Builder.java b/java.hints/src/org/netbeans/modules/java/hints/perf/StringBuffer2Builder.java
index e588545..bc7b8a2 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/perf/StringBuffer2Builder.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/perf/StringBuffer2Builder.java
@@ -23,7 +23,7 @@ import com.sun.source.tree.IdentifierTree;
import com.sun.source.tree.MethodInvocationTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import javax.lang.model.SourceVersion;
import javax.lang.model.element.Element;
import javax.lang.model.element.ElementKind;
@@ -53,7 +53,7 @@ public class StringBuffer2Builder {
return null;
}
- class EscapeFinder extends TreePathScanner<Boolean, Boolean> {
+ class EscapeFinder extends ErrorAwareTreePathScanner<Boolean, Boolean> {
@Override
public Boolean reduce(Boolean r1, Boolean r2) {
return r1 == Boolean.TRUE || r2 == Boolean.TRUE;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/suggestions/ExpectedTypeResolver.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/suggestions/ExpectedTypeResolver.java b/java.hints/src/org/netbeans/modules/java/hints/suggestions/ExpectedTypeResolver.java
index 9642652..92faa9c 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/suggestions/ExpectedTypeResolver.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/suggestions/ExpectedTypeResolver.java
@@ -122,7 +122,7 @@ import org.netbeans.modules.java.hints.errors.Utilities;
* it is not possible to determine a type which the expression must be <i>assignable to</i>. But it is known that the
* expression must be <i>castable</i> to the typecast's target type so that compiler error does not occur.
* <p/>
- * As the class iterates "upwards", it was derived from TreeVisitor rather than from TreeScanner to prevent accidental
+ * As the class iterates "upwards", it was derived from TreeVisitor rather than from ErrorAwareTreeScanner to prevent accidental
* StackOverflows if execution accidentally fall to the default implementation with top-down traversal.
*
* @author sdedic
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/suggestions/IfToSwitchSupport.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/suggestions/IfToSwitchSupport.java b/java.hints/src/org/netbeans/modules/java/hints/suggestions/IfToSwitchSupport.java
index b928ecb..1e9ae94 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/suggestions/IfToSwitchSupport.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/suggestions/IfToSwitchSupport.java
@@ -32,8 +32,8 @@ import com.sun.source.tree.SwitchTree;
import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.HashSet;
@@ -585,7 +585,7 @@ public class IfToSwitchSupport {
TreePath topLevelMethod = Utilities.findTopLevelBlock(it);
final Set<String> seenLabels = new HashSet<String>();
- new TreeScanner<Void, Void>() {
+ new ErrorAwareTreeScanner<Void, Void>() {
@Override public Void visitLabeledStatement(LabeledStatementTree node, Void p) {
seenLabels.add(node.getLabel().toString());
return super.visitLabeledStatement(node, p);
@@ -764,7 +764,7 @@ public class IfToSwitchSupport {
above.add(t);
}
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override public Void visitIdentifier(IdentifierTree node, Void p) {
if (declared.contains(info.getTrees().getElement(getCurrentPath())))
return null;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/suggestions/Lambda.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/suggestions/Lambda.java b/java.hints/src/org/netbeans/modules/java/hints/suggestions/Lambda.java
index d24c7d7..70f84c0 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/suggestions/Lambda.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/suggestions/Lambda.java
@@ -42,8 +42,8 @@ import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.TypeParameterTree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.EnumSet;
@@ -438,7 +438,7 @@ public class Lambda {
}
types.put(samTypeElement.getSimpleName(), samTypeElement);
- new TreePathScanner<Void, Boolean>() {
+ new ErrorAwareTreePathScanner<Void, Boolean>() {
@Override public Void visitIdentifier(final IdentifierTree node, Boolean p) {
boolean rewrite = false;
boolean statRef = false;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/suggestions/Tiny.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/suggestions/Tiny.java b/java.hints/src/org/netbeans/modules/java/hints/suggestions/Tiny.java
index eb3d87b..8757ab5 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/suggestions/Tiny.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/suggestions/Tiny.java
@@ -35,7 +35,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.SourcePositions;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayList;
import java.util.Collections;
import java.util.LinkedList;
@@ -374,7 +374,7 @@ public class Tiny {
Scope s = ctx.getWorkingCopy().getTrees().getScope(tp);
ctx.getWorkingCopy().getTreeUtilities().attributeTree(stmt, s);
st = GeneratorUtilities.get(ctx.getWorkingCopy()).importFQNs(make.addSwitchCase(st, make.Case(null, Collections.singletonList(stmt))));
- new TreePathScanner<Void, Void>() {
+ new ErrorAwareTreePathScanner<Void, Void>() {
@Override public Void visitIdentifier(IdentifierTree node, Void p) {
if (node.getName().contentEquals("$expression")) {
ExpressionTree expression = ((SwitchTree) tp.getLeaf()).getExpression();
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/src/org/netbeans/modules/java/hints/threading/Tiny.java
----------------------------------------------------------------------
diff --git a/java.hints/src/org/netbeans/modules/java/hints/threading/Tiny.java b/java.hints/src/org/netbeans/modules/java/hints/threading/Tiny.java
index 9d494e5..1aef771 100644
--- a/java.hints/src/org/netbeans/modules/java/hints/threading/Tiny.java
+++ b/java.hints/src/org/netbeans/modules/java/hints/threading/Tiny.java
@@ -32,7 +32,7 @@ import com.sun.source.tree.Tree;
import com.sun.source.tree.Tree.Kind;
import com.sun.source.tree.VariableTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreeScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreeScanner;
import java.util.EnumSet;
import java.util.List;
import java.util.Set;
@@ -195,7 +195,7 @@ public class Tiny {
if (!report) {
try {
- new TreeScanner<Void, Void>() {
+ new ErrorAwareTreeScanner<Void, Void>() {
@Override
public Void visitClass(ClassTree node, Void p) {
return null;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/test/unit/src/org/netbeans/modules/java/hints/ConvertAnonymousToInnerTest.java
----------------------------------------------------------------------
diff --git a/java.hints/test/unit/src/org/netbeans/modules/java/hints/ConvertAnonymousToInnerTest.java b/java.hints/test/unit/src/org/netbeans/modules/java/hints/ConvertAnonymousToInnerTest.java
index d921317..5e57a88 100644
--- a/java.hints/test/unit/src/org/netbeans/modules/java/hints/ConvertAnonymousToInnerTest.java
+++ b/java.hints/test/unit/src/org/netbeans/modules/java/hints/ConvertAnonymousToInnerTest.java
@@ -20,7 +20,7 @@ package org.netbeans.modules.java.hints;
import com.sun.source.tree.NewClassTree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.io.IOException;
import java.util.regex.Pattern;
import org.netbeans.api.java.source.JavaSource;
@@ -50,7 +50,7 @@ public class ConvertAnonymousToInnerTest extends NbTestCase {
SourceUtilsTestUtil.prepareTest(new String[0], new Object[0]);
}
- private static final class FindNewClassTree extends TreePathScanner<TreePath, Void> {
+ private static final class FindNewClassTree extends ErrorAwareTreePathScanner<TreePath, Void> {
@Override
public TreePath visitNewClass(NewClassTree node, Void p) {
return getCurrentPath();
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/test/unit/src/org/netbeans/modules/java/hints/SuspiciousNamesCombinationTest.java
----------------------------------------------------------------------
diff --git a/java.hints/test/unit/src/org/netbeans/modules/java/hints/SuspiciousNamesCombinationTest.java b/java.hints/test/unit/src/org/netbeans/modules/java/hints/SuspiciousNamesCombinationTest.java
index 02dccfd..657bea0 100644
--- a/java.hints/test/unit/src/org/netbeans/modules/java/hints/SuspiciousNamesCombinationTest.java
+++ b/java.hints/test/unit/src/org/netbeans/modules/java/hints/SuspiciousNamesCombinationTest.java
@@ -20,7 +20,7 @@ package org.netbeans.modules.java.hints;
import com.sun.source.tree.Tree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.beans.PropertyVetoException;
import java.io.File;
import java.io.IOException;
@@ -146,7 +146,7 @@ public class SuspiciousNamesCombinationTest extends NbTestCase {
final SuspiciousNamesCombination snc = new SuspiciousNamesCombination();
final List<ErrorDescription> errors = new ArrayList<ErrorDescription>();
- class ScannerImpl extends TreePathScanner {
+ class ScannerImpl extends ErrorAwareTreePathScanner {
@Override
public Object scan(Tree tree, Object p) {
if (tree != null && snc.getTreeKinds().contains(tree.getKind())) {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/test/unit/src/org/netbeans/modules/java/hints/infrastructure/TreeRuleTestBase.java
----------------------------------------------------------------------
diff --git a/java.hints/test/unit/src/org/netbeans/modules/java/hints/infrastructure/TreeRuleTestBase.java b/java.hints/test/unit/src/org/netbeans/modules/java/hints/infrastructure/TreeRuleTestBase.java
index 04a3782..f50b987 100644
--- a/java.hints/test/unit/src/org/netbeans/modules/java/hints/infrastructure/TreeRuleTestBase.java
+++ b/java.hints/test/unit/src/org/netbeans/modules/java/hints/infrastructure/TreeRuleTestBase.java
@@ -45,7 +45,7 @@ import org.netbeans.junit.NbTestCase;
import org.netbeans.junit.RandomlyFails;
import org.netbeans.modules.java.hints.legacy.spi.RulesManager;
import org.netbeans.modules.java.hints.legacy.spi.RulesManager.LegacyHintConfiguration;
-import org.netbeans.modules.java.source.TreeLoader;
+//import org.netbeans.modules.java.source.TreeLoader;
import org.netbeans.spi.editor.hints.ErrorDescription;
import org.netbeans.spi.editor.hints.Fix;
import org.openide.LifecycleManager;
@@ -74,7 +74,8 @@ public abstract class TreeRuleTestBase extends NbTestCase {
protected void setUp() throws Exception {
super.setUp();
SourceUtilsTestUtil.prepareTest(new String[] {"org/netbeans/modules/java/editor/resources/layer.xml"}, new Object[0]);
- TreeLoader.DISABLE_CONFINEMENT_TEST = true;
+ //XXX:
+// TreeLoader.DISABLE_CONFINEMENT_TEST = true;
}
private void prepareTest(String fileName, String code) throws Exception {
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.hints/test/unit/src/org/netbeans/modules/java/hints/introduce/RefFinderTest.java
----------------------------------------------------------------------
diff --git a/java.hints/test/unit/src/org/netbeans/modules/java/hints/introduce/RefFinderTest.java b/java.hints/test/unit/src/org/netbeans/modules/java/hints/introduce/RefFinderTest.java
index d1ff90e..b923bcf 100644
--- a/java.hints/test/unit/src/org/netbeans/modules/java/hints/introduce/RefFinderTest.java
+++ b/java.hints/test/unit/src/org/netbeans/modules/java/hints/introduce/RefFinderTest.java
@@ -24,7 +24,7 @@ import com.sun.source.tree.ReturnTree;
import com.sun.source.tree.StatementTree;
import com.sun.source.tree.Tree;
import com.sun.source.util.TreePath;
-import com.sun.source.util.TreePathScanner;
+import org.netbeans.api.java.source.support.ErrorAwareTreePathScanner;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.j2semodule/nbproject/project.properties
----------------------------------------------------------------------
diff --git a/java.j2semodule/nbproject/project.properties b/java.j2semodule/nbproject/project.properties
index 4aa6121..be95b98 100644
--- a/java.j2semodule/nbproject/project.properties
+++ b/java.j2semodule/nbproject/project.properties
@@ -18,3 +18,4 @@
javac.source=1.8
javac.compilerargs=-Xlint -Xlint:-serial
javadoc.arch=${basedir}/arch.xml
+requires.nb.javac=true
http://git-wip-us.apache.org/repos/asf/incubator-netbeans/blob/ffc0de5a/java.j2seprofiles/nbproject/project.properties
----------------------------------------------------------------------
diff --git a/java.j2seprofiles/nbproject/project.properties b/java.j2seprofiles/nbproject/project.properties
index ab06b41..7b21974 100644
--- a/java.j2seprofiles/nbproject/project.properties
+++ b/java.j2seprofiles/nbproject/project.properties
@@ -16,3 +16,5 @@
# under the License.
javac.source=1.7
javac.compilerargs=-Xlint -Xlint:-serial
+cp.extra=${tools.jar}
+requires.nb.javac=true