org.jetbrains.jet.codegen
Class ClassBodyCodegen

java.lang.Object
  extended by org.jetbrains.jet.codegen.binding.BindingContextAware
      extended by org.jetbrains.jet.codegen.binding.BindingTraceAware
          extended by org.jetbrains.jet.codegen.state.TypeMapperAware
              extended by org.jetbrains.jet.codegen.state.GenerationStateAware
                  extended by org.jetbrains.jet.codegen.MemberCodegen
                      extended by org.jetbrains.jet.codegen.ClassBodyCodegen
Direct Known Subclasses:
ImplementationBodyCodegen, TraitImplBodyCodegen

public abstract class ClassBodyCodegen
extends MemberCodegen


Field Summary
protected  ClassContext context
           
protected  ClassDescriptor descriptor
           
protected  OwnerKind kind
           
protected  JetClassOrObject myClass
           
protected  ClassBuilder v
           
 
Fields inherited from class org.jetbrains.jet.codegen.state.GenerationStateAware
state
 
Fields inherited from class org.jetbrains.jet.codegen.state.TypeMapperAware
typeMapper
 
Fields inherited from class org.jetbrains.jet.codegen.binding.BindingTraceAware
bindingTrace
 
Fields inherited from class org.jetbrains.jet.codegen.binding.BindingContextAware
bindingContext
 
Constructor Summary
protected ClassBodyCodegen(JetClassOrObject aClass, ClassContext context, ClassBuilder v, GenerationState state, MemberCodegen parentCodegen)
           
 
Method Summary
protected  ExpressionCodegen createOrGetClInitCodegen()
           
protected  org.jetbrains.asm4.MethodVisitor createOrGetClInitMethod()
           
 void generate()
           
protected abstract  void generateDeclaration()
           
protected  void generateDeclaration(PropertyCodegen propertyCodegen, JetDeclaration declaration)
           
protected  void generateSyntheticParts()
           
protected  java.util.List<JetParameter> getPrimaryConstructorParameters()
           
 
Methods inherited from class org.jetbrains.jet.codegen.MemberCodegen
genClassOrObject, genFunctionOrProperty, getParentCodegen
 
Methods inherited from class org.jetbrains.jet.codegen.state.GenerationStateAware
getState
 
Methods inherited from class org.jetbrains.jet.codegen.state.TypeMapperAware
getTypeMapper
 
Methods inherited from class org.jetbrains.jet.codegen.binding.BindingTraceAware
getBindingTrace
 
Methods inherited from class org.jetbrains.jet.codegen.binding.BindingContextAware
getBindingContext
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

myClass

protected final JetClassOrObject myClass

kind

protected final OwnerKind kind

descriptor

protected final ClassDescriptor descriptor

v

protected final ClassBuilder v

context

protected final ClassContext context
Constructor Detail

ClassBodyCodegen

protected ClassBodyCodegen(@NotNull
                           JetClassOrObject aClass,
                           @NotNull
                           ClassContext context,
                           @NotNull
                           ClassBuilder v,
                           @NotNull
                           GenerationState state,
                           @Nullable
                           MemberCodegen parentCodegen)
Method Detail

generate

public void generate()

generateDeclaration

protected abstract void generateDeclaration()

generateSyntheticParts

protected void generateSyntheticParts()

generateDeclaration

protected void generateDeclaration(PropertyCodegen propertyCodegen,
                                   JetDeclaration declaration)

getPrimaryConstructorParameters

@NotNull
protected java.util.List<JetParameter> getPrimaryConstructorParameters()

createOrGetClInitMethod

@Nullable
protected org.jetbrains.asm4.MethodVisitor createOrGetClInitMethod()

createOrGetClInitCodegen

@Nullable
protected ExpressionCodegen createOrGetClInitCodegen()