Class ModuleBuilder
A wrapper around an LLVM module that extends the wrapped module
with information relevant to managed languages.
Inheritance
System.Object
ModuleBuilder
Inherited Members
System.Object.ToString()
System.Object.Equals(System.Object)
System.Object.Equals(System.Object, System.Object)
System.Object.ReferenceEquals(System.Object, System.Object)
System.Object.GetHashCode()
System.Object.GetType()
System.Object.MemberwiseClone()
Assembly: Flame.Llvm.dll
Syntax
public sealed class ModuleBuilder
Constructors
|
Improve this Doc
View Source
Declaration
public ModuleBuilder(LLVMModuleRef module, TypeEnvironment typeSystem, NameMangler mangler, GCInterface gc, MetadataFormat metadata)
Parameters
Properties
|
Improve this Doc
View Source
Context
Declaration
public LLVMContextRef Context { get; }
Property Value
Type |
Description |
LLVMSharp.LLVMContextRef |
|
|
Improve this Doc
View Source
GC
Gets the application-GC interface for the module.
Declaration
public GCInterface GC { get; }
Property Value
Type |
Description |
GCInterface |
An application-GC interface.
|
|
Improve this Doc
View Source
Mangler
Gets the primary name mangler for this module.
Declaration
public NameMangler Mangler { get; }
Property Value
|
Improve this Doc
View Source
Gets the metadata format to use for the module.
Declaration
public MetadataFormat Metadata { get; }
Property Value
|
Improve this Doc
View Source
Module
Gets the LLVM module managed by this module builder.
Declaration
public LLVMModuleRef Module { get; }
Property Value
Type |
Description |
LLVMSharp.LLVMModuleRef |
An LLVM module.
|
|
Improve this Doc
View Source
TypeSystem
Gets the type system for this module.
Declaration
public TypeEnvironment TypeSystem { get; }
Property Value
Methods
|
Improve this Doc
View Source
DeclareMethod(IMethod)
Declaration
public LLVMValueRef DeclareMethod(IMethod method)
Parameters
Type |
Name |
Description |
IMethod |
method |
|
Returns
Type |
Description |
LLVMSharp.LLVMValueRef |
|
|
Improve this Doc
View Source
DefineMethod(IMethod, MethodBody)
Declaration
public void DefineMethod(IMethod method, MethodBody body)
Parameters
|
Improve this Doc
View Source
DefineStaticField(IField)
Declaration
public LLVMValueRef DefineStaticField(IField field)
Parameters
Type |
Name |
Description |
IField |
field |
|
Returns
Type |
Description |
LLVMSharp.LLVMValueRef |
|
|
Improve this Doc
View Source
GetFieldIndex(IField)
Declaration
public int GetFieldIndex(IField field)
Parameters
Type |
Name |
Description |
IField |
field |
|
Returns
Type |
Description |
System.Int32 |
|
|
Improve this Doc
View Source
GetFunctionPrototype(IMethod)
Declaration
public LLVMTypeRef GetFunctionPrototype(IMethod method)
Parameters
Type |
Name |
Description |
IMethod |
method |
|
Returns
Type |
Description |
LLVMSharp.LLVMTypeRef |
|
|
Improve this Doc
View Source
ImportType(IType)
Declaration
public LLVMTypeRef ImportType(IType type)
Parameters
Type |
Name |
Description |
IType |
type |
|
Returns
Type |
Description |
LLVMSharp.LLVMTypeRef |
|
|
Improve this Doc
View Source
SynthesizeMain(IMethod)
Declaration
public void SynthesizeMain(IMethod entryPoint)
Parameters
Type |
Name |
Description |
IMethod |
entryPoint |
|
|
Improve this Doc
View Source
TryGetFieldIndex(IField, out Int32)
Declaration
public bool TryGetFieldIndex(IField field, out int index)
Parameters
Type |
Name |
Description |
IField |
field |
|
System.Int32 |
index |
|
Returns
Type |
Description |
System.Boolean |
|