Search Results for

    Show / Hide Table of Contents

    Class TypeVisitor

    A type of object that recursively applies a mapping to types.

    Inheritance
    object
    TypeVisitor
    TypeFuncVisitor
    TypeMappingVisitor
    Inherited Members
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    object.ToString()
    Namespace: Flame.TypeSystem
    Assembly: Flame.dll
    Syntax
    public abstract class TypeVisitor

    Methods

    | Edit this page View Source

    IsOfInterest(IType)

    Tells if a type is of interest to this visitor. Visitors always specify custom behavior for interesting types, whereas uninteresting composite types are usually treated the same: the visitor simply visits the types they are composed of.

    Declaration
    protected abstract bool IsOfInterest(IType type)
    Parameters
    Type Name Description
    IType type

    A type.

    Returns
    Type Description
    bool

    true if the type is interesting; otherwise, false.

    | Edit this page View Source

    Visit(IField)

    Visits a particular field's recursive generic arguments and creates a new specialization based on the results.

    Declaration
    public IField Visit(IField field)
    Parameters
    Type Name Description
    IField field

    The field to visit.

    Returns
    Type Description
    IField

    A visited field.

    | Edit this page View Source

    Visit(IMethod)

    Visits a particular method's recursive generic arguments and creates a new specialization based on the results.

    Declaration
    public IMethod Visit(IMethod method)
    Parameters
    Type Name Description
    IMethod method

    The method to visit.

    Returns
    Type Description
    IMethod

    A visited method.

    | Edit this page View Source

    Visit(IType)

    Visits a type.

    Declaration
    public IType Visit(IType type)
    Parameters
    Type Name Description
    IType type

    A type to visit.

    Returns
    Type Description
    IType

    A visited type.

    | Edit this page View Source

    Visit(Parameter)

    Visits a parameter's type and uses the result to create a new parameter.

    Declaration
    public Parameter Visit(Parameter parameter)
    Parameters
    Type Name Description
    Parameter parameter

    The parameter to visit.

    Returns
    Type Description
    Parameter

    A visited parameter.

    | Edit this page View Source

    VisitAll(IReadOnlyList<IMethod>)

    Visits all methods in a list of methods.

    Declaration
    public IReadOnlyList<IMethod> VisitAll(IReadOnlyList<IMethod> methods)
    Parameters
    Type Name Description
    IReadOnlyList<IMethod> methods

    A list of methods to visit.

    Returns
    Type Description
    IReadOnlyList<IMethod>

    A list of visited methods.

    | Edit this page View Source

    VisitAll(IReadOnlyList<IType>)

    Visits all types in a list of types.

    Declaration
    public IReadOnlyList<IType> VisitAll(IReadOnlyList<IType> types)
    Parameters
    Type Name Description
    IReadOnlyList<IType> types

    A list of types to visit.

    Returns
    Type Description
    IReadOnlyList<IType>

    A list of visited types.

    | Edit this page View Source

    VisitAll(IReadOnlyList<Parameter>)

    Visits all parameters in a list of parameters.

    Declaration
    public IReadOnlyList<Parameter> VisitAll(IReadOnlyList<Parameter> parameters)
    Parameters
    Type Name Description
    IReadOnlyList<Parameter> parameters

    A list of parameters to visit.

    Returns
    Type Description
    IReadOnlyList<Parameter>

    A list of visited parameters.

    | Edit this page View Source

    VisitInteresting(IType)

    Visits a type that has been marked as interesting.

    Declaration
    protected abstract IType VisitInteresting(IType type)
    Parameters
    Type Name Description
    IType type

    A type to visit.

    Returns
    Type Description
    IType

    A visited type.

    | Edit this page View Source

    VisitUninteresting(IType)

    Visits a type that has not been marked as interesting.

    Declaration
    protected virtual IType VisitUninteresting(IType type)
    Parameters
    Type Name Description
    IType type

    A type to visit.

    Returns
    Type Description
    IType

    A visited type.

    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX