mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
IDEA-123712 Groovy: @language annotation on method parameters with default values
reflected methods now have light parameters with original modifier lists
This commit is contained in:
+4
@@ -50,6 +50,10 @@ public class GrLightParameter extends LightVariableBuilder<GrLightParameter> imp
|
||||
myTypeElement = type == null ? null : new GrLightTypeElement(type, scope.getManager());
|
||||
}
|
||||
|
||||
public void setModifierList(GrModifierList modifierList) {
|
||||
myModifierList = modifierList;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static PsiType getTypeNotNull(PsiType type, PsiElement scope) {
|
||||
return type != null ? type : PsiType.getJavaLangObject(scope.getManager(), scope.getResolveScope());
|
||||
|
||||
+7
-1
@@ -129,7 +129,7 @@ public class GrReflectedMethodImpl extends LightMethodBuilder implements GrRefle
|
||||
}
|
||||
optionalParams--;
|
||||
}
|
||||
parameterList.addParameter(new GrLightParameter(parameter.getName(), parameter.getDeclaredType(), this));
|
||||
parameterList.addParameter(createLightParameter(parameter));
|
||||
}
|
||||
|
||||
LOG.assertTrue(optionalParams == 0);
|
||||
@@ -137,6 +137,12 @@ public class GrReflectedMethodImpl extends LightMethodBuilder implements GrRefle
|
||||
mySkippedParameters = skipped.toArray(new GrParameter[skipped.size()]);
|
||||
}
|
||||
|
||||
private GrLightParameter createLightParameter(GrParameter parameter) {
|
||||
GrLightParameter lightParameter = new GrLightParameter(parameter.getName(), parameter.getDeclaredType(), this);
|
||||
lightParameter.setModifierList(parameter.getModifierList());
|
||||
return lightParameter;
|
||||
}
|
||||
|
||||
@NotNull
|
||||
@Override
|
||||
public GrMethod getBaseMethod() {
|
||||
|
||||
Reference in New Issue
Block a user