TSDL meta-data representation:
- unit_type name:size:
+ unit_type name:size;
As an example, the following structure declared in C compiled by GCC:
struct-or-variant-declaration:
specifier-qualifier-list struct-or-variant-declarator-list ;
declaration-specifiers-opt storage-class-specifier declaration-specifiers-opt declarator-list ;
- typealias declaration-specifiers abstract-declarator-list := declaration-specifiers abstract-declarator-list ;
- typealias declaration-specifiers abstract-declarator-list := declarator-list ;
+ typealias declaration-specifiers abstract-declarator-list type-assignment-operator declaration-specifiers abstract-declarator-list ;
+ typealias declaration-specifiers abstract-declarator-list type-assignment-operator declarator-list ;
specifier-qualifier-list:
type-specifier specifier-qualifier-list-opt
enumerator:
enumeration-constant
- enumeration-constant = unary-expression
- enumeration-constant = constant-expression-range
+ enumeration-constant assignment-operator unary-expression
+ enumeration-constant assignment-operator constant-expression-range
type-qualifier:
const
event { ctf-assignment-expression-list-opt }
stream { ctf-assignment-expression-list-opt }
trace { ctf-assignment-expression-list-opt }
- typealias declaration-specifiers abstract-declarator-list := declaration-specifiers abstract-declarator-list ;
- typealias declaration-specifiers abstract-declarator-list := declarator-list ;
+ typealias declaration-specifiers abstract-declarator-list type-assignment-operator declaration-specifiers abstract-declarator-list ;
+ typealias declaration-specifiers abstract-declarator-list type-assignment-operator declarator-list ;
ctf-type-specifier:
floating_point { ctf-assignment-expression-list-opt }
integer { ctf-assignment-expression-list-opt }
string { ctf-assignment-expression-list-opt }
+ string
ctf-assignment-expression-list:
ctf-assignment-expression ;
unary-expression assignment-operator unary-expression
unary-expression type-assignment-operator type-specifier
declaration-specifiers-opt storage-class-specifier declaration-specifiers-opt declarator-list
- typealias declaration-specifiers abstract-declarator-list := declaration-specifiers abstract-declarator-list
- typealias declaration-specifiers abstract-declarator-list := declarator-list
+ typealias declaration-specifiers abstract-declarator-list type-assignment-operator declaration-specifiers abstract-declarator-list
+ typealias declaration-specifiers abstract-declarator-list type-assignment-operator declarator-list