org.jetbrains.kotlin.codegen
Class ImplementationBodyCodegen

java.lang.Object
  extended by org.jetbrains.kotlin.codegen.MemberCodegen<JetClassOrObject>
      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, functionCodegen, innerClasses, propertyCodegen, state, typeMapper, v
 
Constructor Summary
ImplementationBodyCodegen(JetClassOrObject aClass, ClassContext context, ClassBuilder v, GenerationState state, MemberCodegen<?> parentCodegen)
           
 
Method Summary
 void addAdditionalTask(kotlin.Function2<ImplementationBodyCodegen,ClassBuilder,kotlin.Unit> additionalTask)
           
 void addClassObjectPropertyToCopy(PropertyDescriptor descriptor, java.lang.Object defaultValue)
           
protected  void done()
           
protected  void generateDeclaration()
           
protected  void generateDeclaration(JetDeclaration declaration)
           
protected  void generateDelegates(ClassDescriptor toTrait, JetType delegateExpressionType, org.jetbrains.kotlin.codegen.ImplementationBodyCodegen.DelegationFieldsInfo.Field field)
           
protected  void generateKotlinAnnotation()
           
protected  void generateSyntheticAccessors()
           
protected  void generateSyntheticParts()
           
protected  void getSuperClass()
           
static void markLineNumberForSyntheticFunction(ClassDescriptor declarationDescriptor, org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v)
           
 
Methods inherited from class org.jetbrains.kotlin.codegen.ClassBodyCodegen
classForInnerClassRecord, generateBody, getPrimaryConstructorParameters
 
Methods inherited from class org.jetbrains.kotlin.codegen.MemberCodegen
createOrGetClInitCodegen, genClassOrObject, genClassOrObject, generate, generateInitializers, generatePropertyMetadataArrayFieldIfNeeded, generateReflectionObjectField, genFunctionOrProperty, getClassName, getContext, getInlineNameGenerator, getParentCodegen, getReifiedTypeParametersUsages, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ImplementationBodyCodegen

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

generateDeclaration

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

generateKotlinAnnotation

protected void generateKotlinAnnotation()
Specified by:
generateKotlinAnnotation in class MemberCodegen<JetClassOrObject>

getSuperClass

protected void getSuperClass()

generateSyntheticParts

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

generateSyntheticAccessors

protected void generateSyntheticAccessors()

markLineNumberForSyntheticFunction

public static void markLineNumberForSyntheticFunction(@Nullable
                                                      ClassDescriptor declarationDescriptor,
                                                      @NotNull
                                                      org.jetbrains.org.objectweb.asm.commons.InstructionAdapter v)

generateDeclaration

protected void generateDeclaration(JetDeclaration declaration)
Overrides:
generateDeclaration in class ClassBodyCodegen

generateDelegates

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

addClassObjectPropertyToCopy

public void addClassObjectPropertyToCopy(PropertyDescriptor descriptor,
                                         java.lang.Object defaultValue)

done

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

addAdditionalTask

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