Tagged values for C# 2.0

 

Tagged values on an attribute

 

Name

Parameters

Use

CsBind

List of generic type parameters

Associates one or several template parameters to the attribute's reference type.

CsNullableType

N/A

Allows a variable to contain a value that is not defined.

CsPropertyVisibilityGet

New access modifier

Used to restrict the visibility of the get accessor.

CsPropertyVisibilitySet

New access modifier

Used to restrict the visibility of the set accessor.

 

Tagged values on a template parameter

 

Name

Parameters

Use

CsStructConstraint

N/A

Forces the type argument  to be a value type.

CsClassConstraint

N/A

Forces the type argument  to be a reference type.

CsNewConstraint

N/A

Forces the type argument to have a public constructor with no parameters.

CsImplementConstraint

Name(s) of the interface(s) to implement

Forces the type argument to implement the specified interface.

CsNakedConstraint

Name(s) of the template parameter(s)

Forces the type argument to be the delivered argument or a derivative.

 


Tagged values on a parameter

 

Name

Parameters

Use

CsBind

List of generic type parameters

Associates the template parameter(s) to a parameter's reference type.

CsNullableType

N/A

Allows a variable to contain a value that is not defined.

 

Tagged values on an inheritance link

 

Name

Parameters

Use

CsBind

List of generic type parameters

Associates the template parameter(s) to the parent class' template parameter(s).

 

Tagged values on a class

 

Name

Parameters

Use

CsPartial

N/A

Authorizes the split into several files of one type.

 

Tagged values on an interface

 

Name

Parameters

Use

CsPartial

N/A

Authorizes the split into several files of one type.

 

Tagged values on an association end

 

Name

Parameters

Use

CsBind

List of generic type parameters

Associates one or several template parameters to the association's reference type.