Show / Hide Table of Contents

    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()
    Namespace: Flame.Llvm.Emit
    Assembly: Flame.Llvm.dll
    Syntax
    public sealed class ModuleBuilder

    Constructors

    | Improve this Doc View Source

    ModuleBuilder(LLVMModuleRef, TypeEnvironment, NameMangler, GCInterface, MetadataFormat)

    Declaration
    public ModuleBuilder(LLVMModuleRef module, TypeEnvironment typeSystem, NameMangler mangler, GCInterface gc, MetadataFormat metadata)
    Parameters
    Type Name Description
    LLVMSharp.LLVMModuleRef module
    TypeEnvironment typeSystem
    NameMangler mangler
    GCInterface gc
    MetadataFormat metadata

    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
    Type Description
    NameMangler

    A name mangler.

    | Improve this Doc View Source

    Metadata

    Gets the metadata format to use for the module.

    Declaration
    public MetadataFormat Metadata { get; }
    Property Value
    Type Description
    MetadataFormat

    A metadata format.

    | 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
    Type Description
    TypeEnvironment

    A type system.

    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
    Type Name Description
    IMethod method
    MethodBody body
    | 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
    • Improve this Doc
    • View Source
    Back to top Generated by DocFX