The diagram below shows stereotypes of the C# profile.
C# Stereotypes with Tag values
Now our modeling tool`s C# Profile language properties is moved to tagged value in a specific stereotypes. Language properties were moved:
- Class is extended with Stereotype «C#Class»
 - Attribute is extended with Stereotype «C#Attribute»
 - Operation is extended with Stereotype «C#Operation»
 - The common information of the old language properties (Class, Attribute and Operation) is extended with Stereotype C#LanguageProperty
 
Here you will find description about:
C#Attribute
«C#Attribute» is an invisible stereotype that is used to define C# attribute properties. This is used to store the language properties of the attribute in C#.
Name  | Meta class  | 
|---|---|
C#Attribute  | Property  | 
Tag  | Type  | Description  | 
|---|---|---|
container  | String  | |
fixed  | Boolean  | Represents the usage of Fixed Size Buffer unsafe struct A public fixed int x[5]; }  | 
readonly  | Boolean  | Represents the usage of read-only attribute Class A public readonly int x; }  | 
volatile  | Boolean  | Represents the usage of volatile attribute Class A { public volatile int x; }  | 
C#Class
«C#Class» is a stereotype that is used to define property of C# class. This is used to store the language properties of the class in C#. Moreover this class is used for store the information about the static class too.
Name  | Meta class  | 
|---|---|
C#Class  | Class  | 
Tag  | Type  | Description  | 
|---|---|---|
Static  | boolean  | Represents the usage of static class static Class A { public int x; }  | 
C#Delegate
«C#Delegate» is a stereotype that indicates that model class represents C# delegate.
Name  | Meta class  | 
|---|---|
C#Delegate  | Class  | 
C#Element
«C#Element» is a stereotype that is used to define properties of all element in model.
Name  | Meta class  | Constraints  | 
|---|---|---|
C#Element  | Element  | This stereotype can be applied to all elements such as class, attribute, operation and parameter.  | 
Tag  | Type  | Description  | 
|---|---|---|
externAlias  | String  | Represents the usage of extern alias extern alias X; class Test { X::N.A a; }  | 
partial  | String  | |
C#Attributes  | String  | Represents C# attributes for element.  | 
C#EnumerationLiteral
«C#EnumeraltionLiteral» is a stereotype that is used to define enumeration.
Name  | Meta class  | 
|---|---|
C#EnumerationLiteral  | EnumerationLiteral  | 
Tag  | Type  | Description  | 
|---|---|---|
C#Initializer  | String  | Represents enumeration member’s constant value.  | 
C#Event
«C#Event» is a stereotype that is used to indicate that operation represents C# event.
Name  | Meta class  | 
|---|---|
C#Event  | Operation  | 
Tag  | Type  | Description  | 
|---|---|---|
C#AddAccessor  | String  | Adds add accessor for event  | 
C#AddAttributes  | String  | Defines C# attributes for add accessor.  | 
C#RemoveAccessor  | String  | Adds remove accessor for event  | 
C#RemoveAttributes  | String  | Defines C# attributes for remove accessor.  | 
C#Generic
«C#Generic» is a stereotype that is used to define generic properties.
Name  | Meta class  | 
|---|---|
C#Generic  | Class  | 
Tag  | Type  | Description  | 
|---|---|---|
type  | generictype  | Defines type for generic constraint parameter, class, struct, and new()  | 
C#Indexer
«C#Indexer» is a stereotype that is used to indicate that operation represents C# indexer.
Name  | Meta class  | 
|---|---|
C#Indexer  | Operation  | 
Tag  | Type  | Description  | 
|---|---|---|
C#GetAccessor  | String  | Adds get accessor for indexer.  | 
C#GetAttributes  | String  | Defines C# attributes for get accessor.  | 
C#SetAccessor  | String  | Adds set accessor for indexer.  | 
C#SetAttributes  | String  | Defines C# attributes for set accessor.  | 
C#LanguageProperty
«C#LanguageProperty» is the parent of «C#Class», «C#Attribute», and «C#Operation», So the «C#Class», «C#Attribute» and «C#Operation» also have it’s tag definition.
Name  | Meta class  | 
|---|---|
C#LanguageProperty  | Element  | 
Tag  | Type  | Description  | 
|---|---|---|
internal  | boolean  | |
new  | boolean  | |
unsafe  | boolean  | Represents the usage of unsafe element unsafe struct A { public fixed int x[5]; }  | 
C#Operation
«C#Operation» is a stereotype which is used to define properties of the operation. This is used to store the language properties of the operation in C#.
Name  | Meta class  | 
|---|---|
C#Operation  | Operation  | 
Tag  | Type  | Description  | 
|---|---|---|
conversion type  | String  | |
extern  | boolean  | Represent the usage of extern operation Class A { public extern int x(); }  | 
initialization  | String  | |
override  | boolean  | |
partial  | String  | |
virtual  | boolean  | |
C#ExplicitInterface  | Classifier  | Defines C# explicit interface for explicit interface member implementation.  | 
C#Operator
«C#Operator» is a stereotype that is used to indicate that the operation represents C# operator.
Name  | Meta class  | 
|---|---|
C#Operator  | Operation  | 
C#Parameter
«C#Parameter» is a stereotype that is used to indicate that the element represents C#Parameter.
Name  | Meta class  | 
|---|---|
C#Parameter  | Element  | 
C#Params
«C#Params» is a stereotype that is used to indicate parameter arrays.
Name  | Meta class  | 
|---|---|
C#Params  | Parameter  | 
Tag  | Type  | 
|---|---|
extend  | String  | 
params  | String  | 
C#Property
«C#Property» is a stereotype that is used to indicate that the operation represents C# property.
Name  | Meta class  | 
|---|---|
C#Property  | Operation  | 
Tag  | Type  | Description  | 
|---|---|---|
C#GetAccessor  | String  | Adds get accessor for indexer.  | 
C#GetAttributes  | String  | Defines C# attributes for get accessor.  | 
C#SetAccessor  | String  | Adds set accessor for indexer.  | 
C#SetAttributes  | String  | Defines C# attributes for set accessor.  | 
C#Struct
«C#Struct» is a stereotype that is used to indicate that the model class represents C# structure.
Name  | Meta class  | 
|---|---|
C#Struct  | Class  | 
C#Using
«C#Using» is a stereotype that is used to indicate that the usage dependency is C# Using directive.
Name  | Meta class  | Constraints  | 
|---|---|---|
C#Using  | Association, Realization, Usage  | The clients of dependency are Component, and Namespace. | 
