org.jetbrains.kotlin.codegen.inline
Class MethodInliner

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.inline.MethodInliner

public class MethodInliner
extends java.lang.Object


Nested Class Summary
static class MethodInliner.PointForExternalFinallyBlocks
           
 
Constructor Summary
MethodInliner(org.jetbrains.org.objectweb.asm.tree.MethodNode node, Parameters parameters, InliningContext inliningContext, FieldRemapper nodeRemapper, boolean isSameModule, java.lang.String errorPrefix, SourceMapper sourceMapper, InlineCallSiteInfo inlineCallSiteInfo, InlineOnlySmapSkipper smapSkipper)
           
 
Method Summary
 InlineResult doInline(org.jetbrains.org.objectweb.asm.MethodVisitor adapter, LocalVarRemapper remapper, boolean remapReturn, LabelOwner labelOwner)
           
static CapturedParamInfo findCapturedField(org.jetbrains.org.objectweb.asm.tree.FieldInsnNode node, FieldRemapper fieldRemapper)
           
static java.util.List<MethodInliner.PointForExternalFinallyBlocks> processReturns(org.jetbrains.org.objectweb.asm.tree.MethodNode node, LabelOwner labelOwner, boolean remapReturn, org.jetbrains.org.objectweb.asm.Label endLabel)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MethodInliner

public MethodInliner(@NotNull
                     org.jetbrains.org.objectweb.asm.tree.MethodNode node,
                     @NotNull
                     Parameters parameters,
                     @NotNull
                     InliningContext inliningContext,
                     @NotNull
                     FieldRemapper nodeRemapper,
                     boolean isSameModule,
                     @NotNull
                     java.lang.String errorPrefix,
                     @NotNull
                     SourceMapper sourceMapper,
                     @NotNull
                     InlineCallSiteInfo inlineCallSiteInfo,
                     @Nullable
                     InlineOnlySmapSkipper smapSkipper)
Method Detail

doInline

@NotNull
public InlineResult doInline(@NotNull
                                     org.jetbrains.org.objectweb.asm.MethodVisitor adapter,
                                     @NotNull
                                     LocalVarRemapper remapper,
                                     boolean remapReturn,
                                     @NotNull
                                     LabelOwner labelOwner)

findCapturedField

@NotNull
public static CapturedParamInfo findCapturedField(@NotNull
                                                          org.jetbrains.org.objectweb.asm.tree.FieldInsnNode node,
                                                          @NotNull
                                                          FieldRemapper fieldRemapper)

processReturns

@NotNull
public static java.util.List<MethodInliner.PointForExternalFinallyBlocks> processReturns(@NotNull
                                                                                                 org.jetbrains.org.objectweb.asm.tree.MethodNode node,
                                                                                                 @NotNull
                                                                                                 LabelOwner labelOwner,
                                                                                                 boolean remapReturn,
                                                                                                 @Nullable
                                                                                                 org.jetbrains.org.objectweb.asm.Label endLabel)