org.jetbrains.kotlin.codegen
Class ImplementationBodyCodegen
java.lang.Object
org.jetbrains.kotlin.codegen.MemberCodegen<KtPureClassOrObject>
org.jetbrains.kotlin.codegen.ClassBodyCodegen
org.jetbrains.kotlin.codegen.ImplementationBodyCodegen
public class ImplementationBodyCodegen
- extends ClassBodyCodegen
|
Method Summary |
void |
addAdditionalTask(kotlin.jvm.functions.Function2<ImplementationBodyCodegen,ClassBuilder,kotlin.Unit> additionalTask)
|
void |
addCompanionObjectPropertyToCopy(PropertyDescriptor descriptor,
java.lang.Object defaultValue)
|
protected void |
done()
|
protected void |
generateConstructors()
|
protected void |
generateDeclaration()
|
protected void |
generateDefaultImplsIfNeeded()
|
protected void |
generateKotlinMetadataAnnotation()
|
protected void |
generateSyntheticParts()
|
org.jetbrains.org.objectweb.asm.Type |
genPropertyOnStack(org.jetbrains.org.objectweb.asm.commons.InstructionAdapter iv,
MethodContext context,
PropertyDescriptor propertyDescriptor,
org.jetbrains.org.objectweb.asm.Type classAsmType,
int index)
|
static JvmClassSignature |
signature(ClassDescriptor descriptor,
org.jetbrains.org.objectweb.asm.Type classAsmType,
SuperClassInfo superClassInfo,
KotlinTypeMapper typeMapper)
|
| Methods inherited from class org.jetbrains.kotlin.codegen.MemberCodegen |
addInnerClassInfoFromAnnotation, badDescriptor, beforeMethodBody, createClInitMethodVisitor, createOrGetClInitCodegen, genClassOrObject, genClassOrObject, generate, generateConstInstance, generateInitializers, generateKotlinClassMetadataAnnotation, generateMethodCallTo, generatePropertyMetadataArrayFieldIfNeeded, generateSyntheticAccessors, genSimpleMember, genSyntheticClassOrObject, getClassName, getContext, getInlineNameGenerator, getOrCreateSourceMapper, getParentCodegen, getReifiedTypeParametersUsages, markLineNumberForDescriptor, markLineNumberForElement, shouldInitializeProperty, toString, writeInnerClass, writeOuterClassAndEnclosingMethod |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
ImplementationBodyCodegen
public ImplementationBodyCodegen(@NotNull
KtPureClassOrObject aClass,
@NotNull
ClassContext context,
@NotNull
ClassBuilder v,
@NotNull
GenerationState state,
@Nullable
MemberCodegen<?> parentCodegen,
boolean isLocal)
generateDeclaration
protected void generateDeclaration()
- Specified by:
generateDeclaration in class MemberCodegen<KtPureClassOrObject>
generateDefaultImplsIfNeeded
protected void generateDefaultImplsIfNeeded()
- Overrides:
generateDefaultImplsIfNeeded in class ClassBodyCodegen
generateKotlinMetadataAnnotation
protected void generateKotlinMetadataAnnotation()
- Specified by:
generateKotlinMetadataAnnotation in class MemberCodegen<KtPureClassOrObject>
signature
@NotNull
public static JvmClassSignature signature(@NotNull
ClassDescriptor descriptor,
@NotNull
org.jetbrains.org.objectweb.asm.Type classAsmType,
@NotNull
SuperClassInfo superClassInfo,
@NotNull
KotlinTypeMapper typeMapper)
generateSyntheticParts
protected void generateSyntheticParts()
- Overrides:
generateSyntheticParts in class MemberCodegen<KtPureClassOrObject>
generateConstructors
protected void generateConstructors()
- Overrides:
generateConstructors in class ClassBodyCodegen
genPropertyOnStack
public org.jetbrains.org.objectweb.asm.Type genPropertyOnStack(org.jetbrains.org.objectweb.asm.commons.InstructionAdapter iv,
MethodContext context,
@NotNull
PropertyDescriptor propertyDescriptor,
org.jetbrains.org.objectweb.asm.Type classAsmType,
int index)
addCompanionObjectPropertyToCopy
public void addCompanionObjectPropertyToCopy(@NotNull
PropertyDescriptor descriptor,
java.lang.Object defaultValue)
done
protected void done()
- Overrides:
done in class MemberCodegen<KtPureClassOrObject>
addAdditionalTask
public void addAdditionalTask(kotlin.jvm.functions.Function2<ImplementationBodyCodegen,ClassBuilder,kotlin.Unit> additionalTask)