From 9031d8ba13041d6ed37cfd41e5b4647c4473b993 Mon Sep 17 00:00:00 2001 From: Bas Leijdekkers Date: Thu, 17 May 2018 18:12:23 +0200 Subject: [PATCH] SSR: add existing template for generic constructors --- .../structuralsearch/JavaPredefinedConfigurations.java | 1 + .../structuralsearch/source/messages/SSRBundle.properties | 1 + .../JavaPredefinedConfigurationsTest.java | 8 ++++++++ 3 files changed, 10 insertions(+) diff --git a/java/structuralsearch-java/src/com/intellij/structuralsearch/JavaPredefinedConfigurations.java b/java/structuralsearch-java/src/com/intellij/structuralsearch/JavaPredefinedConfigurations.java index 50cbd7b31f5b..57d629aeb6ce 100644 --- a/java/structuralsearch-java/src/com/intellij/structuralsearch/JavaPredefinedConfigurations.java +++ b/java/structuralsearch-java/src/com/intellij/structuralsearch/JavaPredefinedConfigurations.java @@ -184,6 +184,7 @@ class JavaPredefinedConfigurations { createSearchTemplateInfo(SSRBundle.message("predefined.configuration.variables.of.generic.types"),"'_Type <'_GenericArgument+> 'Var = '_Init?;", GENERICS_TYPE), createSearchTemplateInfo(SSRBundle.message("predefined.configuration.diamond.operators"), "new 'Class<>('_Argument*)", GENERICS_TYPE), createSearchTemplateInfo(SSRBundle.message("predefined.configuration.method.returns.bounded.wildcard"), "[script( \"!Method.hasModifierProperty(com.intellij.psi.PsiModifier.ABSTRACT)\" )]'_Type 'Method('_ParameterType '_Parameter*);", GENERICS_TYPE), + createSearchTemplateInfo(SSRBundle.message("predefined.configuration.generic.constructors"), "<'_TypeParameter+> 'Class('_ParameterType '_Parameter*) {\n '_Statement*;\n}", GENERICS_TYPE), // Add comments and metadata createSearchTemplateInfo(SSRBundle.message("predefined.configuration.comments"),"/* 'CommentContent */", METADATA_TYPE), diff --git a/platform/structuralsearch/source/messages/SSRBundle.properties b/platform/structuralsearch/source/messages/SSRBundle.properties index 62112dc80d78..1e5cc63fef66 100644 --- a/platform/structuralsearch/source/messages/SSRBundle.properties +++ b/platform/structuralsearch/source/messages/SSRBundle.properties @@ -103,6 +103,7 @@ predefined.configuration.all.expressions.of.some.type=all expressions of some ty predefined.configuration.variables.of.generic.types=variables of generic types predefined.configuration.diamond.operators=diamond operators predefined.configuration.method.returns.bounded.wildcard=method returns bounded wildcard +predefined.configuration.generic.constructors=generic constructors predefined.configuration.comments=comments predefined.configuration.fields_variables.with.given.name.pattern.updated=fields/variables with given name pattern updated predefined.configuration.trys=try's diff --git a/platform/structuralsearch/testSource/com/intellij/structuralsearch/JavaPredefinedConfigurationsTest.java b/platform/structuralsearch/testSource/com/intellij/structuralsearch/JavaPredefinedConfigurationsTest.java index 3867f56bbbc2..fd50453f8e00 100644 --- a/platform/structuralsearch/testSource/com/intellij/structuralsearch/JavaPredefinedConfigurationsTest.java +++ b/platform/structuralsearch/testSource/com/intellij/structuralsearch/JavaPredefinedConfigurationsTest.java @@ -151,6 +151,14 @@ public class JavaPredefinedConfigurationsTest extends StructuralSearchTestCase { asList("List one() {" + " return null;" + " }"))); + testCases.put(SSRBundle.message("predefined.configuration.generic.constructors"), + pair("class X {" + + " X() {}" + + " X(String s) {}" + + " X(int i) {}" + + "}", + asList(" X(String s) {}", + " X(int i) {}"))); } public void testPredefinedConfigurations() {