Lade...
 

CXDGEN DDI

CXDGEN

CXDGEN erzeugt die Definition des DDI aus einer Beschreibung mit folgender Syntax:

       DDIDefinition ::= DDI(className) memberList

       memberList ::= memberDescription | memberList memberDescription

       memberDescription ::= (memberName, dataType, refType , INDEXABLE)

       dataType ::= INTEGER | INT |
                     SHORT | CHAR | ENUMSHORT | ENUMCHAR |
                     STRING | MULTIPLE_STRING | MULTIPLE_STRING_PTR |
                     POINTER | COLL | REL_11 | REL_1M | REL_M1 | REL_MN |
                     className

       refType ::= className

Auf das Schlüsselwort 'DDI' folgend ist in Klammern der Name der Klasse anzugeben. Danach folgen die Beschreibungen der Datenfelder als ein Tupel aus Namen und Datentyp. Bei den Typen REL_xx wird es um den Typ des referenzierten Objekts erweitert. Der schreibende Zugriff auf ein Datenmember ist etwas effektiver, wenn mit Sicherheit niemals ein Index über dieses Datenfeld existiert. Dies ist die Standardannahme und indizierbare Datenmember müssen deshalb mit dem Schlüsselwort 'INDEXABLE' gekennzeichnet werden. Als Datentyp kann der Name einer Klasse oder ein elementarer

Datentyp angegeben werden. Die elementare Datentypen zeigt folgende Tabelle:

Name C/C++
INTEGER long int 
INT long int
SHORT short int
CHAR char
STRING char * bzw. CXB_STRING
MULTIPLE_STRING CXB_MUTIPLE_STRING
MULTIPLE_STRING_PTR CXB_MUTIPLE_STRING *
POINTER  T *
COLL os_collection
REL_11 T' *
REL_1M T' *
REL_M1 os_collection
REL_MN os_collection


INT und INTEGER sind synonym. T steht für einen beliebigen Typ, T' für eine Klasse.

Hinweis:  Für InstantView® sind char * und CXB_STRING äquivalent!

InstantView®