Create from usage: Fixed not resolving type parameter correctly.

This commit is contained in:
Jack Zhou
2013-04-08 21:33:34 -04:00
parent 3caad4b199
commit 197000b8ce
@@ -41,6 +41,7 @@ import org.jetbrains.annotations.NonNls;
import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable; import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.lang.descriptors.*; import org.jetbrains.jet.lang.descriptors.*;
import org.jetbrains.jet.lang.descriptors.impl.MutableClassDescriptor;
import org.jetbrains.jet.lang.diagnostics.Diagnostic; import org.jetbrains.jet.lang.diagnostics.Diagnostic;
import org.jetbrains.jet.lang.psi.*; import org.jetbrains.jet.lang.psi.*;
import org.jetbrains.jet.lang.resolve.BindingContext; import org.jetbrains.jet.lang.resolve.BindingContext;
@@ -552,8 +553,9 @@ public class CreateMethodFromUsageFix extends CreateFromUsageFixBase {
NamespaceDescriptor namespaceDescriptor = (NamespaceDescriptor) ownerDescriptor; NamespaceDescriptor namespaceDescriptor = (NamespaceDescriptor) ownerDescriptor;
return namespaceDescriptor.getMemberScope(); return namespaceDescriptor.getMemberScope();
} else { } else {
ClassDescriptor classDescriptor = (ClassDescriptor) ownerDescriptor; assert ownerDescriptor instanceof MutableClassDescriptor;
return classDescriptor.getMemberScope(classDescriptor.getDefaultType().getArguments()); MutableClassDescriptor classDescriptor = (MutableClassDescriptor) ownerDescriptor;
return classDescriptor.getScopeForMemberResolution();
} }
} }