org.jetbrains.kotlin.codegen.context
Class MethodContext

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.context.CodegenContext<CallableMemberDescriptor>
      extended by org.jetbrains.kotlin.codegen.context.MethodContext
Direct Known Subclasses:
ConstructorContext

public class MethodContext
extends CodegenContext<CallableMemberDescriptor>


Field Summary
 
Fields inherited from class org.jetbrains.kotlin.codegen.context.CodegenContext
closure
 
Constructor Summary
protected MethodContext(FunctionDescriptor functionDescriptor, OwnerKind contextKind, CodegenContext parentContext, MutableClosure closure, boolean isInliningLambda)
           
 
Method Summary
 StackValue generateReceiver(CallableDescriptor descriptor, GenerationState state, boolean ignoreNoOuter)
           
 FunctionDescriptor getFunctionDescriptor()
           
 org.jetbrains.org.objectweb.asm.Label getMethodEndLabel()
           
 org.jetbrains.org.objectweb.asm.Label getMethodStartLabel()
           
 StackValue getOuterExpression(StackValue prefix, boolean ignoreNoOuter)
           
 CodegenContext getParentContext()
           
 StackValue getReceiverExpression(JetTypeMapper typeMapper)
           
 boolean isInlineFunction()
           
 boolean isInliningLambda()
           
 StackValue lookupInContext(DeclarationDescriptor d, StackValue result, GenerationState state, boolean ignoreNoOuter)
           
 void setMethodEndLabel(org.jetbrains.org.objectweb.asm.Label methodEndLabel)
           
 void setMethodStartLabel(org.jetbrains.org.objectweb.asm.Label methodStartLabel)
           
 java.lang.String toString()
           
 
Methods inherited from class org.jetbrains.kotlin.codegen.context.CodegenContext
accessibleDescriptor, computeOuterExpression, findChildContext, findParentContextWithDescriptor, getAccessor, getAccessor, getAccessors, getCallableDescriptorWithReceiver, getClassOrPackageParentContext, getContextDescriptor, getContextKind, getEnclosingClass, getState, getThisDescriptor, hasThisDescriptor, intoAnonymousClass, intoClass, intoClosure, intoConstructor, intoFunction, intoInlinedLambda, intoMultifileClass, intoMultifileClassPart, intoPackageFacade, intoPackagePart, intoScript, recordSyntheticAccessorIfNeeded, shouldAddChild
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MethodContext

protected MethodContext(@NotNull
                        FunctionDescriptor functionDescriptor,
                        @NotNull
                        OwnerKind contextKind,
                        @NotNull
                        CodegenContext parentContext,
                        @Nullable
                        MutableClosure closure,
                        boolean isInliningLambda)
Method Detail

getParentContext

@NotNull
public CodegenContext getParentContext()
Overrides:
getParentContext in class CodegenContext<CallableMemberDescriptor>

getReceiverExpression

public StackValue getReceiverExpression(JetTypeMapper typeMapper)

lookupInContext

public StackValue lookupInContext(DeclarationDescriptor d,
                                  @Nullable
                                  StackValue result,
                                  GenerationState state,
                                  boolean ignoreNoOuter)
Overrides:
lookupInContext in class CodegenContext<CallableMemberDescriptor>

generateReceiver

@Nullable
public StackValue generateReceiver(@NotNull
                                            CallableDescriptor descriptor,
                                            @NotNull
                                            GenerationState state,
                                            boolean ignoreNoOuter)

getOuterExpression

public StackValue getOuterExpression(StackValue prefix,
                                     boolean ignoreNoOuter)
Overrides:
getOuterExpression in class CodegenContext<CallableMemberDescriptor>

getMethodStartLabel

@Nullable
public org.jetbrains.org.objectweb.asm.Label getMethodStartLabel()

setMethodStartLabel

public void setMethodStartLabel(@NotNull
                                org.jetbrains.org.objectweb.asm.Label methodStartLabel)

getMethodEndLabel

@Nullable
public org.jetbrains.org.objectweb.asm.Label getMethodEndLabel()

setMethodEndLabel

public void setMethodEndLabel(@NotNull
                              org.jetbrains.org.objectweb.asm.Label methodEndLabel)

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

isInlineFunction

public boolean isInlineFunction()

isInliningLambda

public boolean isInliningLambda()

getFunctionDescriptor

@NotNull
public FunctionDescriptor getFunctionDescriptor()