Show / Hide Table of Contents

    Class ReinterpretCastPrototype

    A prototype for reinterpret cast instructions: instructions that convert one pointer type to another and are free to assume that this conversion will always succeed.

    Inheritance
    System.Object
    InstructionPrototype
    ReinterpretCastPrototype
    Inherited Members
    InstructionPrototype.Members
    InstructionPrototype.Instantiate(IReadOnlyList<ValueTag>)
    InstructionPrototype.IsPrototypeOf(Instruction)
    InstructionPrototype.AssertIsPrototypeOf(Instruction, String)
    InstructionPrototype.AssertIsPrototypeOf(Instruction)
    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.Instructions
    Assembly: Flame.Compiler.dll
    Syntax
    public sealed class ReinterpretCastPrototype : InstructionPrototype

    Properties

    | Improve this Doc View Source

    ParameterCount

    Gets the number of arguments this instruction takes when instantiated.

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

    The number of arguments this instruction takes.

    Overrides
    InstructionPrototype.ParameterCount
    | Improve this Doc View Source

    ResultType

    Gets the type of value produced instantiations of this prototype.

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

    A type of value.

    Overrides
    InstructionPrototype.ResultType
    | Improve this Doc View Source

    TargetType

    Gets the pointer type to cast the input to.

    Declaration
    public PointerType TargetType { get; }
    Property Value
    Type Description
    PointerType

    The target pointer type.

    Methods

    | 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 override 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.

    Overrides
    InstructionPrototype.CheckConformance(Instruction, MethodBody)
    | Improve this Doc View Source

    Create(PointerType)

    Gets or creates a reinterpret cast instruction prototype that converts pointers to a specific pointer type.

    Declaration
    public static ReinterpretCastPrototype Create(PointerType targetType)
    Parameters
    Type Name Description
    PointerType targetType

    The target pointer type.

    Returns
    Type Description
    ReinterpretCastPrototype

    A reinterpret cast instruction prototype.

    | Improve this Doc View Source

    GetOperand(Instruction)

    Gets the input pointer of an instance of this reinterpret- cast instruction prototype.

    Declaration
    public ValueTag GetOperand(Instruction instance)
    Parameters
    Type Name Description
    Instruction instance

    An instance of this reinterpret cast instruction prototype.

    Returns
    Type Description
    ValueTag

    The input pointer.

    | Improve this Doc View Source

    Instantiate(ValueTag)

    Creates an instance of this reinterpret cast instruction prototype.

    Declaration
    public Instruction Instantiate(ValueTag operand)
    Parameters
    Type Name Description
    ValueTag operand

    A pointer to cast to another pointer type.

    Returns
    Type Description
    Instruction

    A reinterpret cast instruction.

    | Improve this Doc View Source

    Map(MemberMapping)

    Applies a member mapping to this instruction prototype.

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

    A member mapping.

    Returns
    Type Description
    InstructionPrototype

    A transformed instruction prototype.

    Overrides
    InstructionPrototype.Map(MemberMapping)
    • Improve this Doc
    • View Source
    Back to top Generated by DocFX