org.jetbrains.jet.codegen
Class AsmUtil

java.lang.Object
  extended by org.jetbrains.jet.codegen.AsmUtil

public class AsmUtil
extends java.lang.Object


Field Summary
static java.lang.String CAPTURED_RECEIVER_FIELD
           
static java.lang.String CAPTURED_THIS_FIELD
           
static int NO_FLAG_PACKAGE_PRIVATE
           
 
Method Summary
static java.lang.String asmDescByFqNameWithoutInnerClasses(FqName fqName)
           
static org.jetbrains.asm4.Type asmTypeByFqNameWithoutInnerClasses(FqName fqName)
           
static org.jetbrains.asm4.Type boxType(org.jetbrains.asm4.Type type)
           
static org.jetbrains.asm4.Type comparisonOperandType(org.jetbrains.asm4.Type left, org.jetbrains.asm4.Type right)
           
static org.jetbrains.asm4.Type correctElementType(org.jetbrains.asm4.Type type)
           
static void dup(org.jetbrains.asm4.commons.InstructionAdapter v, org.jetbrains.asm4.Type type)
           
static int genAssignInstanceFieldFromParam(FieldInfo info, int index, org.jetbrains.asm4.commons.InstructionAdapter iv)
           
static void genClosureFields(CalculatedClosure closure, ClassBuilder v, JetTypeMapper typeMapper)
           
static StackValue genEqualsForExpressionsOnStack(org.jetbrains.asm4.commons.InstructionAdapter v, com.intellij.psi.tree.IElementType opToken, org.jetbrains.asm4.Type leftType, org.jetbrains.asm4.Type rightType)
           
static void genIncrement(org.jetbrains.asm4.Type expectedType, int myDelta, org.jetbrains.asm4.commons.InstructionAdapter v)
           
static void genInvokeAppendMethod(org.jetbrains.asm4.commons.InstructionAdapter v, org.jetbrains.asm4.Type type)
           
static void genMethodThrow(org.jetbrains.asm4.MethodVisitor mv, java.lang.String exception, java.lang.String message)
           
static org.jetbrains.asm4.Type genNegate(org.jetbrains.asm4.Type expectedType, org.jetbrains.asm4.commons.InstructionAdapter v)
           
static void genNotNullAssertionForField(org.jetbrains.asm4.commons.InstructionAdapter v, GenerationState state, PropertyDescriptor descriptor)
           
static void genNotNullAssertionForMethod(org.jetbrains.asm4.commons.InstructionAdapter v, GenerationState state, ResolvedCall resolvedCall)
           
static void genNotNullAssertionsForParameters(org.jetbrains.asm4.commons.InstructionAdapter v, GenerationState state, FunctionDescriptor descriptor, FrameMap frameMap)
           
static void genStringBuilderConstructor(org.jetbrains.asm4.commons.InstructionAdapter v)
           
static void genThrow(org.jetbrains.asm4.MethodVisitor mv, java.lang.String exception, java.lang.String message)
           
static StackValue genToString(org.jetbrains.asm4.commons.InstructionAdapter v, StackValue receiver, org.jetbrains.asm4.Type receiverType)
           
static int getDeprecatedAccessFlag(MemberDescriptor descriptor)
           
static int getMethodAsmFlags(FunctionDescriptor functionDescriptor, OwnerKind kind)
           
static org.jetbrains.asm4.Type getTraitImplThisParameterType(ClassDescriptor traitDescriptor, JetTypeMapper typeMapper)
           
static int getVisibilityAccessFlag(MemberDescriptor descriptor)
           
static int getVisibilityAccessFlagForClass(ClassDescriptor descriptor)
           
static int getVisibilityForSpecialPropertyBackingField(PropertyDescriptor propertyDescriptor, boolean isDelegate)
           
static boolean isAbstractMethod(FunctionDescriptor functionDescriptor, OwnerKind kind)
           
static boolean isClassObjectWithBackingFieldsInOuter(DeclarationDescriptor classObject)
           
static boolean isIntPrimitive(org.jetbrains.asm4.Type type)
           
static boolean isNumberPrimitive(org.jetbrains.asm4.Type type)
           
static boolean isPrimitive(org.jetbrains.asm4.Type type)
           
static boolean isPrimitiveNumberClassDescriptor(DeclarationDescriptor descriptor)
           
static boolean isPropertyWithBackingFieldCopyInOuterClass(PropertyDescriptor propertyDescriptor)
           
static boolean isPropertyWithBackingFieldInOuterClass(PropertyDescriptor propertyDescriptor)
           
static boolean isStatic(OwnerKind kind)
           
static boolean isStaticMethod(OwnerKind kind, FunctionDescriptor functionDescriptor)
           
static void pop(org.jetbrains.asm4.commons.InstructionAdapter v, org.jetbrains.asm4.Type type)
           
static void pushDefaultPrimitiveValueOnStack(org.jetbrains.asm4.Type type, org.jetbrains.asm4.commons.InstructionAdapter v)
           
static void pushDefaultValueOnStack(org.jetbrains.asm4.Type type, org.jetbrains.asm4.commons.InstructionAdapter v)
           
static java.lang.String shortNameByAsmType(org.jetbrains.asm4.Type type)
           
static void swap(org.jetbrains.asm4.commons.InstructionAdapter v, org.jetbrains.asm4.Type stackTop, org.jetbrains.asm4.Type afterTop)
           
static org.jetbrains.asm4.Type unboxType(org.jetbrains.asm4.Type boxedType)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NO_FLAG_PACKAGE_PRIVATE

public static final int NO_FLAG_PACKAGE_PRIVATE
See Also:
Constant Field Values

CAPTURED_RECEIVER_FIELD

public static final java.lang.String CAPTURED_RECEIVER_FIELD
See Also:
Constant Field Values

CAPTURED_THIS_FIELD

public static final java.lang.String CAPTURED_THIS_FIELD
See Also:
Constant Field Values
Method Detail

boxType

@NotNull
public static org.jetbrains.asm4.Type boxType(@NotNull
                                                      org.jetbrains.asm4.Type type)

unboxType

@NotNull
public static org.jetbrains.asm4.Type unboxType(@NotNull
                                                        org.jetbrains.asm4.Type boxedType)

isIntPrimitive

public static boolean isIntPrimitive(org.jetbrains.asm4.Type type)

isNumberPrimitive

public static boolean isNumberPrimitive(org.jetbrains.asm4.Type type)

isPrimitive

public static boolean isPrimitive(org.jetbrains.asm4.Type type)

isPrimitiveNumberClassDescriptor

public static boolean isPrimitiveNumberClassDescriptor(DeclarationDescriptor descriptor)

correctElementType

public static org.jetbrains.asm4.Type correctElementType(org.jetbrains.asm4.Type type)

isAbstractMethod

public static boolean isAbstractMethod(FunctionDescriptor functionDescriptor,
                                       OwnerKind kind)

isStaticMethod

public static boolean isStaticMethod(OwnerKind kind,
                                     FunctionDescriptor functionDescriptor)

isStatic

public static boolean isStatic(OwnerKind kind)

getMethodAsmFlags

public static int getMethodAsmFlags(FunctionDescriptor functionDescriptor,
                                    OwnerKind kind)

getVisibilityAccessFlag

public static int getVisibilityAccessFlag(@NotNull
                                          MemberDescriptor descriptor)

getVisibilityAccessFlagForClass

public static int getVisibilityAccessFlagForClass(ClassDescriptor descriptor)

getDeprecatedAccessFlag

public static int getDeprecatedAccessFlag(@NotNull
                                          MemberDescriptor descriptor)

getTraitImplThisParameterType

@NotNull
public static org.jetbrains.asm4.Type getTraitImplThisParameterType(@NotNull
                                                                            ClassDescriptor traitDescriptor,
                                                                            @NotNull
                                                                            JetTypeMapper typeMapper)

genThrow

public static void genThrow(org.jetbrains.asm4.MethodVisitor mv,
                            java.lang.String exception,
                            java.lang.String message)

genMethodThrow

public static void genMethodThrow(org.jetbrains.asm4.MethodVisitor mv,
                                  java.lang.String exception,
                                  java.lang.String message)

genClosureFields

public static void genClosureFields(CalculatedClosure closure,
                                    ClassBuilder v,
                                    JetTypeMapper typeMapper)

genAssignInstanceFieldFromParam

public static int genAssignInstanceFieldFromParam(FieldInfo info,
                                                  int index,
                                                  org.jetbrains.asm4.commons.InstructionAdapter iv)

genStringBuilderConstructor

public static void genStringBuilderConstructor(org.jetbrains.asm4.commons.InstructionAdapter v)

genInvokeAppendMethod

public static void genInvokeAppendMethod(org.jetbrains.asm4.commons.InstructionAdapter v,
                                         org.jetbrains.asm4.Type type)

genToString

public static StackValue genToString(org.jetbrains.asm4.commons.InstructionAdapter v,
                                     StackValue receiver,
                                     org.jetbrains.asm4.Type receiverType)

genEqualsForExpressionsOnStack

public static StackValue genEqualsForExpressionsOnStack(org.jetbrains.asm4.commons.InstructionAdapter v,
                                                        com.intellij.psi.tree.IElementType opToken,
                                                        org.jetbrains.asm4.Type leftType,
                                                        org.jetbrains.asm4.Type rightType)

genIncrement

public static void genIncrement(org.jetbrains.asm4.Type expectedType,
                                int myDelta,
                                org.jetbrains.asm4.commons.InstructionAdapter v)

genNegate

public static org.jetbrains.asm4.Type genNegate(org.jetbrains.asm4.Type expectedType,
                                                org.jetbrains.asm4.commons.InstructionAdapter v)

swap

public static void swap(org.jetbrains.asm4.commons.InstructionAdapter v,
                        org.jetbrains.asm4.Type stackTop,
                        org.jetbrains.asm4.Type afterTop)

genNotNullAssertionsForParameters

public static void genNotNullAssertionsForParameters(@NotNull
                                                     org.jetbrains.asm4.commons.InstructionAdapter v,
                                                     @NotNull
                                                     GenerationState state,
                                                     @NotNull
                                                     FunctionDescriptor descriptor,
                                                     @NotNull
                                                     FrameMap frameMap)

genNotNullAssertionForField

public static void genNotNullAssertionForField(@NotNull
                                               org.jetbrains.asm4.commons.InstructionAdapter v,
                                               @NotNull
                                               GenerationState state,
                                               @NotNull
                                               PropertyDescriptor descriptor)

genNotNullAssertionForMethod

public static void genNotNullAssertionForMethod(@NotNull
                                                org.jetbrains.asm4.commons.InstructionAdapter v,
                                                @NotNull
                                                GenerationState state,
                                                @NotNull
                                                ResolvedCall resolvedCall)

pushDefaultValueOnStack

public static void pushDefaultValueOnStack(@NotNull
                                           org.jetbrains.asm4.Type type,
                                           @NotNull
                                           org.jetbrains.asm4.commons.InstructionAdapter v)

pushDefaultPrimitiveValueOnStack

public static void pushDefaultPrimitiveValueOnStack(@NotNull
                                                    org.jetbrains.asm4.Type type,
                                                    @NotNull
                                                    org.jetbrains.asm4.commons.InstructionAdapter v)

isPropertyWithBackingFieldInOuterClass

public static boolean isPropertyWithBackingFieldInOuterClass(@NotNull
                                                             PropertyDescriptor propertyDescriptor)

getVisibilityForSpecialPropertyBackingField

public static int getVisibilityForSpecialPropertyBackingField(@NotNull
                                                              PropertyDescriptor propertyDescriptor,
                                                              boolean isDelegate)

isPropertyWithBackingFieldCopyInOuterClass

public static boolean isPropertyWithBackingFieldCopyInOuterClass(@NotNull
                                                                 PropertyDescriptor propertyDescriptor)

isClassObjectWithBackingFieldsInOuter

public static boolean isClassObjectWithBackingFieldsInOuter(@NotNull
                                                            DeclarationDescriptor classObject)

comparisonOperandType

public static org.jetbrains.asm4.Type comparisonOperandType(org.jetbrains.asm4.Type left,
                                                            org.jetbrains.asm4.Type right)

pop

public static void pop(@NotNull
                       org.jetbrains.asm4.commons.InstructionAdapter v,
                       @NotNull
                       org.jetbrains.asm4.Type type)

dup

public static void dup(@NotNull
                       org.jetbrains.asm4.commons.InstructionAdapter v,
                       @NotNull
                       org.jetbrains.asm4.Type type)

asmDescByFqNameWithoutInnerClasses

@NotNull
public static java.lang.String asmDescByFqNameWithoutInnerClasses(@NotNull
                                                                          FqName fqName)

shortNameByAsmType

@NotNull
public static java.lang.String shortNameByAsmType(@NotNull
                                                          org.jetbrains.asm4.Type type)

asmTypeByFqNameWithoutInnerClasses

@NotNull
public static org.jetbrains.asm4.Type asmTypeByFqNameWithoutInnerClasses(@NotNull
                                                                                 FqName fqName)