org.jetbrains.kotlin.codegen.binding
Class CodegenBinding

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.binding.CodegenBinding

public class CodegenBinding
extends java.lang.Object


Field Summary
static WritableSlice<ClassDescriptor,org.jetbrains.org.objectweb.asm.Type> ASM_TYPE
           
static WritableSlice<FunctionDescriptor,ClassDescriptor> CLASS_FOR_FUNCTION
           
static WritableSlice<ScriptDescriptor,ClassDescriptor> CLASS_FOR_SCRIPT
           
static WritableSlice<ClassDescriptor,MutableClosure> CLOSURE
           
static WritableSlice<ClassDescriptor,java.lang.Boolean> ENUM_ENTRY_CLASS_NEED_SUBCLASS
           
static WritableSlice<ClassDescriptor,java.util.Collection<ClassDescriptor>> INNER_CLASSES
           
static WritableSlice<JetWhenExpression,WhenByEnumsMapping> MAPPING_FOR_WHEN_BY_ENUM
           
static WritableSlice<java.lang.String,java.util.List<WhenByEnumsMapping>> MAPPINGS_FOR_WHENS_BY_ENUM_IN_CLASS_FILE
           
static WritableSlice<JetExpression,SamType> SAM_VALUE
           
 
Method Summary
static ClassDescriptor anonymousClassForFunction(BindingContext bindingContext, FunctionDescriptor descriptor)
           
static org.jetbrains.org.objectweb.asm.Type asmTypeForAnonymousClass(BindingContext bindingContext, FunctionDescriptor descriptor)
           
static org.jetbrains.org.objectweb.asm.Type asmTypeForAnonymousClass(BindingContext bindingContext, JetElement expression)
           
static org.jetbrains.org.objectweb.asm.Type asmTypeForScriptDescriptor(BindingContext bindingContext, ScriptDescriptor scriptDescriptor)
           
static org.jetbrains.org.objectweb.asm.Type asmTypeForScriptPsi(BindingContext bindingContext, JetScript script)
           
static boolean canHaveOuter(BindingContext bindingContext, ClassDescriptor classDescriptor)
           
static boolean enumEntryNeedSubclass(BindingContext bindingContext, ClassDescriptor classDescriptor)
           
static boolean enumEntryNeedSubclass(BindingContext bindingContext, JetEnumEntry enumEntry)
           
static java.util.Collection<ClassDescriptor> getAllInnerClasses(BindingContext bindingContext, ClassDescriptor outermostClass)
           
static org.jetbrains.org.objectweb.asm.Type getAsmType(BindingContext bindingContext, ClassDescriptor klass)
           
static void initTrace(GenerationState state)
           
static boolean isLocalFunOrLambda(DeclarationDescriptor fd)
           
static boolean isLocalNamedFun(DeclarationDescriptor fd)
           
static void registerClassNameForScript(BindingTrace trace, JetScript script, org.jetbrains.org.objectweb.asm.Type asmType)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

CLOSURE

public static final WritableSlice<ClassDescriptor,MutableClosure> CLOSURE

CLASS_FOR_FUNCTION

public static final WritableSlice<FunctionDescriptor,ClassDescriptor> CLASS_FOR_FUNCTION

CLASS_FOR_SCRIPT

public static final WritableSlice<ScriptDescriptor,ClassDescriptor> CLASS_FOR_SCRIPT

ASM_TYPE

public static final WritableSlice<ClassDescriptor,org.jetbrains.org.objectweb.asm.Type> ASM_TYPE

ENUM_ENTRY_CLASS_NEED_SUBCLASS

public static final WritableSlice<ClassDescriptor,java.lang.Boolean> ENUM_ENTRY_CLASS_NEED_SUBCLASS

INNER_CLASSES

public static final WritableSlice<ClassDescriptor,java.util.Collection<ClassDescriptor>> INNER_CLASSES

SAM_VALUE

public static final WritableSlice<JetExpression,SamType> SAM_VALUE

MAPPING_FOR_WHEN_BY_ENUM

public static final WritableSlice<JetWhenExpression,WhenByEnumsMapping> MAPPING_FOR_WHEN_BY_ENUM

MAPPINGS_FOR_WHENS_BY_ENUM_IN_CLASS_FILE

public static final WritableSlice<java.lang.String,java.util.List<WhenByEnumsMapping>> MAPPINGS_FOR_WHENS_BY_ENUM_IN_CLASS_FILE
Method Detail

initTrace

public static void initTrace(@NotNull
                             GenerationState state)

enumEntryNeedSubclass

public static boolean enumEntryNeedSubclass(BindingContext bindingContext,
                                            JetEnumEntry enumEntry)

enumEntryNeedSubclass

public static boolean enumEntryNeedSubclass(BindingContext bindingContext,
                                            ClassDescriptor classDescriptor)

asmTypeForScriptDescriptor

@NotNull
public static org.jetbrains.org.objectweb.asm.Type asmTypeForScriptDescriptor(BindingContext bindingContext,
                                                                                      @NotNull
                                                                                      ScriptDescriptor scriptDescriptor)

asmTypeForScriptPsi

@NotNull
public static org.jetbrains.org.objectweb.asm.Type asmTypeForScriptPsi(BindingContext bindingContext,
                                                                               @NotNull
                                                                               JetScript script)

anonymousClassForFunction

@NotNull
public static ClassDescriptor anonymousClassForFunction(@NotNull
                                                                BindingContext bindingContext,
                                                                @NotNull
                                                                FunctionDescriptor descriptor)

asmTypeForAnonymousClass

@NotNull
public static org.jetbrains.org.objectweb.asm.Type asmTypeForAnonymousClass(@NotNull
                                                                                    BindingContext bindingContext,
                                                                                    @NotNull
                                                                                    JetElement expression)

asmTypeForAnonymousClass

@NotNull
public static org.jetbrains.org.objectweb.asm.Type asmTypeForAnonymousClass(@NotNull
                                                                                    BindingContext bindingContext,
                                                                                    @NotNull
                                                                                    FunctionDescriptor descriptor)

canHaveOuter

public static boolean canHaveOuter(@NotNull
                                   BindingContext bindingContext,
                                   @NotNull
                                   ClassDescriptor classDescriptor)

registerClassNameForScript

public static void registerClassNameForScript(@NotNull
                                              BindingTrace trace,
                                              @NotNull
                                              JetScript script,
                                              @NotNull
                                              org.jetbrains.org.objectweb.asm.Type asmType)

isLocalNamedFun

public static boolean isLocalNamedFun(@Nullable
                                      DeclarationDescriptor fd)

isLocalFunOrLambda

public static boolean isLocalFunOrLambda(@Nullable
                                         DeclarationDescriptor fd)

getAsmType

@NotNull
public static org.jetbrains.org.objectweb.asm.Type getAsmType(@NotNull
                                                                      BindingContext bindingContext,
                                                                      @NotNull
                                                                      ClassDescriptor klass)

getAllInnerClasses

@NotNull
public static java.util.Collection<ClassDescriptor> getAllInnerClasses(@NotNull
                                                                               BindingContext bindingContext,
                                                                               @NotNull
                                                                               ClassDescriptor outermostClass)