Reversing a model

 

Operating mode

From any package, the running of the reverse commands from the toolbar displays the assembly (".dll" or ".exe") to reverse. You can then press “Show assembly content” to display class hierarchy.

 

Clicking on a class or package selects it, while selecting the "Reverse" button launches the import of the selected classes.

 

 

Classes used

A reversed class can have attributes, associations or operation parameters, whose type corresponds to the non-reversed class. If so, these classes are created empty in Objecteering, and can be reversed later.

 

 

C#/Objecteering equivalence

The constructors of a C# class are created using the "create" stereotype in Objecteering.


Since the passing mode of the parameters in C# is through reference, all the parameters of an operation, except the return parameter, are of In/Out type.

 

 

Equivalence with C# primitive types

When you import an attribute or a parameter with a primitive C# type, equivalence is established with Objecteering's predefined types. Certain C# types require the addition of a tagged value.

 

Primitive C# type ...

Type in the repository ...

Tagged value ...

bool

boolean

N/A

char

char

N/A

int

integer

N/A

uint

integer

CsUnsignedInt

short

integer

CsShort

ushort

integer

CsUnsignedShort

long

integer

CsLong

ulong

integer

CsUnsignedLong

sbyte

integer

CsSignedByte

byte

integer

CsByte

float

real

N/A

double

real

CsDouble

decimal

real

CsDecimal

 

 

Restrictions

When a type declaration cannot be expressed in Objecteering, it is encapsulated in a {CsTypeExpr} tagged value, and the attribute, association or parameter type gets the "undefined" value.

 

This {CsTypeExpr} tagged value is not included in the signature of a method. Therefore, if an "m1" method is defined containing the only parameter which has a type that cannot be expressed (a CsTypeExpr), the creation of a second "m1" method with only one CsTypeExpr parameter will not be accepted by Objecteering. This situation, however, is very rare.