kotlin.jvm.internal
Class CallableReference
java.lang.Object
kotlin.jvm.internal.CallableReference
- All Implemented Interfaces:
- kotlin.reflect.KAnnotatedElement, kotlin.reflect.KCallable
- Direct Known Subclasses:
- PropertyReference
public abstract class CallableReference
- extends Object
- implements kotlin.reflect.KCallable
A superclass for all classes generated by Kotlin compiler for callable references.
All methods from reflection API should be implemented here to throw informative exceptions (see KotlinReflectionNotSupportedError)
Field Summary |
protected kotlin.reflect.KCallable |
reflected
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
reflected
protected kotlin.reflect.KCallable reflected
CallableReference
public CallableReference()
computeReflected
protected abstract kotlin.reflect.KCallable computeReflected()
getOwner
public kotlin.reflect.KDeclarationContainer getOwner()
- Returns:
- the class or package where the callable should be located, usually specified on the LHS of the '::' operator
getName
public String getName()
- Specified by:
getName
in interface kotlin.reflect.KCallable
- Returns:
- Kotlin name of the callable, the one which was declared in the source code (@JvmName doesn't change it)
getSignature
public String getSignature()
- Returns:
- JVM signature of the callable, e.g. "println(Ljava/lang/Object;)V". If this is a property reference,
returns the JVM signature of its getter, e.g. "getFoo(Ljava/lang/String;)I". If the property has no getter in the bytecode
(e.g. private property in a class), it's still the signature of the imaginary default getter that would be generated otherwise.
Note that technically the signature itself is not even used as a signature per se in reflection implementation,
but only as a unique and unambiguous way to map a function/property descriptor to a string.
getParameters
public List<kotlin.reflect.KParameter> getParameters()
- Specified by:
getParameters
in interface kotlin.reflect.KCallable
getReturnType
public kotlin.reflect.KType getReturnType()
- Specified by:
getReturnType
in interface kotlin.reflect.KCallable
getAnnotations
public List<Annotation> getAnnotations()
- Specified by:
getAnnotations
in interface kotlin.reflect.KAnnotatedElement
call
public Object call(@NotNull
Object... args)
- Specified by:
call
in interface kotlin.reflect.KCallable
callBy
public Object callBy(@NotNull
Map args)
- Specified by:
callBy
in interface kotlin.reflect.KCallable
compute
public kotlin.reflect.KCallable compute()
getReflected
protected kotlin.reflect.KCallable getReflected()
Copyright © 2016. All Rights Reserved.