kotlin.jvm.internal
Class MutablePropertyReference2Impl

java.lang.Object
  extended by kotlin.jvm.internal.CallableReference
      extended by kotlin.jvm.internal.PropertyReference
          extended by kotlin.jvm.internal.MutablePropertyReference
              extended by kotlin.jvm.internal.MutablePropertyReference2
                  extended by kotlin.jvm.internal.MutablePropertyReference2Impl
All Implemented Interfaces:
kotlin.Function, kotlin.jvm.functions.Function2, kotlin.reflect.KAnnotatedElement, kotlin.reflect.KCallable, kotlin.reflect.KMutableProperty, kotlin.reflect.KMutableProperty2, kotlin.reflect.KProperty, kotlin.reflect.KProperty2

public class MutablePropertyReference2Impl
extends MutablePropertyReference2


Nested Class Summary
 
Nested classes/interfaces inherited from interface kotlin.reflect.KMutableProperty2
kotlin.reflect.KMutableProperty2.Setter<D,E,R>
 
Nested classes/interfaces inherited from interface kotlin.reflect.KProperty2
kotlin.reflect.KProperty2.Getter<D,E,R>
 
Nested classes/interfaces inherited from interface kotlin.reflect.KProperty
kotlin.reflect.KProperty.Accessor<R>
 
Field Summary
 
Fields inherited from class kotlin.jvm.internal.CallableReference
reflected
 
Constructor Summary
MutablePropertyReference2Impl(kotlin.reflect.KDeclarationContainer owner, String name, String signature)
           
 
Method Summary
 Object get(Object receiver1, Object receiver2)
           
 String getName()
           
 kotlin.reflect.KDeclarationContainer getOwner()
           
 String getSignature()
           
 void set(Object receiver1, Object receiver2, Object value)
           
 
Methods inherited from class kotlin.jvm.internal.MutablePropertyReference2
computeReflected, getGetter, getSetter, invoke
 
Methods inherited from class kotlin.jvm.internal.PropertyReference
equals, hashCode, toString
 
Methods inherited from class kotlin.jvm.internal.CallableReference
call, callBy, compute, getAnnotations, getParameters, getReflected, getReturnType
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface kotlin.reflect.KCallable
call, callBy, getParameters, getReturnType
 
Methods inherited from interface kotlin.reflect.KAnnotatedElement
getAnnotations
 

Constructor Detail

MutablePropertyReference2Impl

public MutablePropertyReference2Impl(kotlin.reflect.KDeclarationContainer owner,
                                     String name,
                                     String signature)
Method Detail

getOwner

public kotlin.reflect.KDeclarationContainer getOwner()
Overrides:
getOwner in class CallableReference
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
Overrides:
getName in class CallableReference
Returns:
Kotlin name of the callable, the one which was declared in the source code (@JvmName doesn't change it)

getSignature

public String getSignature()
Overrides:
getSignature in class CallableReference
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.

get

public Object get(Object receiver1,
                  Object receiver2)
Specified by:
get in interface kotlin.reflect.KProperty2
Overrides:
get in class MutablePropertyReference2

set

public void set(Object receiver1,
                Object receiver2,
                Object value)
Specified by:
set in interface kotlin.reflect.KMutableProperty2
Overrides:
set in class MutablePropertyReference2


Copyright © 2016. All Rights Reserved.