Show / Hide Table of Contents

    Class InstructionPrototype

    Describes an instruction's prototype: everything there is to an instruction except for its arguments.

    Inheritance
    System.Object
    InstructionPrototype
    AllocaArrayPrototype
    AllocaPrototype
    BoxPrototype
    CallPrototype
    ConstantPrototype
    ConstrainedCallPrototype
    CopyPrototype
    DynamicCastPrototype
    FusedInstructionPrototype
    GetFieldPointerPrototype
    GetStaticFieldPointerPrototype
    IndirectCallPrototype
    IntrinsicPrototype
    LoadPrototype
    NewDelegatePrototype
    NewObjectPrototype
    ReinterpretCastPrototype
    SizeOfPrototype
    StorePrototype
    UnboxPrototype
    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.Compiler
    Assembly: Flame.Compiler.dll
    Syntax
    public abstract class InstructionPrototype

    Properties

    | Improve this Doc View Source

    Members

    Collects all members that appear in this instruction prototype.

    Declaration
    public IEnumerable<IMember> Members { get; }
    Property Value
    Type Description
    System.Collections.Generic.IEnumerable<IMember>

    A sequence of members.

    | Improve this Doc View Source

    ParameterCount

    Gets the number of arguments this instruction takes when instantiated.

    Declaration
    public abstract int ParameterCount { get; }
    Property Value
    Type Description
    System.Int32

    The number of arguments this instruction takes.

    | Improve this Doc View Source

    ResultType

    Gets the type of value produced instantiations of this prototype.

    Declaration
    public abstract IType ResultType { get; }
    Property Value
    Type Description
    IType

    A type of value.

    Methods

    | Improve this Doc View Source

    AssertIsPrototypeOf(Instruction)

    Asserts that a particular instruction is an instance of this prototype.

    Declaration
    public void AssertIsPrototypeOf(Instruction instruction)
    Parameters
    Type Name Description
    Instruction instruction

    The instruction to examine.

    | Improve this Doc View Source

    AssertIsPrototypeOf(Instruction, String)

    Asserts that a particular instruction is an instance of this prototype.

    Declaration
    public void AssertIsPrototypeOf(Instruction instruction, string errorMessage)
    Parameters
    Type Name Description
    Instruction instruction

    The instruction to examine.

    System.String errorMessage

    An error message to print if the assertion does not hold true.

    | Improve this Doc View Source

    CheckConformance(Instruction, MethodBody)

    Checks if a particular instance of this prototype conforms to the rules for this instruction prototype.

    Declaration
    public abstract IReadOnlyList<string> CheckConformance(Instruction instance, MethodBody body)
    Parameters
    Type Name Description
    Instruction instance

    An instance of this prototype.

    MethodBody body

    The method body that defines the instruction.

    Returns
    Type Description
    System.Collections.Generic.IReadOnlyList<System.String>

    A list of conformance errors in the instruction.

    | Improve this Doc View Source

    Instantiate(IReadOnlyList<ValueTag>)

    Instantiates this prototype with a list of arguments.

    Declaration
    public Instruction Instantiate(IReadOnlyList<ValueTag> arguments)
    Parameters
    Type Name Description
    System.Collections.Generic.IReadOnlyList<ValueTag> arguments

    The arguments to instantiate this prototype with.

    Returns
    Type Description
    Instruction

    An instruction whose prototype is equal to this prototype and whose argument list is arguments.

    | Improve this Doc View Source

    IsPrototypeOf(Instruction)

    Tests if a particular instruction is an instance of this prototype.

    Declaration
    public bool IsPrototypeOf(Instruction instruction)
    Parameters
    Type Name Description
    Instruction instruction

    The instruction to examine.

    Returns
    Type Description
    System.Boolean

    true if the instruction is an instance of this prototype; otherwise, false.

    | Improve this Doc View Source

    Map(MemberMapping)

    Applies a member mapping to this instruction prototype.

    Declaration
    public abstract InstructionPrototype Map(MemberMapping mapping)
    Parameters
    Type Name Description
    MemberMapping mapping

    A member mapping.

    Returns
    Type Description
    InstructionPrototype

    A transformed instruction prototype.

    • Improve this Doc
    • View Source
    Back to top Generated by DocFX