org.jetbrains.kotlin.codegen
Class ImplementationBodyCodegen

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.MemberCodegen<KtClassOrObject>
      extended by org.jetbrains.kotlin.codegen.ClassBodyCodegen
          extended by org.jetbrains.kotlin.codegen.ImplementationBodyCodegen

public class ImplementationBodyCodegen
extends ClassBodyCodegen


Field Summary
 
Fields inherited from class org.jetbrains.kotlin.codegen.ClassBodyCodegen
descriptor, kind, myClass
 
Fields inherited from class org.jetbrains.kotlin.codegen.MemberCodegen
bindingContext, clInit, context, element, fileClassesProvider, functionCodegen, innerClasses, propertyCodegen, state, typeMapper, v
 
Constructor Summary
ImplementationBodyCodegen(KtClassOrObject aClass, ClassContext context, ClassBuilder v, GenerationState state, MemberCodegen<?> parentCodegen, boolean isLocal)
           
 
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 generateDelegates(ClassDescriptor toTrait, KotlinType delegateExpressionType, org.jetbrains.kotlin.codegen.ImplementationBodyCodegen.DelegationFieldsInfo.Field field)
           
protected  void generateKotlinMetadataAnnotation()
           
protected  void generateSyntheticParts()
           
protected  void getSuperClass()
           
 
Methods inherited from class org.jetbrains.kotlin.codegen.ClassBodyCodegen
classForInnerClassRecord, generateBody, generateDeclaration, getPrimaryConstructorParameters
 
Methods inherited from class org.jetbrains.kotlin.codegen.MemberCodegen
beforeMethodBody, createClInitFunctionDescriptor, createClInitMethodVisitor, createOrGetClInitCodegen, genClassOrObject, genClassOrObject, generate, generateConstInstance, generateInitializers, generateMethodCallTo, generatePropertyMetadataArrayFieldIfNeeded, generateSyntheticAccessors, genFunctionOrProperty, getClassName, getContext, getInlineNameGenerator, getOrCreateSourceMapper, getParentCodegen, getReifiedTypeParametersUsages, markLineNumberForDescriptor, markLineNumberForElement, shouldInitializeProperty, toString, writeOuterClassAndEnclosingMethod
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ImplementationBodyCodegen

public ImplementationBodyCodegen(@NotNull
                                 KtClassOrObject aClass,
                                 @NotNull
                                 ClassContext context,
                                 @NotNull
                                 ClassBuilder v,
                                 @NotNull
                                 GenerationState state,
                                 @Nullable
                                 MemberCodegen<?> parentCodegen,
                                 boolean isLocal)
Method Detail

generateDeclaration

protected void generateDeclaration()
Specified by:
generateDeclaration in class MemberCodegen<KtClassOrObject>

generateDefaultImplsIfNeeded

protected void generateDefaultImplsIfNeeded()
Overrides:
generateDefaultImplsIfNeeded in class ClassBodyCodegen

generateKotlinMetadataAnnotation

protected void generateKotlinMetadataAnnotation()
Specified by:
generateKotlinMetadataAnnotation in class MemberCodegen<KtClassOrObject>

getSuperClass

protected void getSuperClass()

generateSyntheticParts

protected void generateSyntheticParts()
Overrides:
generateSyntheticParts in class MemberCodegen<KtClassOrObject>

generateConstructors

protected void generateConstructors()
Overrides:
generateConstructors in class ClassBodyCodegen

generateDelegates

protected void generateDelegates(ClassDescriptor toTrait,
                                 KotlinType delegateExpressionType,
                                 org.jetbrains.kotlin.codegen.ImplementationBodyCodegen.DelegationFieldsInfo.Field field)

addCompanionObjectPropertyToCopy

public void addCompanionObjectPropertyToCopy(@NotNull
                                             PropertyDescriptor descriptor,
                                             java.lang.Object defaultValue)

done

protected void done()
Overrides:
done in class MemberCodegen<KtClassOrObject>

addAdditionalTask

public void addAdditionalTask(kotlin.jvm.functions.Function2<ImplementationBodyCodegen,ClassBuilder,kotlin.Unit> additionalTask)