class Savi::Compiler::CodeGen::GenType
- Savi::Compiler::CodeGen::GenType
- Reference
- Object
Defined in:
savi/compiler/code_gen/gen_type.crConstructors
Instance Method Summary
- #[](name)
- #default_constructor
- #desc : LLVM::Value
- #desc? : LLVM::Value | Nil
- #desc_type : LLVM::Type
- #desc_type? : LLVM::Type | Nil
- #each_gfunc
- #field(name)
- #field?(name)
- #field_index(name)
- #field_llvm_type(name)
- #fields : Array(Tuple(String, Reach::Ref))
- #fields_struct_index
- #fields_struct_type : LLVM::Type
- #fields_struct_type? : LLVM::Type | Nil
-
#gen_desc(g : CodeGen)
Generate the type descriptor global for this type.
-
#gen_desc_init(g : CodeGen)
Generate the initializer data for the type descriptor for this type.
-
#gen_func_decls(g : CodeGen)
Generate function declarations.
-
#gen_func_impls(g : CodeGen)
Generate function implementations.
-
#gen_singleton(g : CodeGen)
Generate the global singleton value for this type.
-
#gen_struct_type(g : CodeGen)
Generate struct type bodies.
-
#gen_vtable(g : CodeGen) : Array(LLVM::Value)
Generate virtual call table.
- #gfuncs : Hash(String, GenFunc)
- #gfuncs_by_sig_name : Hash(String, GenFunc)
- #singleton : LLVM::Value
- #singleton? : LLVM::Value | Nil
- #struct_type : LLVM::Type
- #struct_type? : LLVM::Type | Nil
- #type_def : Reach::Def
- #vtable_size : Int32
Constructor Detail
Instance Method Detail
Generate the initializer data for the type descriptor for this type.
Generate the global singleton value for this type. We skip this for abstract types (traits).