org.jetbrains.kotlin.codegen.inline
Class InliningContext

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.inline.InliningContext
Direct Known Subclasses:
RegeneratedClassContext, RootInliningContext

public class InliningContext
extends java.lang.Object


Field Summary
 boolean classRegeneration
           
 java.util.Map<java.lang.Integer,LambdaInfo> expressionMap
           
 boolean isInliningLambda
           
 NameGenerator nameGenerator
           
 ReifiedTypeInliner reifedTypeInliner
           
 GenerationState state
           
 java.util.Map<java.lang.String,java.lang.String> typeMapping
           
 
Constructor Summary
protected InliningContext(InliningContext parent, java.util.Map<java.lang.Integer,LambdaInfo> map, GenerationState state, NameGenerator nameGenerator, java.util.Map<java.lang.String,java.lang.String> typeMapping, ReifiedTypeInliner reifedTypeInliner, boolean isInliningLambda, boolean classRegeneration)
           
 
Method Summary
 java.lang.String getClassNameToInline()
           
 InliningContext getParent()
           
 RootInliningContext getRoot()
           
 boolean isInliningLambdaRootContext()
           
 boolean isRoot()
           
 InliningContext subInline(NameGenerator generator)
           
 InliningContext subInline(NameGenerator generator, java.util.Map<java.lang.String,java.lang.String> additionalTypeMappings)
           
 InliningContext subInline(NameGenerator generator, java.util.Map<java.lang.String,java.lang.String> additionalTypeMappings, boolean isInliningLambda)
           
 InliningContext subInlineLambda(LambdaInfo lambdaInfo)
           
 InliningContext subInlineWithClassRegeneration(NameGenerator generator, java.util.Map<java.lang.String,java.lang.String> additionalTypeMappings, AnonymousObjectGeneration anonymousObjectGeneration)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

expressionMap

public final java.util.Map<java.lang.Integer,LambdaInfo> expressionMap

state

public final GenerationState state

nameGenerator

public final NameGenerator nameGenerator

typeMapping

public final java.util.Map<java.lang.String,java.lang.String> typeMapping

reifedTypeInliner

public final ReifiedTypeInliner reifedTypeInliner

isInliningLambda

public final boolean isInliningLambda

classRegeneration

public final boolean classRegeneration
Constructor Detail

InliningContext

protected InliningContext(@Nullable
                          InliningContext parent,
                          @NotNull
                          java.util.Map<java.lang.Integer,LambdaInfo> map,
                          @NotNull
                          GenerationState state,
                          @NotNull
                          NameGenerator nameGenerator,
                          @NotNull
                          java.util.Map<java.lang.String,java.lang.String> typeMapping,
                          @NotNull
                          ReifiedTypeInliner reifedTypeInliner,
                          boolean isInliningLambda,
                          boolean classRegeneration)
Method Detail

subInline

public InliningContext subInline(NameGenerator generator)

subInlineLambda

public InliningContext subInlineLambda(LambdaInfo lambdaInfo)

subInline

public InliningContext subInline(NameGenerator generator,
                                 java.util.Map<java.lang.String,java.lang.String> additionalTypeMappings)

subInlineWithClassRegeneration

public InliningContext subInlineWithClassRegeneration(@NotNull
                                                      NameGenerator generator,
                                                      @NotNull
                                                      java.util.Map<java.lang.String,java.lang.String> additionalTypeMappings,
                                                      @NotNull
                                                      AnonymousObjectGeneration anonymousObjectGeneration)

subInline

public InliningContext subInline(NameGenerator generator,
                                 java.util.Map<java.lang.String,java.lang.String> additionalTypeMappings,
                                 boolean isInliningLambda)

isRoot

public boolean isRoot()

getRoot

@NotNull
public RootInliningContext getRoot()

getParent

@Nullable
public InliningContext getParent()

isInliningLambdaRootContext

public boolean isInliningLambdaRootContext()

getClassNameToInline

public java.lang.String getClassNameToInline()