org.jetbrains.kotlin.codegen
Class StackValue.StackValueWithSimpleReceiver

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.StackValue
      extended by org.jetbrains.kotlin.codegen.StackValue.StackValueWithSimpleReceiver
Direct Known Subclasses:
StackValue.CollectionElement, StackValue.DelegatedForComplexReceiver, StackValue.Field, StackValue.FieldForSharedVar, StackValue.Shared
Enclosing class:
StackValue

public abstract static class StackValue.StackValueWithSimpleReceiver
extends StackValue


Nested Class Summary
 
Nested classes/interfaces inherited from class org.jetbrains.kotlin.codegen.StackValue
StackValue.CallReceiver, StackValue.CollectionElement, StackValue.CollectionElementReceiver, StackValue.Constant, StackValue.DelegatedForComplexReceiver, StackValue.Field, StackValue.FieldForSharedVar, StackValue.Local, StackValue.OnStack, StackValue.Receiver, StackValue.Shared, StackValue.StackValueWithSimpleReceiver
 
Field Summary
 boolean isStaticPut
           
 boolean isStaticStore
           
 StackValue receiver
           
 
Fields inherited from class org.jetbrains.kotlin.codegen.StackValue
LOCAL_0, type
 
Constructor Summary
StackValue.StackValueWithSimpleReceiver(org.jetbrains.org.objectweb.asm.Type type, boolean isStaticPut, boolean isStaticStore, StackValue receiver, boolean canHaveSideEffects)
           
 
Method Summary
 void dup(org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v, boolean withWriteReceiver)
           
 boolean isNonStaticAccess(boolean isRead)
           
 void putReceiver(org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v, boolean isRead)
           
 int receiverSize()
           
 void store(StackValue rightSide, org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v, boolean skipReceiver)
           
 
Methods inherited from class org.jetbrains.kotlin.codegen.StackValue
arrayElement, canHaveSideEffects, changeReceiverForFieldAndSharedVar, cmp, coerce, coerceFrom, coerceTo, coercion, collectionElement, complexWriteReadReceiver, condJump, constant, couldSkipReceiverOnStaticCall, expression, field, field, fieldForSharedVar, fieldForSharedVar, functionCall, local, moveToTopOfStack, none, not, onStack, operation, postIncrement, preIncrement, preIncrementForLocalVar, property, put, put, putAsBoolean, putSelector, putUnitInstance, receiver, receiverWithoutReceiverArgument, refType, shared, sharedTypeForType, singleton, store, storeSelector, thisOrOuter, unit
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

isStaticPut

public final boolean isStaticPut

isStaticStore

public final boolean isStaticStore

receiver

@NotNull
public final StackValue receiver
Constructor Detail

StackValue.StackValueWithSimpleReceiver

public StackValue.StackValueWithSimpleReceiver(@NotNull
                                               org.jetbrains.org.objectweb.asm.Type type,
                                               boolean isStaticPut,
                                               boolean isStaticStore,
                                               @NotNull
                                               StackValue receiver,
                                               boolean canHaveSideEffects)
Method Detail

putReceiver

public void putReceiver(@NotNull
                        org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v,
                        boolean isRead)
Overrides:
putReceiver in class StackValue

isNonStaticAccess

public boolean isNonStaticAccess(boolean isRead)
Overrides:
isNonStaticAccess in class StackValue

receiverSize

public int receiverSize()

dup

public void dup(@NotNull
                org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v,
                boolean withWriteReceiver)
Overrides:
dup in class StackValue

store

public void store(@NotNull
                  StackValue rightSide,
                  @NotNull
                  org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v,
                  boolean skipReceiver)
Overrides:
store in class StackValue