Show / Hide Table of Contents

Class DataTypeVisitor

Visitor of the structure of a data model type.

Inheritance
System.Object
DataTypeVisitor
Namespace: Nuqleon.DataModel.TypeSystem
Assembly: Nuqleon.DataModel.CompilerServices.dll
Syntax
public class DataTypeVisitor : Object

Constructors

DataTypeVisitor()

Declaration
public DataTypeVisitor()

Methods

ChangeField(FieldInfo)

Changes the CLR field during a rewrite of properties.

Declaration
protected virtual MemberInfo ChangeField(FieldInfo field)
Parameters
Type Name Description
System.Reflection.FieldInfo field

CLR field to change.

Returns
Type Description
System.Reflection.MemberInfo

Result of changing the CLR field.

ChangeProperty(PropertyInfo)

Changes the CLR property during a rewrite of properties.

Declaration
protected virtual MemberInfo ChangeProperty(PropertyInfo property)
Parameters
Type Name Description
System.Reflection.PropertyInfo property

CLR property to change.

Returns
Type Description
System.Reflection.MemberInfo

Result of changing the CLR property.

ChangeUnderlyingType(Type)

Changes the underlying CLR type of a data type during a rewrite of data types.

Declaration
protected virtual Type ChangeUnderlyingType(Type type)
Parameters
Type Name Description
System.Type type

CLR type to change.

Returns
Type Description
System.Type

Result of changing the CLR type.

Visit(DataType)

Visits a data type.

Declaration
public virtual DataType Visit(DataType type)
Parameters
Type Name Description
DataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

Visit<T>(ReadOnlyCollection<T>, Func<T, T>)

Visits a collection of objects using the specified visit function.

Declaration
public static ReadOnlyCollection<T> Visit<T>(ReadOnlyCollection<T> nodes, Func<T, T> elementVisitor)
Parameters
Type Name Description
System.Collections.ObjectModel.ReadOnlyCollection<T> nodes

Nodes to visit.

System.Func<T, T> elementVisitor

Function to visit each of the elements in the collection.

Returns
Type Description
System.Collections.ObjectModel.ReadOnlyCollection<T>

Result of visiting the nodes.

Type Parameters
Name Description
T

Type of the objects in the collection.

VisitAndConvert<T>(DataType)

Visits and converts a data type.

Declaration
protected T VisitAndConvert<T>(DataType type)
    where T : DataType
Parameters
Type Name Description
DataType type

Data type to visit.

Returns
Type Description
T

Result of visiting and converting the type.

Type Parameters
Name Description
T

Type of the data type to convert to.

VisitArray(ArrayDataType)

Visits an array data type.

Declaration
protected virtual DataType VisitArray(ArrayDataType type)
Parameters
Type Name Description
ArrayDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitCustom(DataType)

Visits a custom data type.

Declaration
protected virtual DataType VisitCustom(DataType type)
Parameters
Type Name Description
DataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitExpression(ExpressionDataType)

Visits an expression data type.

Declaration
protected virtual DataType VisitExpression(ExpressionDataType type)
Parameters
Type Name Description
ExpressionDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitFunction(FunctionDataType)

Visits a function data type.

Declaration
protected virtual DataType VisitFunction(FunctionDataType type)
Parameters
Type Name Description
FunctionDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitOpenGenericParameter(OpenGenericParameterDataType)

Visits an open generic parameter type.

Declaration
protected virtual DataType VisitOpenGenericParameter(OpenGenericParameterDataType type)
Parameters
Type Name Description
OpenGenericParameterDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitPrimitive(PrimitiveDataType)

Visits a primitive data type.

Declaration
protected virtual DataType VisitPrimitive(PrimitiveDataType type)
Parameters
Type Name Description
PrimitiveDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitProperty(DataProperty)

Visits a data model property.

Declaration
protected virtual DataProperty VisitProperty(DataProperty property)
Parameters
Type Name Description
DataProperty property

Property to visit.

Returns
Type Description
DataProperty

Result of visiting the property, or the original property if nothing changed.

VisitQuotation(QuotationDataType)

Visits a quotation data type.

Declaration
protected virtual DataType VisitQuotation(QuotationDataType type)
Parameters
Type Name Description
QuotationDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

VisitStructural(StructuralDataType)

Visits a structural data type.

Declaration
protected virtual DataType VisitStructural(StructuralDataType type)
Parameters
Type Name Description
StructuralDataType type

Data type to visit.

Returns
Type Description
DataType

Result of visiting the data type, or the original data type if nothing changed.

In This Article
Back to top Generated by DocFX