org.jetbrains.kotlin.resolve
Class OverrideResolver
java.lang.Object
org.jetbrains.kotlin.resolve.OverrideResolver
public class OverrideResolver
- extends java.lang.Object
|
Method Summary |
void |
check(TopDownAnalysisContext c)
|
static kotlin.jvm.functions.Function1<CallableMemberDescriptor,kotlin.Unit> |
createCannotInferVisibilityReporter(BindingTrace trace)
|
static
|
filterOutOverridden(java.util.Set<D> candidateSet)
|
static
|
filterOutOverridden(java.util.Set<D> candidateSet,
com.intellij.util.Function<? super D,? extends CallableDescriptor> transform)
|
static
|
filterOutOverriding(java.util.Set<D> candidateSet)
|
static void |
generateOverridesInAClass(ClassDescriptor classDescriptor,
java.util.Collection<CallableMemberDescriptor> membersFromCurrent,
OverridingUtil.DescriptorSink sink)
|
static
|
getDeepestSuperDeclarations(D functionDescriptor)
|
static
|
getDirectlyOverriddenDeclarations(D descriptor)
|
static java.util.Set<CallableMemberDescriptor> |
getMissingImplementations(ClassDescriptor classDescriptor)
|
static java.util.Set<CallableMemberDescriptor> |
getOverriddenDeclarations(CallableMemberDescriptor descriptor)
|
static boolean |
isPropertyTypeOkForOverride(PropertyDescriptor superDescriptor,
PropertyDescriptor subDescriptor)
|
static boolean |
isReturnTypeOkForOverride(CallableDescriptor superDescriptor,
CallableDescriptor subDescriptor)
|
static
|
overrides(D f,
D g)
|
static void |
resolveUnknownVisibilities(java.util.Collection<? extends CallableMemberDescriptor> descriptors,
BindingTrace trace)
|
void |
setTrace(BindingTrace trace)
|
static boolean |
shouldReportParameterNameOverrideWarning(ValueParameterDescriptor parameterFromSubclass,
ValueParameterDescriptor parameterFromSuperclass)
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
OverrideResolver
public OverrideResolver()
setTrace
@Inject
public void setTrace(BindingTrace trace)
check
public void check(@NotNull
TopDownAnalysisContext c)
generateOverridesInAClass
public static void generateOverridesInAClass(@NotNull
ClassDescriptor classDescriptor,
@NotNull
java.util.Collection<CallableMemberDescriptor> membersFromCurrent,
@NotNull
OverridingUtil.DescriptorSink sink)
resolveUnknownVisibilities
public static void resolveUnknownVisibilities(@NotNull
java.util.Collection<? extends CallableMemberDescriptor> descriptors,
@NotNull
BindingTrace trace)
createCannotInferVisibilityReporter
@NotNull
public static kotlin.jvm.functions.Function1<CallableMemberDescriptor,kotlin.Unit> createCannotInferVisibilityReporter(@NotNull
BindingTrace trace)
filterOutOverridden
@NotNull
public static <D extends CallableDescriptor> java.util.Set<D> filterOutOverridden(@NotNull
java.util.Set<D> candidateSet)
filterOutOverriding
@NotNull
public static <D> java.util.Set<D> filterOutOverriding(@NotNull
java.util.Set<D> candidateSet)
filterOutOverridden
@NotNull
public static <D> java.util.Set<D> filterOutOverridden(@NotNull
java.util.Set<D> candidateSet,
@NotNull
com.intellij.util.Function<? super D,? extends CallableDescriptor> transform)
overrides
public static <D extends CallableDescriptor> boolean overrides(@NotNull
D f,
@NotNull
D g)
getMissingImplementations
@NotNull
public static java.util.Set<CallableMemberDescriptor> getMissingImplementations(@NotNull
ClassDescriptor classDescriptor)
getOverriddenDeclarations
@NotNull
public static java.util.Set<CallableMemberDescriptor> getOverriddenDeclarations(@NotNull
CallableMemberDescriptor descriptor)
- Returns:
- overridden real descriptors (not fake overrides). Note that all usages of this method should be followed by calling
filterOutOverridden(java.util.Set) or filterOutOverriding(java.util.Set), because some of the declarations
can override the other
TODO: merge this method with filterOutOverridden
isReturnTypeOkForOverride
public static boolean isReturnTypeOkForOverride(@NotNull
CallableDescriptor superDescriptor,
@NotNull
CallableDescriptor subDescriptor)
isPropertyTypeOkForOverride
public static boolean isPropertyTypeOkForOverride(@NotNull
PropertyDescriptor superDescriptor,
@NotNull
PropertyDescriptor subDescriptor)
shouldReportParameterNameOverrideWarning
public static boolean shouldReportParameterNameOverrideWarning(@NotNull
ValueParameterDescriptor parameterFromSubclass,
@NotNull
ValueParameterDescriptor parameterFromSuperclass)
getDirectlyOverriddenDeclarations
@NotNull
public static <D extends CallableMemberDescriptor> java.util.Set<D> getDirectlyOverriddenDeclarations(@NotNull
D descriptor)
getDeepestSuperDeclarations
@NotNull
@ReadOnly
public static <D extends CallableMemberDescriptor> java.util.Set<D> getDeepestSuperDeclarations(@NotNull
D functionDescriptor)