org.jetbrains.kotlin.descriptors
Interface FunctionDescriptor
- All Superinterfaces:
- CallableDescriptor, CallableMemberDescriptor, DeclarationDescriptor, DeclarationDescriptorNonRoot, DeclarationDescriptorWithSource, DeclarationDescriptorWithVisibility, MemberDescriptor, Named
- All Known Subinterfaces:
- ConstructorDescriptor, SamAdapterDescriptor<D>, SimpleFunctionDescriptor
- All Known Implementing Classes:
- AnonymousFunctionDescriptor, ClassConstructorDescriptorImpl, ErrorSimpleFunctionDescriptorImpl, FunctionDescriptorImpl, FunctionExpressionDescriptor, JavaClassConstructorDescriptor, JavaMethodDescriptor, SimpleFunctionDescriptorImpl
public interface FunctionDescriptor
- extends CallableMemberDescriptor
| Methods inherited from interface org.jetbrains.kotlin.descriptors.Named |
getName |
getContainingDeclaration
@NotNull
DeclarationDescriptor getContainingDeclaration()
- Specified by:
getContainingDeclaration in interface DeclarationDescriptor- Specified by:
getContainingDeclaration in interface DeclarationDescriptorNonRoot
getOriginal
@NotNull
FunctionDescriptor getOriginal()
- Specified by:
getOriginal in interface CallableDescriptor- Specified by:
getOriginal in interface CallableMemberDescriptor- Specified by:
getOriginal in interface DeclarationDescriptor- Specified by:
getOriginal in interface DeclarationDescriptorWithSource
- Returns:
- The descriptor that corresponds to the original declaration of this element.
A descriptor can be obtained from its original by substituting type arguments (of the declaring class
or of the element itself).
returns
this object if the current descriptor is original itself
substitute
@Nullable
FunctionDescriptor substitute(@NotNull
TypeSubstitutor substitutor)
- Specified by:
substitute in interface CallableDescriptor- Specified by:
substitute in interface DeclarationDescriptor
getOverriddenDescriptors
@NotNull
java.util.Collection<? extends FunctionDescriptor> getOverriddenDescriptors()
- This method should be used with q Wgreat care, because if descriptor is substituted one, calling 'getOverriddenDescriptors'
may force lazy computation, that's unnecessary in most cases.
So, if 'getOriginal().getOverriddenDescriptors()' is enough for you, please use it instead.
- Specified by:
getOverriddenDescriptors in interface CallableDescriptor- Specified by:
getOverriddenDescriptors in interface CallableMemberDescriptor
- Returns:
getInitialSignatureDescriptor
@Nullable
FunctionDescriptor getInitialSignatureDescriptor()
- Returns:
- descriptor that represents initial signature, e.g in case of result SimpleFunctionDescriptor.createRenamedCopy it returns
descriptor before rename
isHiddenToOvercomeSignatureClash
boolean isHiddenToOvercomeSignatureClash()
- Returns:
- true if descriptor signature clashed with some other signature and it's supposed to be legal
See java.nio.CharBuffer
copy
@NotNull
FunctionDescriptor copy(DeclarationDescriptor newOwner,
Modality modality,
Visibility visibility,
CallableMemberDescriptor.Kind kind,
boolean copyOverrides)
- Specified by:
copy in interface CallableMemberDescriptor
isOperator
boolean isOperator()
isInfix
boolean isInfix()
isInline
boolean isInline()
isTailrec
boolean isTailrec()
isHiddenForResolutionEverywhereBesideSupercalls
boolean isHiddenForResolutionEverywhereBesideSupercalls()
isSuspend
boolean isSuspend()
getUserData
@Nullable
<V> V getUserData(FunctionDescriptor.UserDataKey<V> key)
newCopyBuilder
@NotNull
FunctionDescriptor.CopyBuilder<? extends FunctionDescriptor> newCopyBuilder()