CxXmlDocReference

Description

sealed class Tinman.Core.Cx.XmlDoc.CxXmlDocReference

Derived from

CxNode abstract

Represents the content of a cref attribute and references a type or member:

Referring to non-generic type or member:
<... cref="name">
Referring to generic type or member:
<... cref="name{T}">
<... cref="name{T1,T2,...}">
<... cref="name-a{T}.name-b">
<... cref="name-a{T1,T2,...}.name-b">
Referring to method:
<... cref="name()">
<... cref="name(T,...)">
<... cref="name-a{...}.name-b()">
<... cref="name-a{...}.name-b(T,...)">

where name corresponds to Name, {...} to Arguments, (…​) to Signature, name-a to CxName.Parent of Name and name-b to CxName.Last of Name.

See also

CxXmlDocItemSee

Public / Constructors

CxXmlDocReference


public constructor CxXmlDocReference → (3)

name in : CxName

See CxName.

arguments opt : int32 = 0

See Arguments.

signature opt : IBagConst<CxType> = null

See Signature.

Creates a new instance of CxXmlDocReference.

Public / Attributes

Arguments


public attribute Arguments → (get)

value : int32

< 0 : negative argument count of the type of the method Name refers to,
= 0 : Name refers to a non-generic type or member,
> 0 : argument count of the type Name refers to.

Returns the number of generic type arguments of the type referred to by Name.

Generic type arguments may be named arbitrarily, as only the count is used to disambiguate between generic types of the same name. By convention, type arguments should be named T1, T2, …​ Tn or just T if n is 1.

Name


public attribute Name → (get)

value : CxName

The name of the referenced type or member.

Returns the name of the referenced type or member.

Signature


public attribute Signature → (get)

value : IVector<CxType>

The list of method parameter types or null if this is not an explicit reference to a method.

Returns the list of method parameter types.

The parameter type list is used to choose a method from the method family referred to by Name.