org.jetbrains.jet.codegen
Class ImplementationBodyCodegen

java.lang.Object
  extended by org.jetbrains.jet.codegen.ParentCodegenAwareImpl
      extended by org.jetbrains.jet.codegen.MemberCodegen<JetClassOrObject>
          extended by org.jetbrains.jet.codegen.ClassBodyCodegen
              extended by org.jetbrains.jet.codegen.ImplementationBodyCodegen
All Implemented Interfaces:
ParentCodegenAware

public class ImplementationBodyCodegen
extends ClassBodyCodegen


Field Summary
 
Fields inherited from class org.jetbrains.jet.codegen.ClassBodyCodegen
descriptor, kind, myClass
 
Fields inherited from class org.jetbrains.jet.codegen.MemberCodegen
clInit, context, element, v
 
Fields inherited from class org.jetbrains.jet.codegen.ParentCodegenAwareImpl
bindingContext, state, typeMapper
 
Constructor Summary
ImplementationBodyCodegen(JetClassOrObject aClass, ClassContext context, ClassBuilder v, GenerationState state, MemberCodegen<?> parentCodegen)
           
 
Method Summary
 void addClassObjectPropertyToCopy(PropertyDescriptor descriptor, java.lang.Object defaultValue)
           
protected  void generateDeclaration()
           
protected  void generateDeclaration(PropertyCodegen propertyCodegen, JetDeclaration declaration)
           
protected  void generateDelegates(ClassDescriptor toClass, StackValue field)
           
protected  void generateKotlinAnnotation()
           
protected  void generatePrimaryConstructor()
           
protected  void generateSyntheticAccessors()
           
protected  void generateSyntheticParts()
           
protected  void genInitSingleton(ClassDescriptor fieldTypeDescriptor, StackValue.Field field)
           
protected  void getSuperClass()
           
 
Methods inherited from class org.jetbrains.jet.codegen.ClassBodyCodegen
generateBody, getPrimaryConstructorParameters
 
Methods inherited from class org.jetbrains.jet.codegen.MemberCodegen
createOrGetClInitCodegen, genClassOrObject, genClassOrObject, generate, generateInitializers, generatePropertyMetadataArrayFieldIfNeeded, genFunctionOrProperty, getClassName, getInlineNameGenerator
 
Methods inherited from class org.jetbrains.jet.codegen.ParentCodegenAwareImpl
getParentCodegen
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, 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()

genInitSingleton

protected void genInitSingleton(ClassDescriptor fieldTypeDescriptor,
                                StackValue.Field field)

generatePrimaryConstructor

protected void generatePrimaryConstructor()

generateDeclaration

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

generateDelegates

protected void generateDelegates(ClassDescriptor toClass,
                                 StackValue field)

addClassObjectPropertyToCopy

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