Top Inners Fields Constructors Methods
kotlin.reflect.jvm.internal.impl.descriptors.impl

public abstract Class FunctionDescriptorImpl

extends DeclarationDescriptorNonRootImpl
implements FunctionDescriptor
Class Inheritance
All Implemented Interfaces
kotlin.reflect.jvm.internal.impl.descriptors.FunctionDescriptor, kotlin.reflect.jvm.internal.impl.mpp.FunctionSymbolMarker, kotlin.reflect.jvm.internal.impl.mpp.CallableSymbolMarker, kotlin.reflect.jvm.internal.impl.mpp.DeclarationSymbolMarker, kotlin.reflect.jvm.internal.impl.descriptors.CallableMemberDescriptor, kotlin.reflect.jvm.internal.impl.descriptors.MemberDescriptor, kotlin.reflect.jvm.internal.impl.descriptors.DeclarationDescriptorWithVisibility, kotlin.reflect.jvm.internal.impl.descriptors.DeclarationDescriptor, kotlin.reflect.jvm.internal.impl.descriptors.ValidateableDescriptor, kotlin.reflect.jvm.internal.impl.descriptors.Named, kotlin.reflect.jvm.internal.impl.descriptors.DeclarationDescriptorNonRoot, kotlin.reflect.jvm.internal.impl.descriptors.DeclarationDescriptorWithSource, kotlin.reflect.jvm.internal.impl.descriptors.CallableDescriptor
Known Direct Subclasses
kotlin.reflect.jvm.internal.impl.descriptors.impl.ClassConstructorDescriptorImpl, kotlin.reflect.jvm.internal.impl.descriptors.impl.SimpleFunctionDescriptorImpl
Imports
kotlin.collections.CollectionsKt, kotlin.jvm.functions.Function0, org.jetbrains.annotations.NotNull, .Nullable, kotlin.reflect.jvm.internal.impl.descriptors.*, kotlin.reflect.jvm.internal.impl.descriptors.annotations.Annotations, kotlin.reflect.jvm.internal.impl.descriptors.annotations.AnnotationsKt, kotlin.reflect.jvm.internal.impl.name.Name, kotlin.reflect.jvm.internal.impl.resolve.DescriptorFactory, kotlin.reflect.jvm.internal.impl.resolve.scopes.receivers.ExtensionReceiver, kotlin.reflect.jvm.internal.impl.resolve.scopes.receivers.ImplicitContextReceiver, kotlin.reflect.jvm.internal.impl.types.*, kotlin.reflect.jvm.internal.impl.utils.SmartList, java.util.*

Nested and Inner Type Summary

Modifier and TypeClass and Description
public class

Field Summary

Modifier and TypeField and Description
private List<ReceiverParameterDescriptor>
private ReceiverParameterDescriptor
private ReceiverParameterDescriptor
private boolean
private boolean
private @Nullable FunctionDescriptor
private boolean
private boolean
private boolean
private boolean
private boolean
private boolean
private boolean
private boolean
private boolean
private boolean
private final CallableMemberDescriptor.Kind
private volatile kotlin.jvm.functions.Function0<Collection<FunctionDescriptor>>
private kotlin.reflect.jvm.internal.impl.descriptors.Modality
private final FunctionDescriptor
private Collection<? extends FunctionDescriptor>
private List<TypeParameterDescriptor>
private kotlin.reflect.jvm.internal.impl.types.KotlinType
private List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor>
protected Map<CallableDescriptor.UserDataKey<?>, Object>
private kotlin.reflect.jvm.internal.impl.descriptors.DescriptorVisibility

Constructor Summary

AccessConstructor and Description
protected
FunctionDescriptorImpl(@NotNull DeclarationDescriptor containingDeclaration, @Nullable FunctionDescriptor original, @NotNull kotlin.reflect.jvm.internal.impl.descriptors.annotations.Annotations annotations, @NotNull kotlin.reflect.jvm.internal.impl.name.Name name, @NotNull CallableMemberDescriptor.Kind kind, @NotNull kotlin.reflect.jvm.internal.impl.descriptors.SourceElement source)

Method Summary

Modifier and TypeMethod and Description
public <R, D> R
public @NotNull FunctionDescriptor
copy(DeclarationDescriptor newOwner, kotlin.reflect.jvm.internal.impl.descriptors.Modality modality, kotlin.reflect.jvm.internal.impl.descriptors.DescriptorVisibility visibility, CallableMemberDescriptor.Kind kind, boolean copyOverrides)

Implements kotlin.reflect.jvm.internal.impl.descriptors.FunctionDescriptor.copy.

protected abstract @NotNull FunctionDescriptorImpl
createSubstitutedCopy(@NotNull DeclarationDescriptor newOwner, @Nullable FunctionDescriptor original, @NotNull CallableMemberDescriptor.Kind kind, @Nullable kotlin.reflect.jvm.internal.impl.name.Name newName, @NotNull kotlin.reflect.jvm.internal.impl.descriptors.annotations.Annotations annotations, @NotNull kotlin.reflect.jvm.internal.impl.descriptors.SourceElement source)

protected @Nullable FunctionDescriptor
public @NotNull List<ReceiverParameterDescriptor>
public @Nullable ReceiverParameterDescriptor
public @Nullable ReceiverParameterDescriptor
private @Nullable kotlin.reflect.jvm.internal.impl.types.KotlinType
public @Nullable FunctionDescriptor
public @NotNull CallableMemberDescriptor.Kind
getKind()

Implements kotlin.reflect.jvm.internal.impl.descriptors.CallableMemberDescriptor.getKind.

Is this a real function or function projection.
public @NotNull kotlin.reflect.jvm.internal.impl.descriptors.Modality
public @NotNull FunctionDescriptor
public @NotNull Collection<? extends FunctionDescriptor>
getOverriddenDescriptors()

Implements kotlin.reflect.jvm.internal.impl.descriptors.FunctionDescriptor.getOverriddenDescriptors.

This method should be used with a great care, because if descriptor is substituted one, calling 'getOverriddenDescriptors' may force lazy computation, that's unnecessary in most cases.
public kotlin.reflect.jvm.internal.impl.types.KotlinType
getReturnType()

Implements kotlin.reflect.jvm.internal.impl.descriptors.CallableDescriptor.getReturnType.

Method may return null for not yet fully initialized object or if error occurred.
private @NotNull kotlin.reflect.jvm.internal.impl.descriptors.SourceElement
getSourceToUseForCopy(boolean preserveSource, @Nullable FunctionDescriptor original)

public static @Nullable List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor>
getSubstitutedValueParameters(FunctionDescriptor substitutedDescriptor, @NotNull List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor> unsubstitutedValueParameters, @NotNull TypeSubstitutor substitutor)

public static @Nullable List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor>
getSubstitutedValueParameters(FunctionDescriptor substitutedDescriptor, @NotNull List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor> unsubstitutedValueParameters, @NotNull TypeSubstitutor substitutor, boolean dropOriginal, boolean preserveSourceElement, @Nullable boolean[] wereChanges)

public @NotNull List<TypeParameterDescriptor>
public <V> V
public @NotNull List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor>
public @NotNull kotlin.reflect.jvm.internal.impl.descriptors.DescriptorVisibility
public boolean
hasStableParameterNames()

Implements kotlin.reflect.jvm.internal.impl.descriptors.CallableDescriptor.hasStableParameterNames.

Kotlin functions always have stable parameter names that can be reliably used when calling them with named arguments.
public boolean
hasSynthesizedParameterNames()

Implements kotlin.reflect.jvm.internal.impl.descriptors.CallableDescriptor.hasSynthesizedParameterNames.

Sometimes parameter names are not available at all (e.g. Java binaries with not enough debug information).
public @NotNull FunctionDescriptorImpl
initialize(@Nullable ReceiverParameterDescriptor extensionReceiverParameter, @Nullable ReceiverParameterDescriptor dispatchReceiverParameter, @NotNull List<ReceiverParameterDescriptor> contextReceiverParameters, @NotNull List<? extends TypeParameterDescriptor> typeParameters, @NotNull List<kotlin.reflect.jvm.internal.impl.descriptors.ValueParameterDescriptor> unsubstitutedValueParameters, @Nullable kotlin.reflect.jvm.internal.impl.types.KotlinType unsubstitutedReturnType, @Nullable kotlin.reflect.jvm.internal.impl.descriptors.Modality modality, @NotNull kotlin.reflect.jvm.internal.impl.descriptors.DescriptorVisibility visibility)

public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public boolean
public @NotNull FunctionDescriptor.CopyBuilder<? extends FunctionDescriptor>
protected @NotNull FunctionDescriptorImpl.CopyConfiguration
private void
public <V> void
public void
setActual(boolean isActual)

public void
setExpect(boolean isExpect)

public void
public void
setExternal(boolean isExternal)

public void
setHasStableParameterNames(boolean hasStableParameterNames)

public void
setHasSynthesizedParameterNames(boolean hasSynthesizedParameterNames)

private void
setHiddenForResolutionEverywhereBesideSupercalls(boolean hiddenForResolutionEverywhereBesideSupercalls)

private void
setHiddenToOvercomeSignatureClash(boolean hiddenToOvercomeSignatureClash)

public void
setInfix(boolean isInfix)

private void
public void
setInline(boolean isInline)

public void
setOperator(boolean isOperator)

public void
public void
setReturnType(@NotNull kotlin.reflect.jvm.internal.impl.types.KotlinType unsubstitutedReturnType)

public void
setSuspend(boolean suspend)

public void
setTailrec(boolean isTailrec)

public void
setVisibility(@NotNull kotlin.reflect.jvm.internal.impl.descriptors.DescriptorVisibility visibility)

public FunctionDescriptor
substitute(@NotNull TypeSubstitutor originalSubstitutor)

public void
Inherited from kotlin.reflect.jvm.internal.impl.descriptors.impl.DeclarationDescriptorNonRootImpl:
getContainingDeclarationgetSource