org.jetbrains.jet.codegen.context
Class MethodContext

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

public class MethodContext
extends CodegenContext<CallableMemberDescriptor>


Field Summary
 
Fields inherited from class org.jetbrains.jet.codegen.context.CodegenContext
closure, STATIC
 
Constructor Summary
protected MethodContext(FunctionDescriptor contextDescriptor, OwnerKind contextKind, CodegenContext parentContext, MutableClosure closure, boolean isInliningLambda)
           
 
Method Summary
 StackValue generateReceiver(CallableDescriptor descriptor, GenerationState state, boolean ignoreNoOuter)
           
 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()
           
 boolean isStatic()
           
 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.jet.codegen.context.CodegenContext
accessibleFunctionDescriptor, accessiblePropertyDescriptor, findChildContext, findParentContextWithDescriptor, getAccessor, getAccessor, getAccessors, getCallableDescriptorWithReceiver, getClassOrPackageParentContext, getContextDescriptor, getContextKind, getEnclosingClass, getThisDescriptor, hasThisDescriptor, initOuterExpression, intoAnonymousClass, intoClass, intoClosure, intoConstructor, intoFunction, intoInlinedLambda, intoPackageFacade, intoPackagePart, intoScript, recordSyntheticAccessorIfNeeded, 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 contextDescriptor,
                        @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)

isStatic

public boolean isStatic()
Specified by:
isStatic in class CodegenContext<CallableMemberDescriptor>

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()