org.jetbrains.jet.codegen
Class ClosureCodegen

java.lang.Object
  extended by org.jetbrains.jet.codegen.ParentCodegenAwareImpl
      extended by org.jetbrains.jet.codegen.ClosureCodegen
All Implemented Interfaces:
ParentCodegenAware

public class ClosureCodegen
extends ParentCodegenAwareImpl


Field Summary
 
Fields inherited from class org.jetbrains.jet.codegen.ParentCodegenAwareImpl
bindingContext, state, typeMapper
 
Constructor Summary
ClosureCodegen(GenerationState state, com.intellij.psi.PsiElement fun, FunctionDescriptor funDescriptor, ClassDescriptor samInterface, org.jetbrains.org.objectweb.asm.Type closureSuperClass, CodegenContext parentContext, JvmAnnotationNames.KotlinSyntheticClass.Kind syntheticClassKind, LocalLookup localLookup, FunctionGenerationStrategy strategy, MemberCodegen<?> parentCodegen)
           
 
Method Summary
static java.util.List<FieldInfo> calculateConstructorParameters(JetTypeMapper typeMapper, CalculatedClosure closure, org.jetbrains.org.objectweb.asm.Type ownerType)
           
 void gen()
           
static org.jetbrains.org.objectweb.asm.commons.Method generateConstructor(ClassBuilder cv, java.util.List<FieldInfo> args, com.intellij.psi.PsiElement fun, org.jetbrains.org.objectweb.asm.Type superClass, GenerationState state, int flags)
           
static FunctionDescriptor getInvokeFunction(FunctionDescriptor funDescriptor)
           
 StackValue putInstanceOnStack(org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v, ExpressionCodegen codegen)
           
 
Methods inherited from class org.jetbrains.jet.codegen.ParentCodegenAwareImpl
getParentCodegen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClosureCodegen

public ClosureCodegen(@NotNull
                      GenerationState state,
                      @NotNull
                      com.intellij.psi.PsiElement fun,
                      @NotNull
                      FunctionDescriptor funDescriptor,
                      @Nullable
                      ClassDescriptor samInterface,
                      @NotNull
                      org.jetbrains.org.objectweb.asm.Type closureSuperClass,
                      @NotNull
                      CodegenContext parentContext,
                      @NotNull
                      JvmAnnotationNames.KotlinSyntheticClass.Kind syntheticClassKind,
                      @NotNull
                      LocalLookup localLookup,
                      @NotNull
                      FunctionGenerationStrategy strategy,
                      @Nullable
                      MemberCodegen<?> parentCodegen)
Method Detail

gen

public void gen()

putInstanceOnStack

@NotNull
public StackValue putInstanceOnStack(@NotNull
                                             org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v,
                                             @NotNull
                                             ExpressionCodegen codegen)

generateConstructor

public static org.jetbrains.org.objectweb.asm.commons.Method generateConstructor(@NotNull
                                                                                 ClassBuilder cv,
                                                                                 @NotNull
                                                                                 java.util.List<FieldInfo> args,
                                                                                 @Nullable
                                                                                 com.intellij.psi.PsiElement fun,
                                                                                 @NotNull
                                                                                 org.jetbrains.org.objectweb.asm.Type superClass,
                                                                                 @NotNull
                                                                                 GenerationState state,
                                                                                 int flags)

calculateConstructorParameters

@NotNull
public static java.util.List<FieldInfo> calculateConstructorParameters(@NotNull
                                                                               JetTypeMapper typeMapper,
                                                                               @NotNull
                                                                               CalculatedClosure closure,
                                                                               @NotNull
                                                                               org.jetbrains.org.objectweb.asm.Type ownerType)

getInvokeFunction

public static FunctionDescriptor getInvokeFunction(FunctionDescriptor funDescriptor)