org.jetbrains.jet.codegen.inline
Class FieldRemapper

java.lang.Object
  extended by org.jetbrains.jet.codegen.inline.FieldRemapper
Direct Known Subclasses:
InlinedLambdaRemapper, RegeneratedLambdaFieldRemapper

public class FieldRemapper
extends java.lang.Object


Field Summary
protected  FieldRemapper parent
           
 
Constructor Summary
FieldRemapper(java.lang.String lambdaInternalName, FieldRemapper parent, Parameters methodParams)
           
 
Method Summary
 boolean canProcess(java.lang.String fieldOwner, boolean isFolding)
           
 CapturedParamInfo findField(org.jetbrains.asm4.tree.FieldInsnNode fieldInsnNode)
           
protected  CapturedParamInfo findField(org.jetbrains.asm4.tree.FieldInsnNode fieldInsnNode, java.util.Collection<CapturedParamInfo> captured)
           
 org.jetbrains.asm4.tree.AbstractInsnNode foldFieldAccessChainIfNeeded(java.util.List<org.jetbrains.asm4.tree.AbstractInsnNode> capturedFieldAccess, org.jetbrains.asm4.tree.MethodNode node)
           
 StackValue getFieldForInline(org.jetbrains.asm4.tree.FieldInsnNode node, StackValue prefix)
           
 java.lang.String getLambdaInternalName()
           
 FieldRemapper getParent()
           
 boolean isInsideInliningLambda()
           
 boolean isRoot()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

parent

protected FieldRemapper parent
Constructor Detail

FieldRemapper

public FieldRemapper(@Nullable
                     java.lang.String lambdaInternalName,
                     @Nullable
                     FieldRemapper parent,
                     @NotNull
                     Parameters methodParams)
Method Detail

canProcess

public boolean canProcess(@NotNull
                          java.lang.String fieldOwner,
                          boolean isFolding)

foldFieldAccessChainIfNeeded

@Nullable
public org.jetbrains.asm4.tree.AbstractInsnNode foldFieldAccessChainIfNeeded(@NotNull
                                                                                      java.util.List<org.jetbrains.asm4.tree.AbstractInsnNode> capturedFieldAccess,
                                                                                      @NotNull
                                                                                      org.jetbrains.asm4.tree.MethodNode node)

findField

public CapturedParamInfo findField(@NotNull
                                   org.jetbrains.asm4.tree.FieldInsnNode fieldInsnNode)

findField

@Nullable
protected CapturedParamInfo findField(@NotNull
                                               org.jetbrains.asm4.tree.FieldInsnNode fieldInsnNode,
                                               @NotNull
                                               java.util.Collection<CapturedParamInfo> captured)

getParent

public FieldRemapper getParent()

getLambdaInternalName

public java.lang.String getLambdaInternalName()

isRoot

public boolean isRoot()

getFieldForInline

@Nullable
public StackValue getFieldForInline(@NotNull
                                             org.jetbrains.asm4.tree.FieldInsnNode node,
                                             @Nullable
                                             StackValue prefix)

isInsideInliningLambda

public boolean isInsideInliningLambda()