mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
[groovy] add and use separate GrLightMethodBuilder#addAndGetOptionalParameter method
This commit is contained in:
@@ -140,7 +140,7 @@ class GradleExtensionsContributor : GradleMethodContextContributor {
|
||||
if (parent is GrMethodCallExpressionImpl && parent.argumentList.namedArguments.isNotEmpty()) {
|
||||
addOptionalParameter("args", JAVA_UTIL_MAP)
|
||||
}
|
||||
val closureParam = addAndGetParameter("configuration", GROOVY_LANG_CLOSURE, true)
|
||||
val closureParam = addAndGetOptionalParameter("configuration", GROOVY_LANG_CLOSURE)
|
||||
closureParam.putUserData(DELEGATES_TO_KEY, gradleTask.typeFqn)
|
||||
closureParam.putUserData(DELEGATES_TO_STRATEGY_KEY, Closure.OWNER_FIRST)
|
||||
}
|
||||
|
||||
@@ -48,7 +48,7 @@ class GradleIdeaSettingsContributor : GradleMethodContextContributor {
|
||||
val projectSettingsMethodBuilder = GrLightMethodBuilder(place.manager, "settings").apply {
|
||||
containingClass = ideaProjectClass
|
||||
returnType = projectSettingsType
|
||||
addAndGetParameter("configuration", GroovyCommonClassNames.GROOVY_LANG_CLOSURE, false).apply {
|
||||
addAndGetParameter("configuration", GroovyCommonClassNames.GROOVY_LANG_CLOSURE).apply {
|
||||
putUserData(DELEGATES_TO_KEY, PROJECT_SETTINGS_FQN)
|
||||
putUserData(DELEGATES_TO_STRATEGY_KEY, Closure.DELEGATE_FIRST)
|
||||
}
|
||||
@@ -65,7 +65,7 @@ class GradleIdeaSettingsContributor : GradleMethodContextContributor {
|
||||
val moduleSettingsMethodBuilder = GrLightMethodBuilder(place.manager, "settings").apply {
|
||||
containingClass = ideaModuleClass
|
||||
returnType = moduleSettingsType
|
||||
addAndGetParameter("configuration", GroovyCommonClassNames.GROOVY_LANG_CLOSURE, false).apply {
|
||||
addAndGetParameter("configuration", GroovyCommonClassNames.GROOVY_LANG_CLOSURE).apply {
|
||||
putUserData(DELEGATES_TO_KEY, MODULE_SETTINGS_FQN)
|
||||
putUserData(DELEGATES_TO_STRATEGY_KEY, Closure.DELEGATE_FIRST)
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ class GradleMiscContributor : GradleMethodContextContributor {
|
||||
containingClass = pluginsDependenciesClass
|
||||
returnType = returnClass
|
||||
}
|
||||
methodBuilder.addAndGetParameter("configuration", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, pluginDependenciesSpecFqn)
|
||||
methodBuilder.addAndGetParameter("configuration", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, pluginDependenciesSpecFqn)
|
||||
place.putUserData(RESOLVED_CODE, true)
|
||||
if (!processor.execute(methodBuilder, state)) return false
|
||||
}
|
||||
|
||||
@@ -142,7 +142,7 @@ class GradleNonCodeMembersContributor : NonCodeMembersContributor() {
|
||||
val wrappedBase = GrLightMethodBuilder(place.manager, propCandidate).apply {
|
||||
returnType = domainObjectType
|
||||
containingClass = aClass
|
||||
val closureParam = addAndGetParameter("configuration", GROOVY_LANG_CLOSURE, true)
|
||||
val closureParam = addAndGetOptionalParameter("configuration", GROOVY_LANG_CLOSURE)
|
||||
closureParam.putUserData(DELEGATES_TO_KEY, domainObjectFqn)
|
||||
closureParam.putUserData(DELEGATES_TO_STRATEGY_KEY, Closure.DELEGATE_FIRST)
|
||||
|
||||
|
||||
+4
-4
@@ -41,7 +41,7 @@ public class JsonBuilderContributor extends BuilderMethodsContributor {
|
||||
|
||||
// (Closure)
|
||||
method = createMethod(name, clazz, place);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
if (!processor.process(method)) return false;
|
||||
|
||||
// (Map)
|
||||
@@ -52,19 +52,19 @@ public class JsonBuilderContributor extends BuilderMethodsContributor {
|
||||
// (Map, Closure)
|
||||
method = createMethod(name, clazz, place);
|
||||
method.addParameter("map", JAVA_UTIL_MAP);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
if (!processor.process(method)) return false;
|
||||
|
||||
// (Iterable, Closure)
|
||||
method = createMethod(name, clazz, place);
|
||||
method.addParameter("value", TypesUtil.createIterableType(place, null));
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
if (!processor.process(method)) return false;
|
||||
|
||||
// (Object[], Closure)
|
||||
method = createMethod(name, clazz, place);
|
||||
method.addParameter("value", TypesUtil.getJavaLangObject(place).createArrayType());
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
return processor.process(method);
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -48,7 +48,7 @@ public class JsonDelegateContributor extends BuilderMethodsContributor {
|
||||
method = createMethod(name, clazz, place);
|
||||
genericType = facade.getElementFactory().createType(method.addTypeParameter("T"));
|
||||
method.addParameter("values", genericType.createArrayType());
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.setReturnType(TypesUtil.createListType(place, genericType));
|
||||
if (!processor.process(method)) return false;
|
||||
|
||||
@@ -56,7 +56,7 @@ public class JsonDelegateContributor extends BuilderMethodsContributor {
|
||||
method = createMethod(name, clazz, place);
|
||||
genericType = facade.getElementFactory().createType(method.addTypeParameter("T"));
|
||||
method.addParameter("values", TypesUtil.createIterableType(place, genericType));
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.addAndGetParameter("c", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, DELEGATE_FQN);
|
||||
method.setReturnType(TypesUtil.createListType(place, genericType));
|
||||
if (!processor.process(method)) return false;
|
||||
|
||||
|
||||
+5
-5
@@ -39,19 +39,19 @@ public class XmlMarkupBuilderNonCodeMemberContributor extends BuilderMethodsCont
|
||||
|
||||
// (Closure)
|
||||
res = createMethod(name, clazz, place);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
if (!processor.process(res)) return false;
|
||||
|
||||
// (Object, Closure)
|
||||
res = createMethod(name, clazz, place);
|
||||
res.addParameter("value", JAVA_LANG_OBJECT);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
if (!processor.process(res)) return false;
|
||||
|
||||
// (Map, Closure)
|
||||
res = createMethod(name, clazz, place);
|
||||
res.addParameter("attributes", JAVA_UTIL_MAP);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, false).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
if (!processor.process(res)) return false;
|
||||
|
||||
// (Map)
|
||||
@@ -60,7 +60,7 @@ public class XmlMarkupBuilderNonCodeMemberContributor extends BuilderMethodsCont
|
||||
res = createMethod(name, clazz, place);
|
||||
res.addParameter("attributes", JAVA_UTIL_MAP);
|
||||
res.addOptionalParameter("value", JAVA_LANG_OBJECT);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, true).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
res.addAndGetOptionalParameter("body", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
for (GrReflectedMethod method : res.getReflectedMethods()) {
|
||||
if (!processor.process(method)) return false;
|
||||
}
|
||||
@@ -71,7 +71,7 @@ public class XmlMarkupBuilderNonCodeMemberContributor extends BuilderMethodsCont
|
||||
res = createMethod(name, clazz, place);
|
||||
res.addParameter("value", JAVA_LANG_OBJECT);
|
||||
res.addOptionalParameter("attributes", JAVA_UTIL_MAP);
|
||||
res.addAndGetParameter("body", GROOVY_LANG_CLOSURE, true).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
res.addAndGetOptionalParameter("body", GROOVY_LANG_CLOSURE).putUserData(DELEGATES_TO_KEY, FQN);
|
||||
for (GrReflectedMethod method : res.getReflectedMethods()) {
|
||||
if (!processor.process(method)) return false;
|
||||
}
|
||||
|
||||
+6
-1
@@ -275,7 +275,12 @@ public class GrLightMethodBuilder extends LightElement implements GrMethod, Orig
|
||||
}
|
||||
|
||||
@NotNull
|
||||
public GrLightParameter addAndGetParameter(@NotNull String name, @NotNull String type, boolean isOptional) {
|
||||
public GrLightParameter addAndGetOptionalParameter(@NotNull String name, @NotNull String type) {
|
||||
return addAndGetParameter(name, type, true);
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private GrLightParameter addAndGetParameter(@NotNull String name, @NotNull String type, boolean isOptional) {
|
||||
return addAndGetParameter(name, JavaPsiFacade.getElementFactory(getProject()).createTypeFromText(type, this), isOptional);
|
||||
}
|
||||
|
||||
|
||||
+1
-1
@@ -107,7 +107,7 @@ class LogbackDelegateMemberContributor : NonCodeMembersContributor() {
|
||||
// (clazz, configuration)
|
||||
wrappedBase.copy().apply {
|
||||
addParameter("clazz", classType)
|
||||
addAndGetParameter("configuration", GROOVY_LANG_CLOSURE, true).apply {
|
||||
addAndGetOptionalParameter("configuration", GROOVY_LANG_CLOSURE).apply {
|
||||
putUserData(DELEGATES_TO_KEY, componentDelegateFqn)
|
||||
putUserData(DELEGATES_TO_STRATEGY_KEY, DELEGATE_FIRST)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user