Remove PsiParameterWrapper class

This commit is contained in:
Pavel V. Talanov
2013-07-05 20:55:35 +04:00
parent 9a76cd8472
commit 6c02f6aba8
4 changed files with 19 additions and 56 deletions
@@ -17,10 +17,7 @@
package org.jetbrains.jet.lang.resolve.java.resolver;
import com.google.common.collect.Sets;
import com.intellij.psi.PsiEnumConstant;
import com.intellij.psi.PsiExpression;
import com.intellij.psi.PsiField;
import com.intellij.psi.PsiLiteralExpression;
import com.intellij.psi.*;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.*;
@@ -32,7 +29,10 @@ import org.jetbrains.jet.lang.resolve.java.*;
import org.jetbrains.jet.lang.resolve.java.kotlinSignature.AlternativeFieldSignatureData;
import org.jetbrains.jet.lang.resolve.java.provider.NamedMembers;
import org.jetbrains.jet.lang.resolve.java.provider.PsiDeclarationProvider;
import org.jetbrains.jet.lang.resolve.java.wrapper.*;
import org.jetbrains.jet.lang.resolve.java.wrapper.PropertyPsiData;
import org.jetbrains.jet.lang.resolve.java.wrapper.PropertyPsiDataElement;
import org.jetbrains.jet.lang.resolve.java.wrapper.PsiFieldWrapper;
import org.jetbrains.jet.lang.resolve.java.wrapper.PsiMethodWrapper;
import org.jetbrains.jet.lang.resolve.name.Name;
import org.jetbrains.jet.lang.resolve.scopes.JetScope;
import org.jetbrains.jet.lang.types.JetType;
@@ -312,7 +312,7 @@ public final class JavaPropertyResolver {
if (setterDescriptor != null) {
PropertyPsiDataElement setter = data.getSetter();
assert setter != null;
List<PsiParameterWrapper> parameters = ((PsiMethodWrapper) setter.getMember()).getParameters();
List<PsiParameter> parameters = ((PsiMethodWrapper) setter.getMember()).getParameters();
assert parameters.size() != 0;
setterDescriptor.initialize(new ValueParameterDescriptorImpl(
setterDescriptor,
@@ -18,6 +18,7 @@ package org.jetbrains.jet.lang.resolve.java.resolver;
import com.intellij.psi.PsiAnnotation;
import com.intellij.psi.PsiEllipsisType;
import com.intellij.psi.PsiParameter;
import com.intellij.psi.PsiType;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.jet.lang.descriptors.DeclarationDescriptor;
@@ -25,7 +26,6 @@ import org.jetbrains.jet.lang.descriptors.ValueParameterDescriptor;
import org.jetbrains.jet.lang.descriptors.annotations.AnnotationDescriptor;
import org.jetbrains.jet.lang.descriptors.impl.ValueParameterDescriptorImpl;
import org.jetbrains.jet.lang.resolve.java.*;
import org.jetbrains.jet.lang.resolve.java.wrapper.PsiParameterWrapper;
import org.jetbrains.jet.lang.resolve.name.Name;
import org.jetbrains.jet.lang.types.JetType;
import org.jetbrains.jet.lang.types.TypeUtils;
@@ -48,16 +48,16 @@ public final class JavaValueParameterResolver {
@NotNull
private ValueParameterDescriptor resolveParameterDescriptor(
DeclarationDescriptor containingDeclaration, int i,
PsiParameterWrapper parameter, TypeVariableResolver typeVariableResolver
PsiParameter parameter, TypeVariableResolver typeVariableResolver
) {
PsiType psiType = parameter.getPsiParameter().getType();
PsiType psiType = parameter.getType();
// TODO: must be very slow, make it lazy?
Name name = Name.identifier(getParameterName(i, parameter));
TypeUsage typeUsage = JavaTypeTransformer
.adjustTypeUsageWithMutabilityAnnotations(parameter.getPsiParameter(), TypeUsage.MEMBER_SIGNATURE_CONTRAVARIANT);
.adjustTypeUsageWithMutabilityAnnotations(parameter, TypeUsage.MEMBER_SIGNATURE_CONTRAVARIANT);
JetType outType = getTypeTransformer().transformToType(psiType, typeUsage, typeVariableResolver);
JetType varargElementType;
@@ -70,7 +70,7 @@ public final class JavaValueParameterResolver {
}
JetType transformedType;
PsiAnnotation notNullAnnotation = findAnnotationWithExternal(parameter.getPsiParameter(),
PsiAnnotation notNullAnnotation = findAnnotationWithExternal(parameter,
JvmAbi.JETBRAINS_NOT_NULL_ANNOTATION.getFqName().asString());
if (notNullAnnotation != null) {
transformedType = TypeUtils.makeNullableAsSpecified(outType, false);
@@ -100,19 +100,19 @@ public final class JavaValueParameterResolver {
}
@NotNull
private static String getParameterName(int number, @NotNull PsiParameterWrapper parameter) {
String psiParameterName = parameter.getPsiParameter().getName();
private static String getParameterName(int number, @NotNull PsiParameter parameter) {
String psiParameterName = parameter.getName();
return psiParameterName != null ? psiParameterName : "p" + number;
}
public JavaDescriptorResolver.ValueParameterDescriptors resolveParameterDescriptors(
DeclarationDescriptor containingDeclaration,
List<PsiParameterWrapper> parameters, TypeVariableResolver typeVariableResolver
List<PsiParameter> parameters, TypeVariableResolver typeVariableResolver
) {
List<ValueParameterDescriptor> result = new ArrayList<ValueParameterDescriptor>();
int indexDelta = 0;
for (int i = 0, parametersLength = parameters.size(); i < parametersLength; i++) {
PsiParameterWrapper parameter = parameters.get(i);
PsiParameter parameter = parameters.get(i);
ValueParameterDescriptor parameterDescriptor =
resolveParameterDescriptor(containingDeclaration, i + indexDelta, parameter, typeVariableResolver);
result.add(parameterDescriptor);
@@ -16,6 +16,7 @@
package org.jetbrains.jet.lang.resolve.java.wrapper;
import com.google.common.collect.Lists;
import com.intellij.psi.PsiMethod;
import com.intellij.psi.PsiModifier;
import com.intellij.psi.PsiParameter;
@@ -23,7 +24,6 @@ import com.intellij.psi.PsiType;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
import java.util.List;
public class PsiMethodWrapper extends PsiMemberWrapper {
@@ -32,16 +32,12 @@ public class PsiMethodWrapper extends PsiMemberWrapper {
super(psiMethod);
}
private List<PsiParameterWrapper> parameters;
private List<PsiParameter> parameters;
@NotNull
public List<PsiParameterWrapper> getParameters() {
public List<PsiParameter> getParameters() {
if (parameters == null) {
PsiParameter[] psiParameters = getPsiMethod().getParameterList().getParameters();
parameters = new ArrayList<PsiParameterWrapper>(psiParameters.length);
for (PsiParameter psiParameter : psiParameters) {
parameters.add(new PsiParameterWrapper(psiParameter));
}
parameters = Lists.newArrayList(getPsiMethod().getParameterList().getParameters());
}
return parameters;
}
@@ -1,33 +0,0 @@
/*
* Copyright 2010-2013 JetBrains s.r.o.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package org.jetbrains.jet.lang.resolve.java.wrapper;
import com.intellij.psi.PsiParameter;
import org.jetbrains.annotations.NotNull;
public class PsiParameterWrapper {
private final PsiParameter psiParameter;
public PsiParameterWrapper(@NotNull PsiParameter psiParameter) {
this.psiParameter = psiParameter;
}
@NotNull
public PsiParameter getPsiParameter() {
return psiParameter;
}
}