diff options
author | Tor Norbye <tnorbye@google.com> | 2013-06-20 15:12:35 -0700 |
---|---|---|
committer | Tor Norbye <tnorbye@google.com> | 2013-06-20 15:12:35 -0700 |
commit | 0e154c74931b6ff5ad6e0ec512b32e30df3cb068 (patch) | |
tree | f11327e8a38cd36b012c743a78e3dbf856b857f0 /java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java | |
parent | 9a718963c1d41c5bcd3a1bdd5e518d497964ccdf (diff) | |
download | idea-0e154c74931b6ff5ad6e0ec512b32e30df3cb068.tar.gz |
Snapshot 4a019151cb9b5542ea5ba9ed2f07b29cee0951f0 from master branch of git://git.jetbrains.org/idea/community.git
Change-Id: I2fd287fc46a5378a4c437af4c884c3a3be94c330
Diffstat (limited to 'java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java')
-rw-r--r-- | java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java index 369f6ece05d4..24850aa689c5 100644 --- a/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java +++ b/java/java-analysis-impl/src/com/intellij/codeInspection/dataFlow/ControlFlowAnalyzer.java @@ -29,6 +29,7 @@ import com.intellij.psi.util.*; import com.intellij.util.IncorrectOperationException; import com.intellij.util.containers.Stack; import org.jetbrains.annotations.NonNls; +import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; import java.util.*; @@ -38,6 +39,7 @@ import static com.intellij.psi.CommonClassNames.*; class ControlFlowAnalyzer extends JavaElementVisitor { private static final Logger LOG = Logger.getInstance("#com.intellij.codeInspection.dataFlow.ControlFlowAnalyzer"); private static final int NOT_FOUND = -10; + private boolean myIgnoreAssertions; private static class CannotAnalyzeException extends RuntimeException { } @@ -54,9 +56,8 @@ class ControlFlowAnalyzer extends JavaElementVisitor { myFactory = valueFactory; } - public ControlFlow buildControlFlow(PsiElement codeFragment) { - if (codeFragment == null) return null; - + public ControlFlow buildControlFlow(@NotNull PsiElement codeFragment, boolean ignoreAssertions) { + myIgnoreAssertions = ignoreAssertions; PsiManager manager = codeFragment.getManager(); GlobalSearchScope scope = codeFragment.getResolveScope(); myRuntimeException = myFactory.getNotNullFactory().create(PsiType.getJavaLangRuntimeException(manager, scope)); @@ -203,6 +204,10 @@ class ControlFlowAnalyzer extends JavaElementVisitor { } @Override public void visitAssertStatement(PsiAssertStatement statement) { + if (myIgnoreAssertions) { + return; + } + startElement(statement); final PsiExpression condition = statement.getAssertCondition(); final PsiExpression description = statement.getAssertDescription(); |