Modeling Element Rules

Classes

Class Signature

  • Additional visibilities for class signatures are set when the tagged values below are 'true':

    1. internal

    2. sealed

Class Attributes

  • Additional visibilities for class attributes are set when the tagged values below are 'true':

    1. internal

    2. protected internal

    3. volatile

Class Operations

  • Additional visibilities for class operations are set when the tagged values below are 'true':

    1. internal

    2. protected internal

    3. override

    4. sealed

    5. extern

    6. virtual

Everything else will use the checked visibility radio buttons

Interface

Interface Signature

  • Additional visibilities for interface signatures are set when the tagged value below is 'true':

    1. internal

Interface Members

  • All interface members implicitly have public access. It is a compile-time error for interface member declarations to include any modifiers. In particular, interface members cannot be declared with the modifiers abstract, public, protected, internal, private, virtual, override, or static.

Everything else will use the checked visibility radio buttons.

Structure

Structure Signature

Additional visibilities for structure signatures are set when the tagged value below is 'true':

  • internal

Struct tapes are never abstract and are always implicitly sealed; therefore the 'abstract' and 'sealed' modifiers are not permitted in a struct declaration. Since inheritance isn't supported for structs, the declared accessibility of a struct member cannot be 'protected' or 'protected internal'.

Structure Members

Function members in a struct cannot be abstract or virtual, and the override modifier is allowed only to override methods inherited from the type System.ValueType. A struct may be passed by reference to a function member using a 'ref' or 'out' parameter.

Everything else will use the checked visibility radio buttons.

Enumeration

Enumeration Signature

Additional visibilities for enumeration signatures are set when the tagged value below is 'true':

  • internal

Everything else will use the checked visibility radio buttons.

Delegate

Delegate Signature

Additional visibilities for the delegate signatures are set when the tagged value below is 'true':

  • internal

Everything else will use the checked visibility radio buttons.

C# Event

C# events are supported with an operation that has the stereotype << event>>.

Operations

There are some translations on the return type of C# operations: