From dea237b04919b515fdb6cf76769e4dbb56b74e39 Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Wed, 7 Jan 2015 11:53:35 +0100 Subject: [PATCH] SSR: Find annotation on package statement --- .../impl/matcher/strategies/ExprMatchingStrategy.java | 5 +++++ .../intellij/structuralsearch/StructuralSearchTest.java | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/java/structuralsearch-java/src/com/intellij/structuralsearch/impl/matcher/strategies/ExprMatchingStrategy.java b/java/structuralsearch-java/src/com/intellij/structuralsearch/impl/matcher/strategies/ExprMatchingStrategy.java index a1bebac82a42..d19205ff3317 100644 --- a/java/structuralsearch-java/src/com/intellij/structuralsearch/impl/matcher/strategies/ExprMatchingStrategy.java +++ b/java/structuralsearch-java/src/com/intellij/structuralsearch/impl/matcher/strategies/ExprMatchingStrategy.java @@ -55,6 +55,11 @@ public class ExprMatchingStrategy extends MatchingStrategyBase { result = true; } + @Override + public void visitPackageStatement(PsiPackageStatement statement) { + result = true; + } + // finding parameters @Override public void visitParameterList(final PsiParameterList list) { result = true; diff --git a/platform/structuralsearch/testSource/com/intellij/structuralsearch/StructuralSearchTest.java b/platform/structuralsearch/testSource/com/intellij/structuralsearch/StructuralSearchTest.java index 002d0cea3aee..f5f6ee36de49 100644 --- a/platform/structuralsearch/testSource/com/intellij/structuralsearch/StructuralSearchTest.java +++ b/platform/structuralsearch/testSource/com/intellij/structuralsearch/StructuralSearchTest.java @@ -2451,6 +2451,14 @@ public class StructuralSearchTest extends StructuralSearchTestCase { "}\n"; assertEquals("Find annotated casts", 1, findMatchesCount(source3, "(@'_A 'Cast) '_Expression")); assertEquals("Find annotated new expressions", 1, findMatchesCount(source3, "new @'_A 'Type()")); + + // package-info.java + final String source4 = "/**\n" + + " * documentation\n" + + " */\n" + + "@Deprecated\n" + + "package one.two;"; + assertEquals("Find annotation on package statement", 1, findMatchesCount(source4, "@'_Annotation", true)); } public void testBoxingAndUnboxing() {