1 #ifndef Rose_Traits_generated_h
2 #define Rose_Traits_generated_h
10 static constexpr
size_t position{0};
11 static constexpr
char const *
const name{
"modifier"};
12 static constexpr
char const *
const typestr{
"SgAccessModifier::access_modifier_enum"};
13 static constexpr
bool traverse{
false};
14 static constexpr
auto mbr_ptr{&SgAccessModifier::p_modifier};
15 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
16 using bind = Desc<SgAccessModifier, SgAccessModifier::access_modifier_enum SgAccessModifier::*, &SgAccessModifier::p_modifier>;
21 static constexpr
char const *
const name{
"AccessModifier"};
22 static constexpr
unsigned long variant{1};
23 static constexpr
bool concrete{
true};
33 static constexpr
size_t position{0};
34 static constexpr
char const *
const name{
"argument_name"};
35 static constexpr
char const *
const typestr{
"SgName"};
36 static constexpr
bool traverse{
false};
37 static constexpr
auto mbr_ptr{&SgActualArgumentExpression::p_argument_name};
38 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
39 using bind = Desc<SgActualArgumentExpression, SgName SgActualArgumentExpression::*, &SgActualArgumentExpression::p_argument_name>;
44 static constexpr
size_t position{1};
45 static constexpr
char const *
const name{
"expression"};
46 static constexpr
char const *
const typestr{
"SgExpression*"};
47 static constexpr
bool traverse{
true};
48 static constexpr
auto mbr_ptr{&SgActualArgumentExpression::p_expression};
49 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
50 using bind = Desc<SgActualArgumentExpression, SgExpression* SgActualArgumentExpression::*, &SgActualArgumentExpression::p_expression>;
55 static constexpr
char const *
const name{
"ActualArgumentExpression"};
56 static constexpr
unsigned long variant{2};
57 static constexpr
bool concrete{
true};
67 static constexpr
char const *
const name{
"AbsOp"};
68 static constexpr
unsigned long variant{3};
69 static constexpr
bool concrete{
true};
73 template <>
struct node_from_variant_t<3> {
using type =
SgAbsOp; };
79 static constexpr
size_t position{0};
80 static constexpr
char const *
const name{
"base_type"};
81 static constexpr
char const *
const typestr{
"SgType*"};
82 static constexpr
bool traverse{
true};
83 static constexpr
auto mbr_ptr{&SgAdaAccessType::p_base_type};
84 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
85 using bind = Desc<SgAdaAccessType, SgType* SgAdaAccessType::*, &SgAdaAccessType::p_base_type>;
89 using field_type = bool;
90 static constexpr
size_t position{1};
91 static constexpr
char const *
const name{
"is_general_access"};
92 static constexpr
char const *
const typestr{
"bool"};
93 static constexpr
bool traverse{
false};
94 static constexpr
auto mbr_ptr{&SgAdaAccessType::p_is_general_access};
95 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
96 using bind = Desc<SgAdaAccessType, bool SgAdaAccessType::*, &SgAdaAccessType::p_is_general_access>;
100 using field_type = bool;
101 static constexpr
size_t position{2};
102 static constexpr
char const *
const name{
"is_anonymous"};
103 static constexpr
char const *
const typestr{
"bool"};
104 static constexpr
bool traverse{
false};
105 static constexpr
auto mbr_ptr{&SgAdaAccessType::p_is_anonymous};
106 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
107 using bind = Desc<SgAdaAccessType, bool SgAdaAccessType::*, &SgAdaAccessType::p_is_anonymous>;
112 static constexpr
char const *
const name{
"AdaAccessType"};
113 static constexpr
unsigned long variant{4};
114 static constexpr
bool concrete{
true};
124 static constexpr
size_t position{0};
125 static constexpr
char const *
const name{
"parameterScope"};
126 static constexpr
char const *
const typestr{
"SgFunctionParameterScope*"};
127 static constexpr
bool traverse{
false};
128 static constexpr
auto mbr_ptr{&SgAdaAcceptStmt::p_parameterScope};
129 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
130 using bind = Desc<SgAdaAcceptStmt, SgFunctionParameterScope* SgAdaAcceptStmt::*, &SgAdaAcceptStmt::p_parameterScope>;
135 static constexpr
size_t position{1};
136 static constexpr
char const *
const name{
"parameterList"};
137 static constexpr
char const *
const typestr{
"SgFunctionParameterList*"};
138 static constexpr
bool traverse{
true};
139 static constexpr
auto mbr_ptr{&SgAdaAcceptStmt::p_parameterList};
140 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
141 using bind = Desc<SgAdaAcceptStmt, SgFunctionParameterList* SgAdaAcceptStmt::*, &SgAdaAcceptStmt::p_parameterList>;
146 static constexpr
size_t position{2};
147 static constexpr
char const *
const name{
"entry"};
148 static constexpr
char const *
const typestr{
"SgExpression*"};
149 static constexpr
bool traverse{
true};
150 static constexpr
auto mbr_ptr{&SgAdaAcceptStmt::p_entry};
151 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
152 using bind = Desc<SgAdaAcceptStmt, SgExpression* SgAdaAcceptStmt::*, &SgAdaAcceptStmt::p_entry>;
157 static constexpr
size_t position{3};
158 static constexpr
char const *
const name{
"index"};
159 static constexpr
char const *
const typestr{
"SgExpression*"};
160 static constexpr
bool traverse{
true};
161 static constexpr
auto mbr_ptr{&SgAdaAcceptStmt::p_index};
162 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
163 using bind = Desc<SgAdaAcceptStmt, SgExpression* SgAdaAcceptStmt::*, &SgAdaAcceptStmt::p_index>;
168 static constexpr
size_t position{4};
169 static constexpr
char const *
const name{
"body"};
170 static constexpr
char const *
const typestr{
"SgStatement*"};
171 static constexpr
bool traverse{
true};
172 static constexpr
auto mbr_ptr{&SgAdaAcceptStmt::p_body};
173 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
174 using bind = Desc<SgAdaAcceptStmt, SgStatement* SgAdaAcceptStmt::*, &SgAdaAcceptStmt::p_body>;
179 static constexpr
char const *
const name{
"AdaAcceptStmt"};
180 static constexpr
unsigned long variant{5};
181 static constexpr
bool concrete{
true};
183 using fields_t =
mp::List<describe_field_t<SgAdaAcceptStmt,SgFunctionParameterScope*,&SgAdaAcceptStmt::p_parameterScope>,
describe_field_t<SgAdaAcceptStmt,SgFunctionParameterList*,&SgAdaAcceptStmt::p_parameterList>,
describe_field_t<SgAdaAcceptStmt,SgExpression*,&SgAdaAcceptStmt::p_entry>,
describe_field_t<SgAdaAcceptStmt,SgExpression*,&SgAdaAcceptStmt::p_index>,
describe_field_t<SgAdaAcceptStmt,SgStatement*,&SgAdaAcceptStmt::p_body>>;
191 static constexpr
size_t position{0};
192 static constexpr
char const *
const name{
"time"};
193 static constexpr
char const *
const typestr{
"SgExpression*"};
194 static constexpr
bool traverse{
true};
195 static constexpr
auto mbr_ptr{&SgAdaDelayStmt::p_time};
196 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
197 using bind = Desc<SgAdaDelayStmt, SgExpression* SgAdaDelayStmt::*, &SgAdaDelayStmt::p_time>;
201 using field_type = bool;
202 static constexpr
size_t position{1};
203 static constexpr
char const *
const name{
"isRelative"};
204 static constexpr
char const *
const typestr{
"bool"};
205 static constexpr
bool traverse{
false};
206 static constexpr
auto mbr_ptr{&SgAdaDelayStmt::p_isRelative};
207 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
208 using bind = Desc<SgAdaDelayStmt, bool SgAdaDelayStmt::*, &SgAdaDelayStmt::p_isRelative>;
213 static constexpr
char const *
const name{
"AdaDelayStmt"};
214 static constexpr
unsigned long variant{6};
215 static constexpr
bool concrete{
true};
225 static constexpr
size_t position{0};
226 static constexpr
char const *
const name{
"entryIndex"};
227 static constexpr
char const *
const typestr{
"SgInitializedName*"};
228 static constexpr
bool traverse{
true};
229 static constexpr
auto mbr_ptr{&SgAdaEntryDecl::p_entryIndex};
230 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
231 using bind = Desc<SgAdaEntryDecl, SgInitializedName* SgAdaEntryDecl::*, &SgAdaEntryDecl::p_entryIndex>;
236 static constexpr
size_t position{1};
237 static constexpr
char const *
const name{
"entryBarrier"};
238 static constexpr
char const *
const typestr{
"SgExpression*"};
239 static constexpr
bool traverse{
true};
240 static constexpr
auto mbr_ptr{&SgAdaEntryDecl::p_entryBarrier};
241 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
242 using bind = Desc<SgAdaEntryDecl, SgExpression* SgAdaEntryDecl::*, &SgAdaEntryDecl::p_entryBarrier>;
247 static constexpr
char const *
const name{
"AdaEntryDecl"};
248 static constexpr
unsigned long variant{7};
249 static constexpr
bool concrete{
true};
259 static constexpr
size_t position{0};
260 static constexpr
char const *
const name{
"loop"};
261 static constexpr
char const *
const typestr{
"SgStatement*"};
262 static constexpr
bool traverse{
false};
263 static constexpr
auto mbr_ptr{&SgAdaExitStmt::p_loop};
264 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
265 using bind = Desc<SgAdaExitStmt, SgStatement* SgAdaExitStmt::*, &SgAdaExitStmt::p_loop>;
270 static constexpr
size_t position{1};
271 static constexpr
char const *
const name{
"condition"};
272 static constexpr
char const *
const typestr{
"SgExpression*"};
273 static constexpr
bool traverse{
true};
274 static constexpr
auto mbr_ptr{&SgAdaExitStmt::p_condition};
275 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
276 using bind = Desc<SgAdaExitStmt, SgExpression* SgAdaExitStmt::*, &SgAdaExitStmt::p_condition>;
280 using field_type = bool;
281 static constexpr
size_t position{2};
282 static constexpr
char const *
const name{
"explicitLoopName"};
283 static constexpr
char const *
const typestr{
"bool"};
284 static constexpr
bool traverse{
false};
285 static constexpr
auto mbr_ptr{&SgAdaExitStmt::p_explicitLoopName};
286 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
287 using bind = Desc<SgAdaExitStmt, bool SgAdaExitStmt::*, &SgAdaExitStmt::p_explicitLoopName>;
292 static constexpr
char const *
const name{
"AdaExitStmt"};
293 static constexpr
unsigned long variant{8};
294 static constexpr
bool concrete{
true};
304 static constexpr
char const *
const name{
"AdaDiscreteType"};
305 static constexpr
unsigned long variant{9};
306 static constexpr
bool concrete{
true};
315 using field_type = std::string;
316 static constexpr
size_t position{0};
317 static constexpr
char const *
const name{
"valueString"};
318 static constexpr
char const *
const typestr{
"std::string"};
319 static constexpr
bool traverse{
false};
320 static constexpr
auto mbr_ptr{&SgAdaFloatVal::p_valueString};
321 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
322 using bind = Desc<SgAdaFloatVal, std::string SgAdaFloatVal::*, &SgAdaFloatVal::p_valueString>;
327 static constexpr
char const *
const name{
"AdaFloatVal"};
328 static constexpr
unsigned long variant{10};
329 static constexpr
bool concrete{
true};
339 static constexpr
size_t position{0};
340 static constexpr
char const *
const name{
"body"};
341 static constexpr
char const *
const typestr{
"SgBasicBlock*"};
342 static constexpr
bool traverse{
true};
343 static constexpr
auto mbr_ptr{&SgAdaLoopStmt::p_body};
344 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
345 using bind = Desc<SgAdaLoopStmt, SgBasicBlock* SgAdaLoopStmt::*, &SgAdaLoopStmt::p_body>;
349 using field_type = std::string;
350 static constexpr
size_t position{1};
351 static constexpr
char const *
const name{
"string_label"};
352 static constexpr
char const *
const typestr{
"std::string"};
353 static constexpr
bool traverse{
false};
354 static constexpr
auto mbr_ptr{&SgAdaLoopStmt::p_string_label};
355 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
356 using bind = Desc<SgAdaLoopStmt, std::string SgAdaLoopStmt::*, &SgAdaLoopStmt::p_string_label>;
361 static constexpr
char const *
const name{
"AdaLoopStmt"};
362 static constexpr
unsigned long variant{11};
363 static constexpr
bool concrete{
true};
373 static constexpr
size_t position{0};
374 static constexpr
char const *
const name{
"spec"};
375 static constexpr
char const *
const typestr{
"SgAdaPackageSpec*"};
376 static constexpr
bool traverse{
false};
377 static constexpr
auto mbr_ptr{&SgAdaPackageBody::p_spec};
378 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
379 using bind = Desc<SgAdaPackageBody, SgAdaPackageSpec* SgAdaPackageBody::*, &SgAdaPackageBody::p_spec>;
383 using field_type = SgStatementPtrList;
384 static constexpr
size_t position{1};
385 static constexpr
char const *
const name{
"statements"};
386 static constexpr
char const *
const typestr{
"SgStatementPtrList"};
387 static constexpr
bool traverse{
true};
388 static constexpr
auto mbr_ptr{&SgAdaPackageBody::p_statements};
389 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
390 using bind = Desc<SgAdaPackageBody, SgStatementPtrList SgAdaPackageBody::*, &SgAdaPackageBody::p_statements>;
395 static constexpr
char const *
const name{
"AdaPackageBody"};
396 static constexpr
unsigned long variant{12};
397 static constexpr
bool concrete{
true};
407 static constexpr
size_t position{0};
408 static constexpr
char const *
const name{
"name"};
409 static constexpr
char const *
const typestr{
"SgName"};
410 static constexpr
bool traverse{
false};
411 static constexpr
auto mbr_ptr{&SgAdaPackageBodyDecl::p_name};
412 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
413 using bind = Desc<SgAdaPackageBodyDecl, SgName SgAdaPackageBodyDecl::*, &SgAdaPackageBodyDecl::p_name>;
418 static constexpr
size_t position{1};
419 static constexpr
char const *
const name{
"definition"};
420 static constexpr
char const *
const typestr{
"SgAdaPackageBody*"};
421 static constexpr
bool traverse{
true};
422 static constexpr
auto mbr_ptr{&SgAdaPackageBodyDecl::p_definition};
423 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
424 using bind = Desc<SgAdaPackageBodyDecl, SgAdaPackageBody* SgAdaPackageBodyDecl::*, &SgAdaPackageBodyDecl::p_definition>;
429 static constexpr
size_t position{2};
430 static constexpr
char const *
const name{
"scope"};
431 static constexpr
char const *
const typestr{
"SgScopeStatement*"};
432 static constexpr
bool traverse{
false};
433 static constexpr
auto mbr_ptr{&SgAdaPackageBodyDecl::p_scope};
434 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
435 using bind = Desc<SgAdaPackageBodyDecl, SgScopeStatement* SgAdaPackageBodyDecl::*, &SgAdaPackageBodyDecl::p_scope>;
440 static constexpr
char const *
const name{
"AdaPackageBodyDecl"};
441 static constexpr
unsigned long variant{13};
442 static constexpr
bool concrete{
true};
452 static constexpr
size_t position{0};
453 static constexpr
char const *
const name{
"body"};
454 static constexpr
char const *
const typestr{
"SgAdaPackageBody*"};
455 static constexpr
bool traverse{
false};
456 static constexpr
auto mbr_ptr{&SgAdaPackageSpec::p_body};
457 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
458 using bind = Desc<SgAdaPackageSpec, SgAdaPackageBody* SgAdaPackageSpec::*, &SgAdaPackageSpec::p_body>;
462 using field_type = bool;
463 static constexpr
size_t position{1};
464 static constexpr
char const *
const name{
"hasPrivate"};
465 static constexpr
char const *
const typestr{
"bool"};
466 static constexpr
bool traverse{
false};
467 static constexpr
auto mbr_ptr{&SgAdaPackageSpec::p_hasPrivate};
468 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
469 using bind = Desc<SgAdaPackageSpec, bool SgAdaPackageSpec::*, &SgAdaPackageSpec::p_hasPrivate>;
473 using field_type = SgDeclarationStatementPtrList;
474 static constexpr
size_t position{2};
475 static constexpr
char const *
const name{
"declarations"};
476 static constexpr
char const *
const typestr{
"SgDeclarationStatementPtrList"};
477 static constexpr
bool traverse{
true};
478 static constexpr
auto mbr_ptr{&SgAdaPackageSpec::p_declarations};
479 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
480 using bind = Desc<SgAdaPackageSpec, SgDeclarationStatementPtrList SgAdaPackageSpec::*, &SgAdaPackageSpec::p_declarations>;
485 static constexpr
char const *
const name{
"AdaPackageSpec"};
486 static constexpr
unsigned long variant{14};
487 static constexpr
bool concrete{
true};
497 static constexpr
size_t position{0};
498 static constexpr
char const *
const name{
"name"};
499 static constexpr
char const *
const typestr{
"SgName"};
500 static constexpr
bool traverse{
false};
501 static constexpr
auto mbr_ptr{&SgAdaPackageSpecDecl::p_name};
502 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
503 using bind = Desc<SgAdaPackageSpecDecl, SgName SgAdaPackageSpecDecl::*, &SgAdaPackageSpecDecl::p_name>;
508 static constexpr
size_t position{1};
509 static constexpr
char const *
const name{
"definition"};
510 static constexpr
char const *
const typestr{
"SgAdaPackageSpec*"};
511 static constexpr
bool traverse{
true};
512 static constexpr
auto mbr_ptr{&SgAdaPackageSpecDecl::p_definition};
513 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
514 using bind = Desc<SgAdaPackageSpecDecl, SgAdaPackageSpec* SgAdaPackageSpecDecl::*, &SgAdaPackageSpecDecl::p_definition>;
519 static constexpr
size_t position{2};
520 static constexpr
char const *
const name{
"scope"};
521 static constexpr
char const *
const typestr{
"SgScopeStatement*"};
522 static constexpr
bool traverse{
false};
523 static constexpr
auto mbr_ptr{&SgAdaPackageSpecDecl::p_scope};
524 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
525 using bind = Desc<SgAdaPackageSpecDecl, SgScopeStatement* SgAdaPackageSpecDecl::*, &SgAdaPackageSpecDecl::p_scope>;
530 static constexpr
char const *
const name{
"AdaPackageSpecDecl"};
531 static constexpr
unsigned long variant{15};
532 static constexpr
bool concrete{
true};
542 static constexpr
size_t position{0};
543 static constexpr
char const *
const name{
"declaration"};
544 static constexpr
char const *
const typestr{
"SgDeclarationStatement*"};
545 static constexpr
bool traverse{
true};
546 static constexpr
auto mbr_ptr{&SgAdaPackageSymbol::p_declaration};
547 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
548 using bind = Desc<SgAdaPackageSymbol, SgDeclarationStatement* SgAdaPackageSymbol::*, &SgAdaPackageSymbol::p_declaration>;
553 static constexpr
char const *
const name{
"AdaPackageSymbol"};
554 static constexpr
unsigned long variant{16};
555 static constexpr
bool concrete{
true};
565 static constexpr
size_t position{0};
566 static constexpr
char const *
const name{
"range"};
567 static constexpr
char const *
const typestr{
"SgExpression*"};
568 static constexpr
bool traverse{
true};
569 static constexpr
auto mbr_ptr{&SgAdaRangeConstraint::p_range};
570 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
571 using bind = Desc<SgAdaRangeConstraint, SgExpression* SgAdaRangeConstraint::*, &SgAdaRangeConstraint::p_range>;
576 static constexpr
char const *
const name{
"AdaRangeConstraint"};
577 static constexpr
unsigned long variant{17};
578 static constexpr
bool concrete{
true};
588 static constexpr
size_t position{0};
589 static constexpr
char const *
const name{
"name"};
590 static constexpr
char const *
const typestr{
"SgName"};
591 static constexpr
bool traverse{
false};
592 static constexpr
auto mbr_ptr{&SgAdaRenamingDecl::p_name};
593 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
594 using bind = Desc<SgAdaRenamingDecl, SgName SgAdaRenamingDecl::*, &SgAdaRenamingDecl::p_name>;
599 static constexpr
size_t position{1};
600 static constexpr
char const *
const name{
"renamed"};
601 static constexpr
char const *
const typestr{
"SgExpression*"};
602 static constexpr
bool traverse{
true};
603 static constexpr
auto mbr_ptr{&SgAdaRenamingDecl::p_renamed};
604 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
605 using bind = Desc<SgAdaRenamingDecl, SgExpression* SgAdaRenamingDecl::*, &SgAdaRenamingDecl::p_renamed>;
610 static constexpr
size_t position{2};
611 static constexpr
char const *
const name{
"type"};
612 static constexpr
char const *
const typestr{
"SgType*"};
613 static constexpr
bool traverse{
false};
614 static constexpr
auto mbr_ptr{&SgAdaRenamingDecl::p_type};
615 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
616 using bind = Desc<SgAdaRenamingDecl, SgType* SgAdaRenamingDecl::*, &SgAdaRenamingDecl::p_type>;
621 static constexpr
char const *
const name{
"AdaRenamingDecl"};
622 static constexpr
unsigned long variant{18};
623 static constexpr
bool concrete{
true};
633 static constexpr
size_t position{0};
634 static constexpr
char const *
const name{
"base_type"};
635 static constexpr
char const *
const typestr{
"SgType*"};
636 static constexpr
bool traverse{
true};
637 static constexpr
auto mbr_ptr{&SgAdaSubtype::p_base_type};
638 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
639 using bind = Desc<SgAdaSubtype, SgType* SgAdaSubtype::*, &SgAdaSubtype::p_base_type>;
644 static constexpr
size_t position{1};
645 static constexpr
char const *
const name{
"constraint"};
646 static constexpr
char const *
const typestr{
"SgAdaTypeConstraint*"};
647 static constexpr
bool traverse{
true};
648 static constexpr
auto mbr_ptr{&SgAdaSubtype::p_constraint};
649 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
650 using bind = Desc<SgAdaSubtype, SgAdaTypeConstraint* SgAdaSubtype::*, &SgAdaSubtype::p_constraint>;
654 using field_type = bool;
655 static constexpr
size_t position{2};
656 static constexpr
char const *
const name{
"fromRootType"};
657 static constexpr
char const *
const typestr{
"bool"};
658 static constexpr
bool traverse{
false};
659 static constexpr
auto mbr_ptr{&SgAdaSubtype::p_fromRootType};
660 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
661 using bind = Desc<SgAdaSubtype, bool SgAdaSubtype::*, &SgAdaSubtype::p_fromRootType>;
666 static constexpr
char const *
const name{
"AdaSubtype"};
667 static constexpr
unsigned long variant{19};
668 static constexpr
bool concrete{
true};
678 static constexpr
size_t position{0};
679 static constexpr
char const *
const name{
"spec"};
680 static constexpr
char const *
const typestr{
"SgAdaTaskSpec*"};
681 static constexpr
bool traverse{
false};
682 static constexpr
auto mbr_ptr{&SgAdaTaskBody::p_spec};
683 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
684 using bind = Desc<SgAdaTaskBody, SgAdaTaskSpec* SgAdaTaskBody::*, &SgAdaTaskBody::p_spec>;
688 using field_type = SgStatementPtrList;
689 static constexpr
size_t position{1};
690 static constexpr
char const *
const name{
"statements"};
691 static constexpr
char const *
const typestr{
"SgStatementPtrList"};
692 static constexpr
bool traverse{
true};
693 static constexpr
auto mbr_ptr{&SgAdaTaskBody::p_statements};
694 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
695 using bind = Desc<SgAdaTaskBody, SgStatementPtrList SgAdaTaskBody::*, &SgAdaTaskBody::p_statements>;
700 static constexpr
char const *
const name{
"AdaTaskBody"};
701 static constexpr
unsigned long variant{20};
702 static constexpr
bool concrete{
true};
712 static constexpr
size_t position{0};
713 static constexpr
char const *
const name{
"name"};
714 static constexpr
char const *
const typestr{
"SgName"};
715 static constexpr
bool traverse{
false};
716 static constexpr
auto mbr_ptr{&SgAdaTaskBodyDecl::p_name};
717 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
718 using bind = Desc<SgAdaTaskBodyDecl, SgName SgAdaTaskBodyDecl::*, &SgAdaTaskBodyDecl::p_name>;
723 static constexpr
size_t position{1};
724 static constexpr
char const *
const name{
"specificationDeclaration"};
725 static constexpr
char const *
const typestr{
"SgDeclarationStatement*"};
726 static constexpr
bool traverse{
false};
727 static constexpr
auto mbr_ptr{&SgAdaTaskBodyDecl::p_specificationDeclaration};
728 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
729 using bind = Desc<SgAdaTaskBodyDecl, SgDeclarationStatement* SgAdaTaskBodyDecl::*, &SgAdaTaskBodyDecl::p_specificationDeclaration>;
734 static constexpr
size_t position{2};
735 static constexpr
char const *
const name{
"definition"};
736 static constexpr
char const *
const typestr{
"SgAdaTaskBody*"};
737 static constexpr
bool traverse{
true};
738 static constexpr
auto mbr_ptr{&SgAdaTaskBodyDecl::p_definition};
739 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
740 using bind = Desc<SgAdaTaskBodyDecl, SgAdaTaskBody* SgAdaTaskBodyDecl::*, &SgAdaTaskBodyDecl::p_definition>;
745 static constexpr
char const *
const name{
"AdaTaskBodyDecl"};
746 static constexpr
unsigned long variant{21};
747 static constexpr
bool concrete{
true};
757 static constexpr
size_t position{0};
758 static constexpr
char const *
const name{
"body"};
759 static constexpr
char const *
const typestr{
"SgAdaTaskBody*"};
760 static constexpr
bool traverse{
false};
761 static constexpr
auto mbr_ptr{&SgAdaTaskSpec::p_body};
762 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
763 using bind = Desc<SgAdaTaskSpec, SgAdaTaskBody* SgAdaTaskSpec::*, &SgAdaTaskSpec::p_body>;
767 using field_type = bool;
768 static constexpr
size_t position{1};
769 static constexpr
char const *
const name{
"hasMembers"};
770 static constexpr
char const *
const typestr{
"bool"};
771 static constexpr
bool traverse{
false};
772 static constexpr
auto mbr_ptr{&SgAdaTaskSpec::p_hasMembers};
773 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
774 using bind = Desc<SgAdaTaskSpec, bool SgAdaTaskSpec::*, &SgAdaTaskSpec::p_hasMembers>;
778 using field_type = SgDeclarationStatementPtrList;
779 static constexpr
size_t position{2};
780 static constexpr
char const *
const name{
"declarations"};
781 static constexpr
char const *
const typestr{
"SgDeclarationStatementPtrList"};
782 static constexpr
bool traverse{
true};
783 static constexpr
auto mbr_ptr{&SgAdaTaskSpec::p_declarations};
784 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
785 using bind = Desc<SgAdaTaskSpec, SgDeclarationStatementPtrList SgAdaTaskSpec::*, &SgAdaTaskSpec::p_declarations>;
789 using field_type = bool;
790 static constexpr
size_t position{3};
791 static constexpr
char const *
const name{
"hasPrivate"};
792 static constexpr
char const *
const typestr{
"bool"};
793 static constexpr
bool traverse{
false};
794 static constexpr
auto mbr_ptr{&SgAdaTaskSpec::p_hasPrivate};
795 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
796 using bind = Desc<SgAdaTaskSpec, bool SgAdaTaskSpec::*, &SgAdaTaskSpec::p_hasPrivate>;
801 static constexpr
char const *
const name{
"AdaTaskSpec"};
802 static constexpr
unsigned long variant{22};
803 static constexpr
bool concrete{
true};
805 using fields_t =
mp::List<describe_field_t<SgAdaTaskSpec,SgAdaTaskBody*,&SgAdaTaskSpec::p_body>,
describe_field_t<SgAdaTaskSpec,bool,&SgAdaTaskSpec::p_hasMembers>,
describe_field_t<SgAdaTaskSpec,SgDeclarationStatementPtrList,&SgAdaTaskSpec::p_declarations>,
describe_field_t<SgAdaTaskSpec,bool,&SgAdaTaskSpec::p_hasPrivate>>;
813 static constexpr
size_t position{0};
814 static constexpr
char const *
const name{
"name"};
815 static constexpr
char const *
const typestr{
"SgName"};
816 static constexpr
bool traverse{
false};
817 static constexpr
auto mbr_ptr{&SgAdaTaskSpecDecl::p_name};
818 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
819 using bind = Desc<SgAdaTaskSpecDecl, SgName SgAdaTaskSpecDecl::*, &SgAdaTaskSpecDecl::p_name>;
824 static constexpr
size_t position{1};
825 static constexpr
char const *
const name{
"definition"};
826 static constexpr
char const *
const typestr{
"SgAdaTaskSpec*"};
827 static constexpr
bool traverse{
true};
828 static constexpr
auto mbr_ptr{&SgAdaTaskSpecDecl::p_definition};
829 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
830 using bind = Desc<SgAdaTaskSpecDecl, SgAdaTaskSpec* SgAdaTaskSpecDecl::*, &SgAdaTaskSpecDecl::p_definition>;
835 static constexpr
size_t position{2};
836 static constexpr
char const *
const name{
"type"};
837 static constexpr
char const *
const typestr{
"SgAdaTaskType*"};
838 static constexpr
bool traverse{
false};
839 static constexpr
auto mbr_ptr{&SgAdaTaskSpecDecl::p_type};
840 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
841 using bind = Desc<SgAdaTaskSpecDecl, SgAdaTaskType* SgAdaTaskSpecDecl::*, &SgAdaTaskSpecDecl::p_type>;
846 static constexpr
char const *
const name{
"AdaTaskSpecDecl"};
847 static constexpr
unsigned long variant{23};
848 static constexpr
bool concrete{
true};
858 static constexpr
size_t position{0};
859 static constexpr
char const *
const name{
"declaration"};
860 static constexpr
char const *
const typestr{
"SgDeclarationStatement*"};
861 static constexpr
bool traverse{
true};
862 static constexpr
auto mbr_ptr{&SgAdaTaskSymbol::p_declaration};
863 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
864 using bind = Desc<SgAdaTaskSymbol, SgDeclarationStatement* SgAdaTaskSymbol::*, &SgAdaTaskSymbol::p_declaration>;
869 static constexpr
char const *
const name{
"AdaTaskSymbol"};
870 static constexpr
unsigned long variant{24};
871 static constexpr
bool concrete{
true};
881 static constexpr
size_t position{0};
882 static constexpr
char const *
const name{
"decl"};
883 static constexpr
char const *
const typestr{
"SgAdaTaskSpecDecl*"};
884 static constexpr
bool traverse{
false};
885 static constexpr
auto mbr_ptr{&SgAdaTaskRefExp::p_decl};
886 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
887 using bind = Desc<SgAdaTaskRefExp, SgAdaTaskSpecDecl* SgAdaTaskRefExp::*, &SgAdaTaskRefExp::p_decl>;
892 static constexpr
char const *
const name{
"AdaTaskRefExp"};
893 static constexpr
unsigned long variant{25};
894 static constexpr
bool concrete{
true};
904 static constexpr
char const *
const name{
"AdaTaskType"};
905 static constexpr
unsigned long variant{26};
906 static constexpr
bool concrete{
true};
916 static constexpr
size_t position{0};
917 static constexpr
char const *
const name{
"name"};
918 static constexpr
char const *
const typestr{
"SgName"};
919 static constexpr
bool traverse{
false};
920 static constexpr
auto mbr_ptr{&SgAdaTaskTypeDecl::p_name};
921 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
922 using bind = Desc<SgAdaTaskTypeDecl, SgName SgAdaTaskTypeDecl::*, &SgAdaTaskTypeDecl::p_name>;
927 static constexpr
size_t position{1};
928 static constexpr
char const *
const name{
"definition"};
929 static constexpr
char const *
const typestr{
"SgAdaTaskSpec*"};
930 static constexpr
bool traverse{
true};
931 static constexpr
auto mbr_ptr{&SgAdaTaskTypeDecl::p_definition};
932 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
933 using bind = Desc<SgAdaTaskTypeDecl, SgAdaTaskSpec* SgAdaTaskTypeDecl::*, &SgAdaTaskTypeDecl::p_definition>;
938 static constexpr
size_t position{2};
939 static constexpr
char const *
const name{
"type"};
940 static constexpr
char const *
const typestr{
"SgAdaTaskType*"};
941 static constexpr
bool traverse{
false};
942 static constexpr
auto mbr_ptr{&SgAdaTaskTypeDecl::p_type};
943 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
944 using bind = Desc<SgAdaTaskTypeDecl, SgAdaTaskType* SgAdaTaskTypeDecl::*, &SgAdaTaskTypeDecl::p_type>;
949 static constexpr
size_t position{3};
950 static constexpr
char const *
const name{
"scope"};
951 static constexpr
char const *
const typestr{
"SgScopeStatement*"};
952 static constexpr
bool traverse{
false};
953 static constexpr
auto mbr_ptr{&SgAdaTaskTypeDecl::p_scope};
954 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
955 using bind = Desc<SgAdaTaskTypeDecl, SgScopeStatement* SgAdaTaskTypeDecl::*, &SgAdaTaskTypeDecl::p_scope>;
960 static constexpr
char const *
const name{
"AdaTaskTypeDecl"};
961 static constexpr
unsigned long variant{27};
962 static constexpr
bool concrete{
true};
964 using fields_t =
mp::List<describe_field_t<SgAdaTaskTypeDecl,SgName,&SgAdaTaskTypeDecl::p_name>,
describe_field_t<SgAdaTaskTypeDecl,SgAdaTaskSpec*,&SgAdaTaskTypeDecl::p_definition>,
describe_field_t<SgAdaTaskTypeDecl,SgAdaTaskType*,&SgAdaTaskTypeDecl::p_type>,
describe_field_t<SgAdaTaskTypeDecl,SgScopeStatement*,&SgAdaTaskTypeDecl::p_scope>>;
972 static constexpr
char const *
const name{
"AdaTypeConstraint"};
973 static constexpr
unsigned long variant{28};
974 static constexpr
bool concrete{
false};
984 static constexpr
char const *
const name{
"AddOp"};
985 static constexpr
unsigned long variant{29};
986 static constexpr
bool concrete{
true};
990 template <>
struct node_from_variant_t<29> {
using type =
SgAddOp; };
996 static constexpr
size_t position{0};
997 static constexpr
char const *
const name{
"originalExpressionTree"};
998 static constexpr
char const *
const typestr{
"SgExpression*"};
999 static constexpr
bool traverse{
false};
1000 static constexpr
auto mbr_ptr{&SgAddressOfOp::p_originalExpressionTree};
1001 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1002 using bind = Desc<SgAddressOfOp, SgExpression* SgAddressOfOp::*, &SgAddressOfOp::p_originalExpressionTree>;
1007 static constexpr
char const *
const name{
"AddressOfOp"};
1008 static constexpr
unsigned long variant{30};
1009 static constexpr
bool concrete{
true};
1019 static constexpr
size_t position{0};
1020 static constexpr
char const *
const name{
"initializers"};
1021 static constexpr
char const *
const typestr{
"SgExprListExp*"};
1022 static constexpr
bool traverse{
true};
1024 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1025 using bind = Desc<SgAggregateInitializer, SgExprListExp* SgAggregateInitializer::*, &SgAggregateInitializer::p_initializers>;
1030 static constexpr
size_t position{1};
1031 static constexpr
char const *
const name{
"expression_type"};
1032 static constexpr
char const *
const typestr{
"SgType*"};
1033 static constexpr
bool traverse{
false};
1034 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_expression_type};
1035 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1036 using bind = Desc<SgAggregateInitializer, SgType* SgAggregateInitializer::*, &SgAggregateInitializer::p_expression_type>;
1040 using field_type = bool;
1041 static constexpr
size_t position{2};
1042 static constexpr
char const *
const name{
"need_explicit_braces"};
1043 static constexpr
char const *
const typestr{
"bool"};
1044 static constexpr
bool traverse{
false};
1045 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_need_explicit_braces};
1046 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1047 using bind = Desc<SgAggregateInitializer, bool SgAggregateInitializer::*, &SgAggregateInitializer::p_need_explicit_braces>;
1051 using field_type = bool;
1052 static constexpr
size_t position{3};
1053 static constexpr
char const *
const name{
"uses_compound_literal"};
1054 static constexpr
char const *
const typestr{
"bool"};
1055 static constexpr
bool traverse{
false};
1056 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_uses_compound_literal};
1057 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1058 using bind = Desc<SgAggregateInitializer, bool SgAggregateInitializer::*, &SgAggregateInitializer::p_uses_compound_literal>;
1062 using field_type = bool;
1063 static constexpr
size_t position{4};
1064 static constexpr
char const *
const name{
"requiresGlobalNameQualificationOnType"};
1065 static constexpr
char const *
const typestr{
"bool"};
1066 static constexpr
bool traverse{
false};
1067 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_requiresGlobalNameQualificationOnType};
1068 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1069 using bind = Desc<SgAggregateInitializer, bool SgAggregateInitializer::*, &SgAggregateInitializer::p_requiresGlobalNameQualificationOnType>;
1073 using field_type = int;
1074 static constexpr
size_t position{5};
1075 static constexpr
char const *
const name{
"name_qualification_length_for_type"};
1076 static constexpr
char const *
const typestr{
"int"};
1077 static constexpr
bool traverse{
false};
1078 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_name_qualification_length_for_type};
1079 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1080 using bind = Desc<SgAggregateInitializer, int SgAggregateInitializer::*, &SgAggregateInitializer::p_name_qualification_length_for_type>;
1084 using field_type = bool;
1085 static constexpr
size_t position{6};
1086 static constexpr
char const *
const name{
"type_elaboration_required_for_type"};
1087 static constexpr
char const *
const typestr{
"bool"};
1088 static constexpr
bool traverse{
false};
1089 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_type_elaboration_required_for_type};
1090 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1091 using bind = Desc<SgAggregateInitializer, bool SgAggregateInitializer::*, &SgAggregateInitializer::p_type_elaboration_required_for_type>;
1095 using field_type = bool;
1096 static constexpr
size_t position{7};
1097 static constexpr
char const *
const name{
"global_qualification_required_for_type"};
1098 static constexpr
char const *
const typestr{
"bool"};
1099 static constexpr
bool traverse{
false};
1100 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_global_qualification_required_for_type};
1101 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1102 using bind = Desc<SgAggregateInitializer, bool SgAggregateInitializer::*, &SgAggregateInitializer::p_global_qualification_required_for_type>;
1107 static constexpr
size_t position{8};
1108 static constexpr
char const *
const name{
"originalExpressionTree"};
1109 static constexpr
char const *
const typestr{
"SgExpression*"};
1110 static constexpr
bool traverse{
false};
1111 static constexpr
auto mbr_ptr{&SgAggregateInitializer::p_originalExpressionTree};
1112 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1113 using bind = Desc<SgAggregateInitializer, SgExpression* SgAggregateInitializer::*, &SgAggregateInitializer::p_originalExpressionTree>;
1118 static constexpr
char const *
const name{
"AggregateInitializer"};
1119 static constexpr
unsigned long variant{31};
1120 static constexpr
bool concrete{
true};
1122 using fields_t =
mp::List<describe_field_t<SgAggregateInitializer,SgExprListExp*,&SgAggregateInitializer::p_initializers>,
describe_field_t<SgAggregateInitializer,SgType*,&SgAggregateInitializer::p_expression_type>,
describe_field_t<SgAggregateInitializer,bool,&SgAggregateInitializer::p_need_explicit_braces>,
describe_field_t<SgAggregateInitializer,bool,&SgAggregateInitializer::p_uses_compound_literal>,
describe_field_t<SgAggregateInitializer,bool,&SgAggregateInitializer::p_requiresGlobalNameQualificationOnType>,
describe_field_t<SgAggregateInitializer,int,&SgAggregateInitializer::p_name_qualification_length_for_type>,
describe_field_t<SgAggregateInitializer,bool,&SgAggregateInitializer::p_type_elaboration_required_for_type>,
describe_field_t<SgAggregateInitializer,bool,&SgAggregateInitializer::p_global_qualification_required_for_type>,
describe_field_t<SgAggregateInitializer,SgExpression*,&SgAggregateInitializer::p_originalExpressionTree>>;
1130 static constexpr
size_t position{0};
1131 static constexpr
char const *
const name{
"alias"};
1132 static constexpr
char const *
const typestr{
"SgSymbol*"};
1133 static constexpr
bool traverse{
true};
1134 static constexpr
auto mbr_ptr{&SgAliasSymbol::p_alias};
1135 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1136 using bind = Desc<SgAliasSymbol, SgSymbol* SgAliasSymbol::*, &SgAliasSymbol::p_alias>;
1140 using field_type = bool;
1141 static constexpr
size_t position{1};
1142 static constexpr
char const *
const name{
"isRenamed"};
1143 static constexpr
char const *
const typestr{
"bool"};
1144 static constexpr
bool traverse{
false};
1145 static constexpr
auto mbr_ptr{&SgAliasSymbol::p_isRenamed};
1146 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1147 using bind = Desc<SgAliasSymbol, bool SgAliasSymbol::*, &SgAliasSymbol::p_isRenamed>;
1152 static constexpr
size_t position{2};
1153 static constexpr
char const *
const name{
"new_name"};
1154 static constexpr
char const *
const typestr{
"SgName"};
1155 static constexpr
bool traverse{
false};
1156 static constexpr
auto mbr_ptr{&SgAliasSymbol::p_new_name};
1157 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1158 using bind = Desc<SgAliasSymbol, SgName SgAliasSymbol::*, &SgAliasSymbol::p_new_name>;
1162 using field_type = SgNodePtrList;
1163 static constexpr
size_t position{3};
1164 static constexpr
char const *
const name{
"causal_nodes"};
1165 static constexpr
char const *
const typestr{
"SgNodePtrList"};
1166 static constexpr
bool traverse{
false};
1167 static constexpr
auto mbr_ptr{&SgAliasSymbol::p_causal_nodes};
1168 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1169 using bind = Desc<SgAliasSymbol, SgNodePtrList SgAliasSymbol::*, &SgAliasSymbol::p_causal_nodes>;
1174 static constexpr
char const *
const name{
"AliasSymbol"};
1175 static constexpr
unsigned long variant{32};
1176 static constexpr
bool concrete{
true};
1178 using fields_t =
mp::List<describe_field_t<SgAliasSymbol,SgSymbol*,&SgAliasSymbol::p_alias>,
describe_field_t<SgAliasSymbol,bool,&SgAliasSymbol::p_isRenamed>,
describe_field_t<SgAliasSymbol,SgName,&SgAliasSymbol::p_new_name>,
describe_field_t<SgAliasSymbol,SgNodePtrList,&SgAliasSymbol::p_causal_nodes>>;
1186 static constexpr
size_t position{0};
1187 static constexpr
char const *
const name{
"expr_list"};
1188 static constexpr
char const *
const typestr{
"SgExprListExp*"};
1189 static constexpr
bool traverse{
true};
1190 static constexpr
auto mbr_ptr{&SgAllocateStatement::p_expr_list};
1191 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1192 using bind = Desc<SgAllocateStatement, SgExprListExp* SgAllocateStatement::*, &SgAllocateStatement::p_expr_list>;
1197 static constexpr
size_t position{1};
1198 static constexpr
char const *
const name{
"stat_expression"};
1199 static constexpr
char const *
const typestr{
"SgExpression*"};
1200 static constexpr
bool traverse{
true};
1201 static constexpr
auto mbr_ptr{&SgAllocateStatement::p_stat_expression};
1202 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1203 using bind = Desc<SgAllocateStatement, SgExpression* SgAllocateStatement::*, &SgAllocateStatement::p_stat_expression>;
1208 static constexpr
size_t position{2};
1209 static constexpr
char const *
const name{
"errmsg_expression"};
1210 static constexpr
char const *
const typestr{
"SgExpression*"};
1211 static constexpr
bool traverse{
true};
1212 static constexpr
auto mbr_ptr{&SgAllocateStatement::p_errmsg_expression};
1213 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1214 using bind = Desc<SgAllocateStatement, SgExpression* SgAllocateStatement::*, &SgAllocateStatement::p_errmsg_expression>;
1219 static constexpr
size_t position{3};
1220 static constexpr
char const *
const name{
"source_expression"};
1221 static constexpr
char const *
const typestr{
"SgExpression*"};
1222 static constexpr
bool traverse{
true};
1223 static constexpr
auto mbr_ptr{&SgAllocateStatement::p_source_expression};
1224 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1225 using bind = Desc<SgAllocateStatement, SgExpression* SgAllocateStatement::*, &SgAllocateStatement::p_source_expression>;
1230 static constexpr
char const *
const name{
"AllocateStatement"};
1231 static constexpr
unsigned long variant{33};
1232 static constexpr
bool concrete{
true};
1234 using fields_t =
mp::List<describe_field_t<SgAllocateStatement,SgExprListExp*,&SgAllocateStatement::p_expr_list>,
describe_field_t<SgAllocateStatement,SgExpression*,&SgAllocateStatement::p_stat_expression>,
describe_field_t<SgAllocateStatement,SgExpression*,&SgAllocateStatement::p_errmsg_expression>,
describe_field_t<SgAllocateStatement,SgExpression*,&SgAllocateStatement::p_source_expression>>;
1242 static constexpr
char const *
const name{
"AndAssignOp"};
1243 static constexpr
unsigned long variant{34};
1244 static constexpr
bool concrete{
true};
1254 static constexpr
char const *
const name{
"AndOp"};
1255 static constexpr
unsigned long variant{35};
1256 static constexpr
bool concrete{
true};
1266 static constexpr
size_t position{0};
1267 static constexpr
char const *
const name{
"conditional"};
1268 static constexpr
char const *
const typestr{
"SgExpression*"};
1269 static constexpr
bool traverse{
true};
1270 static constexpr
auto mbr_ptr{&SgArithmeticIfStatement::p_conditional};
1271 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1272 using bind = Desc<SgArithmeticIfStatement, SgExpression* SgArithmeticIfStatement::*, &SgArithmeticIfStatement::p_conditional>;
1277 static constexpr
size_t position{1};
1278 static constexpr
char const *
const name{
"less_label"};
1279 static constexpr
char const *
const typestr{
"SgLabelRefExp*"};
1280 static constexpr
bool traverse{
false};
1281 static constexpr
auto mbr_ptr{&SgArithmeticIfStatement::p_less_label};
1282 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1283 using bind = Desc<SgArithmeticIfStatement, SgLabelRefExp* SgArithmeticIfStatement::*, &SgArithmeticIfStatement::p_less_label>;
1288 static constexpr
size_t position{2};
1289 static constexpr
char const *
const name{
"equal_label"};
1290 static constexpr
char const *
const typestr{
"SgLabelRefExp*"};
1291 static constexpr
bool traverse{
false};
1292 static constexpr
auto mbr_ptr{&SgArithmeticIfStatement::p_equal_label};
1293 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1294 using bind = Desc<SgArithmeticIfStatement, SgLabelRefExp* SgArithmeticIfStatement::*, &SgArithmeticIfStatement::p_equal_label>;
1299 static constexpr
size_t position{3};
1300 static constexpr
char const *
const name{
"greater_label"};
1301 static constexpr
char const *
const typestr{
"SgLabelRefExp*"};
1302 static constexpr
bool traverse{
false};
1303 static constexpr
auto mbr_ptr{&SgArithmeticIfStatement::p_greater_label};
1304 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1305 using bind = Desc<SgArithmeticIfStatement, SgLabelRefExp* SgArithmeticIfStatement::*, &SgArithmeticIfStatement::p_greater_label>;
1310 static constexpr
char const *
const name{
"ArithmeticIfStatement"};
1311 static constexpr
unsigned long variant{36};
1312 static constexpr
bool concrete{
true};
1314 using fields_t =
mp::List<describe_field_t<SgArithmeticIfStatement,SgExpression*,&SgArithmeticIfStatement::p_conditional>,
describe_field_t<SgArithmeticIfStatement,SgLabelRefExp*,&SgArithmeticIfStatement::p_less_label>,
describe_field_t<SgArithmeticIfStatement,SgLabelRefExp*,&SgArithmeticIfStatement::p_equal_label>,
describe_field_t<SgArithmeticIfStatement,SgLabelRefExp*,&SgArithmeticIfStatement::p_greater_label>>;
1322 static constexpr
size_t position{0};
1323 static constexpr
char const *
const name{
"base_type"};
1324 static constexpr
char const *
const typestr{
"SgType*"};
1325 static constexpr
bool traverse{
false};
1326 static constexpr
auto mbr_ptr{&SgArrayType::p_base_type};
1327 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1328 using bind = Desc<SgArrayType, SgType* SgArrayType::*, &SgArrayType::p_base_type>;
1333 static constexpr
size_t position{1};
1334 static constexpr
char const *
const name{
"index"};
1335 static constexpr
char const *
const typestr{
"SgExpression*"};
1336 static constexpr
bool traverse{
true};
1337 static constexpr
auto mbr_ptr{&SgArrayType::p_index};
1338 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1339 using bind = Desc<SgArrayType, SgExpression* SgArrayType::*, &SgArrayType::p_index>;
1344 static constexpr
size_t position{2};
1345 static constexpr
char const *
const name{
"dim_info"};
1346 static constexpr
char const *
const typestr{
"SgExprListExp*"};
1347 static constexpr
bool traverse{
true};
1348 static constexpr
auto mbr_ptr{&SgArrayType::p_dim_info};
1349 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1350 using bind = Desc<SgArrayType, SgExprListExp* SgArrayType::*, &SgArrayType::p_dim_info>;
1354 using field_type = int;
1355 static constexpr
size_t position{3};
1356 static constexpr
char const *
const name{
"rank"};
1357 static constexpr
char const *
const typestr{
"int"};
1358 static constexpr
bool traverse{
false};
1359 static constexpr
auto mbr_ptr{&SgArrayType::p_rank};
1360 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1361 using bind = Desc<SgArrayType, int SgArrayType::*, &SgArrayType::p_rank>;
1365 using field_type = int;
1366 static constexpr
size_t position{4};
1367 static constexpr
char const *
const name{
"number_of_elements"};
1368 static constexpr
char const *
const typestr{
"int"};
1369 static constexpr
bool traverse{
false};
1370 static constexpr
auto mbr_ptr{&SgArrayType::p_number_of_elements};
1371 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1372 using bind = Desc<SgArrayType, int SgArrayType::*, &SgArrayType::p_number_of_elements>;
1376 using field_type = bool;
1377 static constexpr
size_t position{5};
1378 static constexpr
char const *
const name{
"is_variable_length_array"};
1379 static constexpr
char const *
const typestr{
"bool"};
1380 static constexpr
bool traverse{
false};
1381 static constexpr
auto mbr_ptr{&SgArrayType::p_is_variable_length_array};
1382 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1383 using bind = Desc<SgArrayType, bool SgArrayType::*, &SgArrayType::p_is_variable_length_array>;
1388 static constexpr
char const *
const name{
"ArrayType"};
1389 static constexpr
unsigned long variant{37};
1390 static constexpr
bool concrete{
true};
1392 using fields_t =
mp::List<describe_field_t<SgArrayType,SgType*,&SgArrayType::p_base_type>,
describe_field_t<SgArrayType,SgExpression*,&SgArrayType::p_index>,
describe_field_t<SgArrayType,SgExprListExp*,&SgArrayType::p_dim_info>,
describe_field_t<SgArrayType,int,&SgArrayType::p_rank>,
describe_field_t<SgArrayType,int,&SgArrayType::p_number_of_elements>,
describe_field_t<SgArrayType,bool,&SgArrayType::p_is_variable_length_array>>;
1400 static constexpr
char const *
const name{
"ArrowExp"};
1401 static constexpr
unsigned long variant{38};
1402 static constexpr
bool concrete{
true};
1412 static constexpr
char const *
const name{
"ArrowStarOp"};
1413 static constexpr
unsigned long variant{39};
1414 static constexpr
bool concrete{
true};
1423 using field_type = std::string;
1424 static constexpr
size_t position{0};
1425 static constexpr
char const *
const name{
"string"};
1426 static constexpr
char const *
const typestr{
"std::string"};
1427 static constexpr
bool traverse{
false};
1428 static constexpr
auto mbr_ptr{&SgAsmBasicString::p_string};
1429 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1430 using bind = Desc<SgAsmBasicString, std::string SgAsmBasicString::*, &SgAsmBasicString::p_string>;
1435 static constexpr
char const *
const name{
"AsmBasicString"};
1436 static constexpr
unsigned long variant{46};
1437 static constexpr
bool concrete{
true};
1447 static constexpr
char const *
const name{
"AsmBinaryAdd"};
1448 static constexpr
unsigned long variant{47};
1449 static constexpr
bool concrete{
true};
1459 static constexpr
char const *
const name{
"AsmBinaryAsr"};
1460 static constexpr
unsigned long variant{50};
1461 static constexpr
bool concrete{
true};
1471 static constexpr
char const *
const name{
"AsmBinaryDivide"};
1472 static constexpr
unsigned long variant{51};
1473 static constexpr
bool concrete{
true};
1483 static constexpr
size_t position{0};
1484 static constexpr
char const *
const name{
"lhs"};
1485 static constexpr
char const *
const typestr{
"SgAsmExpression*"};
1486 static constexpr
bool traverse{
true};
1487 static constexpr
auto mbr_ptr{&SgAsmBinaryExpression::p_lhs};
1488 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1489 using bind = Desc<SgAsmBinaryExpression, SgAsmExpression* SgAsmBinaryExpression::*, &SgAsmBinaryExpression::p_lhs>;
1494 static constexpr
size_t position{1};
1495 static constexpr
char const *
const name{
"rhs"};
1496 static constexpr
char const *
const typestr{
"SgAsmExpression*"};
1497 static constexpr
bool traverse{
true};
1498 static constexpr
auto mbr_ptr{&SgAsmBinaryExpression::p_rhs};
1499 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1500 using bind = Desc<SgAsmBinaryExpression, SgAsmExpression* SgAsmBinaryExpression::*, &SgAsmBinaryExpression::p_rhs>;
1505 static constexpr
char const *
const name{
"AsmBinaryExpression"};
1506 static constexpr
unsigned long variant{52};
1507 static constexpr
bool concrete{
false};
1508 using subclasses_t =
mp::List<SgAsmBinaryAdd, SgAsmBinaryAsr, SgAsmBinaryConcat, SgAsmBinaryDivide, SgAsmBinaryLsl, SgAsmBinaryLsr, SgAsmBinaryMod, SgAsmBinaryMsl, SgAsmBinaryMultiply, SgAsmBinaryPostupdate, SgAsmBinaryPreupdate, SgAsmBinaryRor, SgAsmBinarySubtract>;
1517 static constexpr
char const *
const name{
"AsmBinaryLsl"};
1518 static constexpr
unsigned long variant{53};
1519 static constexpr
bool concrete{
true};
1529 static constexpr
char const *
const name{
"AsmBinaryLsr"};
1530 static constexpr
unsigned long variant{54};
1531 static constexpr
bool concrete{
true};
1541 static constexpr
char const *
const name{
"AsmBinaryMod"};
1542 static constexpr
unsigned long variant{55};
1543 static constexpr
bool concrete{
true};
1553 static constexpr
char const *
const name{
"AsmBinaryMsl"};
1554 static constexpr
unsigned long variant{56};
1555 static constexpr
bool concrete{
true};
1565 static constexpr
char const *
const name{
"AsmBinaryMultiply"};
1566 static constexpr
unsigned long variant{57};
1567 static constexpr
bool concrete{
true};
1577 static constexpr
char const *
const name{
"AsmBinaryRor"};
1578 static constexpr
unsigned long variant{58};
1579 static constexpr
bool concrete{
true};
1589 static constexpr
char const *
const name{
"AsmBinarySubtract"};
1590 static constexpr
unsigned long variant{59};
1591 static constexpr
bool concrete{
true};
1600 using field_type = rose_addr_t;
1601 static constexpr
size_t position{0};
1602 static constexpr
char const *
const name{
"id"};
1603 static constexpr
char const *
const typestr{
"rose_addr_t"};
1604 static constexpr
bool traverse{
false};
1605 static constexpr
auto mbr_ptr{&SgAsmBlock::p_id};
1606 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1607 using bind = Desc<SgAsmBlock, rose_addr_t SgAsmBlock::*, &SgAsmBlock::p_id>;
1611 using field_type = unsigned;
1612 static constexpr
size_t position{1};
1613 static constexpr
char const *
const name{
"reason"};
1614 static constexpr
char const *
const typestr{
"unsigned"};
1615 static constexpr
bool traverse{
false};
1616 static constexpr
auto mbr_ptr{&SgAsmBlock::p_reason};
1617 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1618 using bind = Desc<SgAsmBlock, unsigned SgAsmBlock::*, &SgAsmBlock::p_reason>;
1622 using field_type = SgAsmStatementPtrList;
1623 static constexpr
size_t position{2};
1624 static constexpr
char const *
const name{
"statementList"};
1625 static constexpr
char const *
const typestr{
"SgAsmStatementPtrList"};
1626 static constexpr
bool traverse{
true};
1627 static constexpr
auto mbr_ptr{&SgAsmBlock::p_statementList};
1628 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1629 using bind = Desc<SgAsmBlock, SgAsmStatementPtrList SgAsmBlock::*, &SgAsmBlock::p_statementList>;
1633 using field_type = SgAsmIntegerValuePtrList;
1634 static constexpr
size_t position{3};
1635 static constexpr
char const *
const name{
"successors"};
1636 static constexpr
char const *
const typestr{
"SgAsmIntegerValuePtrList"};
1637 static constexpr
bool traverse{
false};
1638 static constexpr
auto mbr_ptr{&SgAsmBlock::p_successors};
1639 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1640 using bind = Desc<SgAsmBlock, SgAsmIntegerValuePtrList SgAsmBlock::*, &SgAsmBlock::p_successors>;
1644 using field_type = bool;
1645 static constexpr
size_t position{4};
1646 static constexpr
char const *
const name{
"successors_complete"};
1647 static constexpr
char const *
const typestr{
"bool"};
1648 static constexpr
bool traverse{
false};
1649 static constexpr
auto mbr_ptr{&SgAsmBlock::p_successors_complete};
1650 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1651 using bind = Desc<SgAsmBlock, bool SgAsmBlock::*, &SgAsmBlock::p_successors_complete>;
1656 static constexpr
size_t position{5};
1657 static constexpr
char const *
const name{
"immediate_dominator"};
1658 static constexpr
char const *
const typestr{
"SgAsmBlock*"};
1659 static constexpr
bool traverse{
false};
1660 static constexpr
auto mbr_ptr{&SgAsmBlock::p_immediate_dominator};
1661 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1662 using bind = Desc<SgAsmBlock, SgAsmBlock* SgAsmBlock::*, &SgAsmBlock::p_immediate_dominator>;
1666 using field_type = size_t;
1667 static constexpr
size_t position{6};
1668 static constexpr
char const *
const name{
"cached_vertex"};
1669 static constexpr
char const *
const typestr{
"size_t"};
1670 static constexpr
bool traverse{
false};
1671 static constexpr
auto mbr_ptr{&SgAsmBlock::p_cached_vertex};
1672 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1673 using bind = Desc<SgAsmBlock, size_t SgAsmBlock::*, &SgAsmBlock::p_cached_vertex>;
1677 using field_type = double;
1678 static constexpr
size_t position{7};
1679 static constexpr
char const *
const name{
"code_likelihood"};
1680 static constexpr
char const *
const typestr{
"double"};
1681 static constexpr
bool traverse{
false};
1682 static constexpr
auto mbr_ptr{&SgAsmBlock::p_code_likelihood};
1683 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1684 using bind = Desc<SgAsmBlock, double SgAsmBlock::*, &SgAsmBlock::p_code_likelihood>;
1688 using field_type = int64_t;
1689 static constexpr
size_t position{8};
1690 static constexpr
char const *
const name{
"stackDeltaOut"};
1691 static constexpr
char const *
const typestr{
"int64_t"};
1692 static constexpr
bool traverse{
false};
1693 static constexpr
auto mbr_ptr{&SgAsmBlock::p_stackDeltaOut};
1694 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1695 using bind = Desc<SgAsmBlock, int64_t SgAsmBlock::*, &SgAsmBlock::p_stackDeltaOut>;
1700 static constexpr
char const *
const name{
"AsmBlock"};
1701 static constexpr
unsigned long variant{62};
1702 static constexpr
bool concrete{
true};
1704 using fields_t =
mp::List<describe_field_t<SgAsmBlock,rose_addr_t,&SgAsmBlock::p_id>,
describe_field_t<SgAsmBlock,unsigned,&SgAsmBlock::p_reason>,
describe_field_t<SgAsmBlock,SgAsmStatementPtrList,&SgAsmBlock::p_statementList>,
describe_field_t<SgAsmBlock,SgAsmIntegerValuePtrList,&SgAsmBlock::p_successors>,
describe_field_t<SgAsmBlock,bool,&SgAsmBlock::p_successors_complete>,
describe_field_t<SgAsmBlock,SgAsmBlock*,&SgAsmBlock::p_immediate_dominator>,
describe_field_t<SgAsmBlock,size_t,&SgAsmBlock::p_cached_vertex>,
describe_field_t<SgAsmBlock,double,&SgAsmBlock::p_code_likelihood>,
describe_field_t<SgAsmBlock,int64_t,&SgAsmBlock::p_stackDeltaOut>>;
1712 static constexpr
char const *
const name{
"AsmCoffStrtab"};
1713 static constexpr
unsigned long variant{63};
1714 static constexpr
bool concrete{
true};
1723 using field_type = std::string;
1724 static constexpr
size_t position{0};
1725 static constexpr
char const *
const name{
"st_name"};
1726 static constexpr
char const *
const typestr{
"std::string"};
1727 static constexpr
bool traverse{
false};
1728 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_st_name};
1729 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1730 using bind = Desc<SgAsmCoffSymbol, std::string SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_st_name>;
1734 using field_type = rose_addr_t;
1735 static constexpr
size_t position{1};
1736 static constexpr
char const *
const name{
"st_name_offset"};
1737 static constexpr
char const *
const typestr{
"rose_addr_t"};
1738 static constexpr
bool traverse{
false};
1739 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_st_name_offset};
1740 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1741 using bind = Desc<SgAsmCoffSymbol, rose_addr_t SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_st_name_offset>;
1745 using field_type = int;
1746 static constexpr
size_t position{2};
1747 static constexpr
char const *
const name{
"st_section_num"};
1748 static constexpr
char const *
const typestr{
"int"};
1749 static constexpr
bool traverse{
false};
1750 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_st_section_num};
1751 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1752 using bind = Desc<SgAsmCoffSymbol, int SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_st_section_num>;
1756 using field_type = unsigned;
1757 static constexpr
size_t position{3};
1758 static constexpr
char const *
const name{
"st_type"};
1759 static constexpr
char const *
const typestr{
"unsigned"};
1760 static constexpr
bool traverse{
false};
1761 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_st_type};
1762 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1763 using bind = Desc<SgAsmCoffSymbol, unsigned SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_st_type>;
1767 using field_type = unsigned;
1768 static constexpr
size_t position{4};
1769 static constexpr
char const *
const name{
"st_storage_class"};
1770 static constexpr
char const *
const typestr{
"unsigned"};
1771 static constexpr
bool traverse{
false};
1772 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_st_storage_class};
1773 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1774 using bind = Desc<SgAsmCoffSymbol, unsigned SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_st_storage_class>;
1778 using field_type = unsigned;
1779 static constexpr
size_t position{5};
1780 static constexpr
char const *
const name{
"st_num_aux_entries"};
1781 static constexpr
char const *
const typestr{
"unsigned"};
1782 static constexpr
bool traverse{
false};
1783 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_st_num_aux_entries};
1784 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1785 using bind = Desc<SgAsmCoffSymbol, unsigned SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_st_num_aux_entries>;
1789 using field_type = SgUnsignedCharList;
1790 static constexpr
size_t position{6};
1791 static constexpr
char const *
const name{
"aux_data"};
1792 static constexpr
char const *
const typestr{
"SgUnsignedCharList"};
1793 static constexpr
bool traverse{
false};
1794 static constexpr
auto mbr_ptr{&SgAsmCoffSymbol::p_aux_data};
1795 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1796 using bind = Desc<SgAsmCoffSymbol, SgUnsignedCharList SgAsmCoffSymbol::*, &SgAsmCoffSymbol::p_aux_data>;
1801 static constexpr
char const *
const name{
"AsmCoffSymbol"};
1802 static constexpr
unsigned long variant{64};
1803 static constexpr
bool concrete{
true};
1805 using fields_t =
mp::List<describe_field_t<SgAsmCoffSymbol,std::string,&SgAsmCoffSymbol::p_st_name>,
describe_field_t<SgAsmCoffSymbol,rose_addr_t,&SgAsmCoffSymbol::p_st_name_offset>,
describe_field_t<SgAsmCoffSymbol,int,&SgAsmCoffSymbol::p_st_section_num>,
describe_field_t<SgAsmCoffSymbol,unsigned,&SgAsmCoffSymbol::p_st_type>,
describe_field_t<SgAsmCoffSymbol,unsigned,&SgAsmCoffSymbol::p_st_storage_class>,
describe_field_t<SgAsmCoffSymbol,unsigned,&SgAsmCoffSymbol::p_st_num_aux_entries>,
describe_field_t<SgAsmCoffSymbol,SgUnsignedCharList,&SgAsmCoffSymbol::p_aux_data>>;
1812 using field_type = SgAsmCoffSymbolPtrList;
1813 static constexpr
size_t position{0};
1814 static constexpr
char const *
const name{
"symbols"};
1815 static constexpr
char const *
const typestr{
"SgAsmCoffSymbolPtrList"};
1816 static constexpr
bool traverse{
true};
1817 static constexpr
auto mbr_ptr{&SgAsmCoffSymbolList::p_symbols};
1818 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1819 using bind = Desc<SgAsmCoffSymbolList, SgAsmCoffSymbolPtrList SgAsmCoffSymbolList::*, &SgAsmCoffSymbolList::p_symbols>;
1824 static constexpr
char const *
const name{
"AsmCoffSymbolList"};
1825 static constexpr
unsigned long variant{65};
1826 static constexpr
bool concrete{
true};
1836 static constexpr
size_t position{0};
1837 static constexpr
char const *
const name{
"strtab"};
1838 static constexpr
char const *
const typestr{
"SgAsmGenericSection*"};
1839 static constexpr
bool traverse{
false};
1840 static constexpr
auto mbr_ptr{&SgAsmCoffSymbolTable::p_strtab};
1841 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1842 using bind = Desc<SgAsmCoffSymbolTable, SgAsmGenericSection* SgAsmCoffSymbolTable::*, &SgAsmCoffSymbolTable::p_strtab>;
1847 static constexpr
size_t position{1};
1848 static constexpr
char const *
const name{
"symbols"};
1849 static constexpr
char const *
const typestr{
"SgAsmCoffSymbolList*"};
1850 static constexpr
bool traverse{
true};
1851 static constexpr
auto mbr_ptr{&SgAsmCoffSymbolTable::p_symbols};
1852 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1853 using bind = Desc<SgAsmCoffSymbolTable, SgAsmCoffSymbolList* SgAsmCoffSymbolTable::*, &SgAsmCoffSymbolTable::p_symbols>;
1858 static constexpr
char const *
const name{
"AsmCoffSymbolTable"};
1859 static constexpr
unsigned long variant{66};
1860 static constexpr
bool concrete{
true};
1870 static constexpr
size_t position{0};
1871 static constexpr
char const *
const name{
"subexpression"};
1872 static constexpr
char const *
const typestr{
"SgAsmExpression*"};
1873 static constexpr
bool traverse{
true};
1874 static constexpr
auto mbr_ptr{&SgAsmCommonSubExpression::p_subexpression};
1875 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1876 using bind = Desc<SgAsmCommonSubExpression, SgAsmExpression* SgAsmCommonSubExpression::*, &SgAsmCommonSubExpression::p_subexpression>;
1881 static constexpr
char const *
const name{
"AsmCommonSubExpression"};
1882 static constexpr
unsigned long variant{67};
1883 static constexpr
bool concrete{
true};
1892 using field_type =
unsigned long;
1893 static constexpr
size_t position{0};
1894 static constexpr
char const *
const name{
"bit_flags"};
1895 static constexpr
char const *
const typestr{
"unsigned long"};
1896 static constexpr
bool traverse{
false};
1897 static constexpr
auto mbr_ptr{&SgAsmControlFlagsExpression::p_bit_flags};
1898 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1899 using bind = Desc<SgAsmControlFlagsExpression, unsigned long SgAsmControlFlagsExpression::*, &SgAsmControlFlagsExpression::p_bit_flags>;
1904 static constexpr
char const *
const name{
"AsmControlFlagsExpression"};
1905 static constexpr
unsigned long variant{68};
1906 static constexpr
bool concrete{
true};
1916 static constexpr
size_t position{0};
1917 static constexpr
char const *
const name{
"bitVector"};
1918 static constexpr
char const *
const typestr{
"Sawyer::Container::BitVector"};
1919 static constexpr
bool traverse{
false};
1920 static constexpr
auto mbr_ptr{&SgAsmConstantExpression::p_bitVector};
1921 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1922 using bind = Desc<SgAsmConstantExpression, Sawyer::Container::BitVector SgAsmConstantExpression::*, &SgAsmConstantExpression::p_bitVector>;
1927 static constexpr
char const *
const name{
"AsmConstantExpression"};
1928 static constexpr
unsigned long variant{69};
1929 static constexpr
bool concrete{
false};
1938 using field_type = unsigned;
1939 static constexpr
size_t position{0};
1940 static constexpr
char const *
const name{
"e_res1"};
1941 static constexpr
char const *
const typestr{
"unsigned"};
1942 static constexpr
bool traverse{
false};
1943 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_res1};
1944 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1945 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_res1>;
1949 using field_type = unsigned;
1950 static constexpr
size_t position{1};
1951 static constexpr
char const *
const name{
"e_oemid"};
1952 static constexpr
char const *
const typestr{
"unsigned"};
1953 static constexpr
bool traverse{
false};
1954 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_oemid};
1955 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1956 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_oemid>;
1960 using field_type = unsigned;
1961 static constexpr
size_t position{2};
1962 static constexpr
char const *
const name{
"e_oeminfo"};
1963 static constexpr
char const *
const typestr{
"unsigned"};
1964 static constexpr
bool traverse{
false};
1965 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_oeminfo};
1966 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1967 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_oeminfo>;
1971 using field_type = unsigned;
1972 static constexpr
size_t position{3};
1973 static constexpr
char const *
const name{
"e_res2"};
1974 static constexpr
char const *
const typestr{
"unsigned"};
1975 static constexpr
bool traverse{
false};
1976 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_res2};
1977 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1978 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_res2>;
1982 using field_type = unsigned;
1983 static constexpr
size_t position{4};
1984 static constexpr
char const *
const name{
"e_res3"};
1985 static constexpr
char const *
const typestr{
"unsigned"};
1986 static constexpr
bool traverse{
false};
1987 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_res3};
1988 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
1989 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_res3>;
1993 using field_type = unsigned;
1994 static constexpr
size_t position{5};
1995 static constexpr
char const *
const name{
"e_res4"};
1996 static constexpr
char const *
const typestr{
"unsigned"};
1997 static constexpr
bool traverse{
false};
1998 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_res4};
1999 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2000 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_res4>;
2004 using field_type = unsigned;
2005 static constexpr
size_t position{6};
2006 static constexpr
char const *
const name{
"e_res5"};
2007 static constexpr
char const *
const typestr{
"unsigned"};
2008 static constexpr
bool traverse{
false};
2009 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_res5};
2010 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2011 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_res5>;
2015 using field_type = unsigned;
2016 static constexpr
size_t position{7};
2017 static constexpr
char const *
const name{
"e_res6"};
2018 static constexpr
char const *
const typestr{
"unsigned"};
2019 static constexpr
bool traverse{
false};
2020 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_res6};
2021 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2022 using bind = Desc<SgAsmDOSExtendedHeader, unsigned SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_res6>;
2026 using field_type = rose_addr_t;
2027 static constexpr
size_t position{8};
2028 static constexpr
char const *
const name{
"e_lfanew"};
2029 static constexpr
char const *
const typestr{
"rose_addr_t"};
2030 static constexpr
bool traverse{
false};
2031 static constexpr
auto mbr_ptr{&SgAsmDOSExtendedHeader::p_e_lfanew};
2032 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2033 using bind = Desc<SgAsmDOSExtendedHeader, rose_addr_t SgAsmDOSExtendedHeader::*, &SgAsmDOSExtendedHeader::p_e_lfanew>;
2038 static constexpr
char const *
const name{
"AsmDOSExtendedHeader"};
2039 static constexpr
unsigned long variant{70};
2040 static constexpr
bool concrete{
true};
2042 using fields_t =
mp::List<describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_res1>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_oemid>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_oeminfo>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_res2>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_res3>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_res4>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_res5>,
describe_field_t<SgAsmDOSExtendedHeader,unsigned,&SgAsmDOSExtendedHeader::p_e_res6>,
describe_field_t<SgAsmDOSExtendedHeader,rose_addr_t,&SgAsmDOSExtendedHeader::p_e_lfanew>>;
2049 using field_type = uint16_t;
2050 static constexpr
size_t position{0};
2051 static constexpr
char const *
const name{
"e_last_page_size"};
2052 static constexpr
char const *
const typestr{
"uint16_t"};
2053 static constexpr
bool traverse{
false};
2054 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_last_page_size};
2055 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2056 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_last_page_size>;
2060 using field_type = uint16_t;
2061 static constexpr
size_t position{1};
2062 static constexpr
char const *
const name{
"e_total_pages"};
2063 static constexpr
char const *
const typestr{
"uint16_t"};
2064 static constexpr
bool traverse{
false};
2065 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_total_pages};
2066 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2067 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_total_pages>;
2071 using field_type = uint16_t;
2072 static constexpr
size_t position{2};
2073 static constexpr
char const *
const name{
"e_nrelocs"};
2074 static constexpr
char const *
const typestr{
"uint16_t"};
2075 static constexpr
bool traverse{
false};
2076 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_nrelocs};
2077 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2078 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_nrelocs>;
2082 using field_type = uint16_t;
2083 static constexpr
size_t position{3};
2084 static constexpr
char const *
const name{
"e_header_paragraphs"};
2085 static constexpr
char const *
const typestr{
"uint16_t"};
2086 static constexpr
bool traverse{
false};
2087 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_header_paragraphs};
2088 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2089 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_header_paragraphs>;
2093 using field_type = uint16_t;
2094 static constexpr
size_t position{4};
2095 static constexpr
char const *
const name{
"e_minalloc"};
2096 static constexpr
char const *
const typestr{
"uint16_t"};
2097 static constexpr
bool traverse{
false};
2098 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_minalloc};
2099 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2100 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_minalloc>;
2104 using field_type = uint16_t;
2105 static constexpr
size_t position{5};
2106 static constexpr
char const *
const name{
"e_maxalloc"};
2107 static constexpr
char const *
const typestr{
"uint16_t"};
2108 static constexpr
bool traverse{
false};
2109 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_maxalloc};
2110 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2111 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_maxalloc>;
2115 using field_type = uint16_t;
2116 static constexpr
size_t position{6};
2117 static constexpr
char const *
const name{
"e_ss"};
2118 static constexpr
char const *
const typestr{
"uint16_t"};
2119 static constexpr
bool traverse{
false};
2120 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_ss};
2121 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2122 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_ss>;
2126 using field_type = uint16_t;
2127 static constexpr
size_t position{7};
2128 static constexpr
char const *
const name{
"e_sp"};
2129 static constexpr
char const *
const typestr{
"uint16_t"};
2130 static constexpr
bool traverse{
false};
2131 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_sp};
2132 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2133 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_sp>;
2137 using field_type = uint16_t;
2138 static constexpr
size_t position{8};
2139 static constexpr
char const *
const name{
"e_cksum"};
2140 static constexpr
char const *
const typestr{
"uint16_t"};
2141 static constexpr
bool traverse{
false};
2142 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_cksum};
2143 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2144 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_cksum>;
2148 using field_type = uint16_t;
2149 static constexpr
size_t position{9};
2150 static constexpr
char const *
const name{
"e_ip"};
2151 static constexpr
char const *
const typestr{
"uint16_t"};
2152 static constexpr
bool traverse{
false};
2153 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_ip};
2154 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2155 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_ip>;
2159 using field_type = uint16_t;
2160 static constexpr
size_t position{10};
2161 static constexpr
char const *
const name{
"e_cs"};
2162 static constexpr
char const *
const typestr{
"uint16_t"};
2163 static constexpr
bool traverse{
false};
2164 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_cs};
2165 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2166 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_cs>;
2170 using field_type = uint16_t;
2171 static constexpr
size_t position{11};
2172 static constexpr
char const *
const name{
"e_overlay"};
2173 static constexpr
char const *
const typestr{
"uint16_t"};
2174 static constexpr
bool traverse{
false};
2175 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_overlay};
2176 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2177 using bind = Desc<SgAsmDOSFileHeader, uint16_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_overlay>;
2181 using field_type = rose_addr_t;
2182 static constexpr
size_t position{12};
2183 static constexpr
char const *
const name{
"e_relocs_offset"};
2184 static constexpr
char const *
const typestr{
"rose_addr_t"};
2185 static constexpr
bool traverse{
false};
2186 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_relocs_offset};
2187 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2188 using bind = Desc<SgAsmDOSFileHeader, rose_addr_t SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_relocs_offset>;
2192 using field_type = unsigned;
2193 static constexpr
size_t position{13};
2194 static constexpr
char const *
const name{
"e_res1"};
2195 static constexpr
char const *
const typestr{
"unsigned"};
2196 static constexpr
bool traverse{
false};
2197 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_e_res1};
2198 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2199 using bind = Desc<SgAsmDOSFileHeader, unsigned SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_e_res1>;
2204 static constexpr
size_t position{14};
2205 static constexpr
char const *
const name{
"relocs"};
2206 static constexpr
char const *
const typestr{
"SgAsmGenericSection*"};
2207 static constexpr
bool traverse{
false};
2208 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_relocs};
2209 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2210 using bind = Desc<SgAsmDOSFileHeader, SgAsmGenericSection* SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_relocs>;
2215 static constexpr
size_t position{15};
2216 static constexpr
char const *
const name{
"rm_section"};
2217 static constexpr
char const *
const typestr{
"SgAsmGenericSection*"};
2218 static constexpr
bool traverse{
false};
2219 static constexpr
auto mbr_ptr{&SgAsmDOSFileHeader::p_rm_section};
2220 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2221 using bind = Desc<SgAsmDOSFileHeader, SgAsmGenericSection* SgAsmDOSFileHeader::*, &SgAsmDOSFileHeader::p_rm_section>;
2226 static constexpr
char const *
const name{
"AsmDOSFileHeader"};
2227 static constexpr
unsigned long variant{71};
2228 static constexpr
bool concrete{
true};
2230 using fields_t =
mp::List<describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_last_page_size>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_total_pages>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_nrelocs>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_header_paragraphs>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_minalloc>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_maxalloc>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_ss>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_sp>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_cksum>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_ip>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_cs>,
describe_field_t<SgAsmDOSFileHeader,uint16_t,&SgAsmDOSFileHeader::p_e_overlay>,
describe_field_t<SgAsmDOSFileHeader,rose_addr_t,&SgAsmDOSFileHeader::p_e_relocs_offset>,
describe_field_t<SgAsmDOSFileHeader,unsigned,&SgAsmDOSFileHeader::p_e_res1>,
describe_field_t<SgAsmDOSFileHeader,SgAsmGenericSection*,&SgAsmDOSFileHeader::p_relocs>,
describe_field_t<SgAsmDOSFileHeader,SgAsmGenericSection*,&SgAsmDOSFileHeader::p_rm_section>>;
2238 static constexpr
char const *
const name{
"AsmSynthesizedDataStructureDeclaration"};
2239 static constexpr
unsigned long variant{72};
2240 static constexpr
bool concrete{
true};
2250 static constexpr
char const *
const name{
"AsmSynthesizedDeclaration"};
2251 static constexpr
unsigned long variant{73};
2252 static constexpr
bool concrete{
false};
2262 static constexpr
char const *
const name{
"AsmDirectRegisterExpression"};
2263 static constexpr
unsigned long variant{74};
2264 static constexpr
bool concrete{
true};
2274 static constexpr
char const *
const name{
"AsmDwarfAccessDeclaration"};
2275 static constexpr
unsigned long variant{75};
2276 static constexpr
bool concrete{
true};
2286 static constexpr
size_t position{0};
2287 static constexpr
char const *
const name{
"body"};
2288 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2289 static constexpr
bool traverse{
true};
2290 static constexpr
auto mbr_ptr{&SgAsmDwarfArrayType::p_body};
2291 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2292 using bind = Desc<SgAsmDwarfArrayType, SgAsmDwarfConstructList* SgAsmDwarfArrayType::*, &SgAsmDwarfArrayType::p_body>;
2297 static constexpr
char const *
const name{
"AsmDwarfArrayType"};
2298 static constexpr
unsigned long variant{76};
2299 static constexpr
bool concrete{
true};
2309 static constexpr
char const *
const name{
"AsmDwarfBaseType"};
2310 static constexpr
unsigned long variant{77};
2311 static constexpr
bool concrete{
true};
2321 static constexpr
char const *
const name{
"AsmDwarfCatchBlock"};
2322 static constexpr
unsigned long variant{78};
2323 static constexpr
bool concrete{
true};
2333 static constexpr
char const *
const name{
"AsmDwarfClassTemplate"};
2334 static constexpr
unsigned long variant{79};
2335 static constexpr
bool concrete{
true};
2345 static constexpr
size_t position{0};
2346 static constexpr
char const *
const name{
"body"};
2347 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2348 static constexpr
bool traverse{
true};
2349 static constexpr
auto mbr_ptr{&SgAsmDwarfClassType::p_body};
2350 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2351 using bind = Desc<SgAsmDwarfClassType, SgAsmDwarfConstructList* SgAsmDwarfClassType::*, &SgAsmDwarfClassType::p_body>;
2356 static constexpr
char const *
const name{
"AsmDwarfClassType"};
2357 static constexpr
unsigned long variant{80};
2358 static constexpr
bool concrete{
true};
2368 static constexpr
size_t position{0};
2369 static constexpr
char const *
const name{
"body"};
2370 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2371 static constexpr
bool traverse{
true};
2372 static constexpr
auto mbr_ptr{&SgAsmDwarfCommonBlock::p_body};
2373 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2374 using bind = Desc<SgAsmDwarfCommonBlock, SgAsmDwarfConstructList* SgAsmDwarfCommonBlock::*, &SgAsmDwarfCommonBlock::p_body>;
2379 static constexpr
char const *
const name{
"AsmDwarfCommonBlock"};
2380 static constexpr
unsigned long variant{81};
2381 static constexpr
bool concrete{
true};
2391 static constexpr
char const *
const name{
"AsmDwarfCommonInclusion"};
2392 static constexpr
unsigned long variant{82};
2393 static constexpr
bool concrete{
true};
2402 using field_type = std::string;
2403 static constexpr
size_t position{0};
2404 static constexpr
char const *
const name{
"producer"};
2405 static constexpr
char const *
const typestr{
"std::string"};
2406 static constexpr
bool traverse{
false};
2407 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_producer};
2408 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2409 using bind = Desc<SgAsmDwarfCompilationUnit, std::string SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_producer>;
2413 using field_type = std::string;
2414 static constexpr
size_t position{1};
2415 static constexpr
char const *
const name{
"language"};
2416 static constexpr
char const *
const typestr{
"std::string"};
2417 static constexpr
bool traverse{
false};
2418 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_language};
2419 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2420 using bind = Desc<SgAsmDwarfCompilationUnit, std::string SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_language>;
2424 using field_type = uint64_t;
2425 static constexpr
size_t position{2};
2426 static constexpr
char const *
const name{
"low_pc"};
2427 static constexpr
char const *
const typestr{
"uint64_t"};
2428 static constexpr
bool traverse{
false};
2429 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_low_pc};
2430 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2431 using bind = Desc<SgAsmDwarfCompilationUnit, uint64_t SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_low_pc>;
2435 using field_type = uint64_t;
2436 static constexpr
size_t position{3};
2437 static constexpr
char const *
const name{
"hi_pc"};
2438 static constexpr
char const *
const typestr{
"uint64_t"};
2439 static constexpr
bool traverse{
false};
2440 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_hi_pc};
2441 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2442 using bind = Desc<SgAsmDwarfCompilationUnit, uint64_t SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_hi_pc>;
2446 using field_type = int;
2447 static constexpr
size_t position{4};
2448 static constexpr
char const *
const name{
"version_stamp"};
2449 static constexpr
char const *
const typestr{
"int"};
2450 static constexpr
bool traverse{
false};
2451 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_version_stamp};
2452 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2453 using bind = Desc<SgAsmDwarfCompilationUnit, int SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_version_stamp>;
2457 using field_type = uint64_t;
2458 static constexpr
size_t position{5};
2459 static constexpr
char const *
const name{
"abbrev_offset"};
2460 static constexpr
char const *
const typestr{
"uint64_t"};
2461 static constexpr
bool traverse{
false};
2462 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_abbrev_offset};
2463 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2464 using bind = Desc<SgAsmDwarfCompilationUnit, uint64_t SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_abbrev_offset>;
2468 using field_type = uint64_t;
2469 static constexpr
size_t position{6};
2470 static constexpr
char const *
const name{
"address_size"};
2471 static constexpr
char const *
const typestr{
"uint64_t"};
2472 static constexpr
bool traverse{
false};
2473 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_address_size};
2474 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2475 using bind = Desc<SgAsmDwarfCompilationUnit, uint64_t SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_address_size>;
2479 using field_type = uint64_t;
2480 static constexpr
size_t position{7};
2481 static constexpr
char const *
const name{
"offset_length"};
2482 static constexpr
char const *
const typestr{
"uint64_t"};
2483 static constexpr
bool traverse{
false};
2484 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_offset_length};
2485 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2486 using bind = Desc<SgAsmDwarfCompilationUnit, uint64_t SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_offset_length>;
2491 static constexpr
size_t position{8};
2492 static constexpr
char const *
const name{
"line_info"};
2493 static constexpr
char const *
const typestr{
"SgAsmDwarfLineList*"};
2494 static constexpr
bool traverse{
true};
2495 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_line_info};
2496 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2497 using bind = Desc<SgAsmDwarfCompilationUnit, SgAsmDwarfLineList* SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_line_info>;
2502 static constexpr
size_t position{9};
2503 static constexpr
char const *
const name{
"language_constructs"};
2504 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2505 static constexpr
bool traverse{
true};
2506 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_language_constructs};
2507 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2508 using bind = Desc<SgAsmDwarfCompilationUnit, SgAsmDwarfConstructList* SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_language_constructs>;
2513 static constexpr
size_t position{10};
2514 static constexpr
char const *
const name{
"macro_info"};
2515 static constexpr
char const *
const typestr{
"SgAsmDwarfMacroList*"};
2516 static constexpr
bool traverse{
true};
2517 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnit::p_macro_info};
2518 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2519 using bind = Desc<SgAsmDwarfCompilationUnit, SgAsmDwarfMacroList* SgAsmDwarfCompilationUnit::*, &SgAsmDwarfCompilationUnit::p_macro_info>;
2524 static constexpr
char const *
const name{
"AsmDwarfCompilationUnit"};
2525 static constexpr
unsigned long variant{83};
2526 static constexpr
bool concrete{
true};
2528 using fields_t =
mp::List<describe_field_t<SgAsmDwarfCompilationUnit,std::string,&SgAsmDwarfCompilationUnit::p_producer>,
describe_field_t<SgAsmDwarfCompilationUnit,std::string,&SgAsmDwarfCompilationUnit::p_language>,
describe_field_t<SgAsmDwarfCompilationUnit,uint64_t,&SgAsmDwarfCompilationUnit::p_low_pc>,
describe_field_t<SgAsmDwarfCompilationUnit,uint64_t,&SgAsmDwarfCompilationUnit::p_hi_pc>,
describe_field_t<SgAsmDwarfCompilationUnit,int,&SgAsmDwarfCompilationUnit::p_version_stamp>,
describe_field_t<SgAsmDwarfCompilationUnit,uint64_t,&SgAsmDwarfCompilationUnit::p_abbrev_offset>,
describe_field_t<SgAsmDwarfCompilationUnit,uint64_t,&SgAsmDwarfCompilationUnit::p_address_size>,
describe_field_t<SgAsmDwarfCompilationUnit,uint64_t,&SgAsmDwarfCompilationUnit::p_offset_length>,
describe_field_t<SgAsmDwarfCompilationUnit,SgAsmDwarfLineList*,&SgAsmDwarfCompilationUnit::p_line_info>,
describe_field_t<SgAsmDwarfCompilationUnit,SgAsmDwarfConstructList*,&SgAsmDwarfCompilationUnit::p_language_constructs>,
describe_field_t<SgAsmDwarfCompilationUnit,SgAsmDwarfMacroList*,&SgAsmDwarfCompilationUnit::p_macro_info>>;
2535 using field_type = SgAsmDwarfCompilationUnitPtrList;
2536 static constexpr
size_t position{0};
2537 static constexpr
char const *
const name{
"cu_list"};
2538 static constexpr
char const *
const typestr{
"SgAsmDwarfCompilationUnitPtrList"};
2539 static constexpr
bool traverse{
true};
2540 static constexpr
auto mbr_ptr{&SgAsmDwarfCompilationUnitList::p_cu_list};
2541 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2542 using bind = Desc<SgAsmDwarfCompilationUnitList, SgAsmDwarfCompilationUnitPtrList SgAsmDwarfCompilationUnitList::*, &SgAsmDwarfCompilationUnitList::p_cu_list>;
2547 static constexpr
char const *
const name{
"AsmDwarfCompilationUnitList"};
2548 static constexpr
unsigned long variant{84};
2549 static constexpr
bool concrete{
true};
2559 static constexpr
char const *
const name{
"AsmDwarfCondition"};
2560 static constexpr
unsigned long variant{85};
2561 static constexpr
bool concrete{
true};
2571 static constexpr
char const *
const name{
"AsmDwarfConstType"};
2572 static constexpr
unsigned long variant{86};
2573 static constexpr
bool concrete{
true};
2583 static constexpr
char const *
const name{
"AsmDwarfConstant"};
2584 static constexpr
unsigned long variant{87};
2585 static constexpr
bool concrete{
true};
2594 using field_type = int;
2595 static constexpr
size_t position{0};
2596 static constexpr
char const *
const name{
"nesting_level"};
2597 static constexpr
char const *
const typestr{
"int"};
2598 static constexpr
bool traverse{
false};
2599 static constexpr
auto mbr_ptr{&SgAsmDwarfConstruct::p_nesting_level};
2600 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2601 using bind = Desc<SgAsmDwarfConstruct, int SgAsmDwarfConstruct::*, &SgAsmDwarfConstruct::p_nesting_level>;
2605 using field_type = uint64_t;
2606 static constexpr
size_t position{1};
2607 static constexpr
char const *
const name{
"offset"};
2608 static constexpr
char const *
const typestr{
"uint64_t"};
2609 static constexpr
bool traverse{
false};
2610 static constexpr
auto mbr_ptr{&SgAsmDwarfConstruct::p_offset};
2611 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2612 using bind = Desc<SgAsmDwarfConstruct, uint64_t SgAsmDwarfConstruct::*, &SgAsmDwarfConstruct::p_offset>;
2616 using field_type = uint64_t;
2617 static constexpr
size_t position{2};
2618 static constexpr
char const *
const name{
"overall_offset"};
2619 static constexpr
char const *
const typestr{
"uint64_t"};
2620 static constexpr
bool traverse{
false};
2621 static constexpr
auto mbr_ptr{&SgAsmDwarfConstruct::p_overall_offset};
2622 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2623 using bind = Desc<SgAsmDwarfConstruct, uint64_t SgAsmDwarfConstruct::*, &SgAsmDwarfConstruct::p_overall_offset>;
2627 using field_type = std::string;
2628 static constexpr
size_t position{3};
2629 static constexpr
char const *
const name{
"name"};
2630 static constexpr
char const *
const typestr{
"std::string"};
2631 static constexpr
bool traverse{
false};
2632 static constexpr
auto mbr_ptr{&SgAsmDwarfConstruct::p_name};
2633 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2634 using bind = Desc<SgAsmDwarfConstruct, std::string SgAsmDwarfConstruct::*, &SgAsmDwarfConstruct::p_name>;
2639 static constexpr
size_t position{4};
2640 static constexpr
char const *
const name{
"source_position"};
2641 static constexpr
char const *
const typestr{
"SgAsmDwarfLine*"};
2642 static constexpr
bool traverse{
false};
2643 static constexpr
auto mbr_ptr{&SgAsmDwarfConstruct::p_source_position};
2644 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2645 using bind = Desc<SgAsmDwarfConstruct, SgAsmDwarfLine* SgAsmDwarfConstruct::*, &SgAsmDwarfConstruct::p_source_position>;
2650 static constexpr
char const *
const name{
"AsmDwarfConstruct"};
2651 static constexpr
unsigned long variant{88};
2652 static constexpr
bool concrete{
false};
2653 using subclasses_t =
mp::List<SgAsmDwarfAccessDeclaration, SgAsmDwarfArrayType, SgAsmDwarfBaseType, SgAsmDwarfCatchBlock, SgAsmDwarfClassTemplate, SgAsmDwarfClassType, SgAsmDwarfCommonBlock, SgAsmDwarfCommonInclusion, SgAsmDwarfCompilationUnit, SgAsmDwarfCondition, SgAsmDwarfConstType, SgAsmDwarfConstant, SgAsmDwarfDwarfProcedure, SgAsmDwarfEntryPoint, SgAsmDwarfEnumerationType, SgAsmDwarfEnumerator, SgAsmDwarfFileType, SgAsmDwarfFormalParameter, SgAsmDwarfFormatLabel, SgAsmDwarfFriend, SgAsmDwarfFunctionTemplate, SgAsmDwarfImportedDeclaration, SgAsmDwarfImportedModule, SgAsmDwarfImportedUnit, SgAsmDwarfInheritance, SgAsmDwarfInlinedSubroutine, SgAsmDwarfInterfaceType, SgAsmDwarfLabel, SgAsmDwarfLexicalBlock, SgAsmDwarfMember, SgAsmDwarfModule, SgAsmDwarfMutableType, SgAsmDwarfNamelist, SgAsmDwarfNamelistItem, SgAsmDwarfNamespace, SgAsmDwarfPackedType, SgAsmDwarfPartialUnit, SgAsmDwarfPointerType, SgAsmDwarfPtrToMemberType, SgAsmDwarfReferenceType, SgAsmDwarfRestrictType, SgAsmDwarfSetType, SgAsmDwarfSharedType, SgAsmDwarfStringType, SgAsmDwarfStructureType, SgAsmDwarfSubprogram, SgAsmDwarfSubrangeType, SgAsmDwarfSubroutineType, SgAsmDwarfTemplateTypeParameter, SgAsmDwarfTemplateValueParameter, SgAsmDwarfThrownType, SgAsmDwarfTryBlock, SgAsmDwarfTypedef, SgAsmDwarfUnionType, SgAsmDwarfUnknownConstruct, SgAsmDwarfUnspecifiedParameters, SgAsmDwarfUnspecifiedType, SgAsmDwarfUpcRelaxedType, SgAsmDwarfUpcSharedType, SgAsmDwarfUpcStrictType, SgAsmDwarfVariable, SgAsmDwarfVariant, SgAsmDwarfVariantPart, SgAsmDwarfWithStmt, SgAsmDwarfVolatileType>;
2654 using fields_t =
mp::List<describe_field_t<SgAsmDwarfConstruct,int,&SgAsmDwarfConstruct::p_nesting_level>,
describe_field_t<SgAsmDwarfConstruct,uint64_t,&SgAsmDwarfConstruct::p_offset>,
describe_field_t<SgAsmDwarfConstruct,uint64_t,&SgAsmDwarfConstruct::p_overall_offset>,
describe_field_t<SgAsmDwarfConstruct,std::string,&SgAsmDwarfConstruct::p_name>,
describe_field_t<SgAsmDwarfConstruct,SgAsmDwarfLine*,&SgAsmDwarfConstruct::p_source_position>>;
2661 using field_type = SgAsmDwarfConstructPtrList;
2662 static constexpr
size_t position{0};
2663 static constexpr
char const *
const name{
"list"};
2664 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructPtrList"};
2665 static constexpr
bool traverse{
true};
2666 static constexpr
auto mbr_ptr{&SgAsmDwarfConstructList::p_list};
2667 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2668 using bind = Desc<SgAsmDwarfConstructList, SgAsmDwarfConstructPtrList SgAsmDwarfConstructList::*, &SgAsmDwarfConstructList::p_list>;
2673 static constexpr
char const *
const name{
"AsmDwarfConstructList"};
2674 static constexpr
unsigned long variant{89};
2675 static constexpr
bool concrete{
true};
2685 static constexpr
char const *
const name{
"AsmDwarfDwarfProcedure"};
2686 static constexpr
unsigned long variant{90};
2687 static constexpr
bool concrete{
true};
2697 static constexpr
char const *
const name{
"AsmDwarfEntryPoint"};
2698 static constexpr
unsigned long variant{91};
2699 static constexpr
bool concrete{
true};
2709 static constexpr
size_t position{0};
2710 static constexpr
char const *
const name{
"body"};
2711 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2712 static constexpr
bool traverse{
true};
2713 static constexpr
auto mbr_ptr{&SgAsmDwarfEnumerationType::p_body};
2714 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2715 using bind = Desc<SgAsmDwarfEnumerationType, SgAsmDwarfConstructList* SgAsmDwarfEnumerationType::*, &SgAsmDwarfEnumerationType::p_body>;
2720 static constexpr
char const *
const name{
"AsmDwarfEnumerationType"};
2721 static constexpr
unsigned long variant{92};
2722 static constexpr
bool concrete{
true};
2732 static constexpr
char const *
const name{
"AsmDwarfEnumerator"};
2733 static constexpr
unsigned long variant{93};
2734 static constexpr
bool concrete{
true};
2744 static constexpr
char const *
const name{
"AsmDwarfFileType"};
2745 static constexpr
unsigned long variant{94};
2746 static constexpr
bool concrete{
true};
2756 static constexpr
char const *
const name{
"AsmDwarfFormalParameter"};
2757 static constexpr
unsigned long variant{95};
2758 static constexpr
bool concrete{
true};
2768 static constexpr
char const *
const name{
"AsmDwarfFormatLabel"};
2769 static constexpr
unsigned long variant{96};
2770 static constexpr
bool concrete{
true};
2780 static constexpr
char const *
const name{
"AsmDwarfFriend"};
2781 static constexpr
unsigned long variant{97};
2782 static constexpr
bool concrete{
true};
2792 static constexpr
char const *
const name{
"AsmDwarfFunctionTemplate"};
2793 static constexpr
unsigned long variant{98};
2794 static constexpr
bool concrete{
true};
2804 static constexpr
char const *
const name{
"AsmDwarfImportedDeclaration"};
2805 static constexpr
unsigned long variant{99};
2806 static constexpr
bool concrete{
true};
2816 static constexpr
char const *
const name{
"AsmDwarfImportedModule"};
2817 static constexpr
unsigned long variant{100};
2818 static constexpr
bool concrete{
true};
2828 static constexpr
char const *
const name{
"AsmDwarfImportedUnit"};
2829 static constexpr
unsigned long variant{101};
2830 static constexpr
bool concrete{
true};
2840 static constexpr
char const *
const name{
"AsmDwarfInformation"};
2841 static constexpr
unsigned long variant{102};
2842 static constexpr
bool concrete{
false};
2852 static constexpr
char const *
const name{
"AsmDwarfInheritance"};
2853 static constexpr
unsigned long variant{103};
2854 static constexpr
bool concrete{
true};
2864 static constexpr
size_t position{0};
2865 static constexpr
char const *
const name{
"body"};
2866 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2867 static constexpr
bool traverse{
true};
2868 static constexpr
auto mbr_ptr{&SgAsmDwarfInlinedSubroutine::p_body};
2869 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2870 using bind = Desc<SgAsmDwarfInlinedSubroutine, SgAsmDwarfConstructList* SgAsmDwarfInlinedSubroutine::*, &SgAsmDwarfInlinedSubroutine::p_body>;
2875 static constexpr
char const *
const name{
"AsmDwarfInlinedSubroutine"};
2876 static constexpr
unsigned long variant{104};
2877 static constexpr
bool concrete{
true};
2887 static constexpr
char const *
const name{
"AsmDwarfInterfaceType"};
2888 static constexpr
unsigned long variant{105};
2889 static constexpr
bool concrete{
true};
2899 static constexpr
char const *
const name{
"AsmDwarfLabel"};
2900 static constexpr
unsigned long variant{106};
2901 static constexpr
bool concrete{
true};
2911 static constexpr
size_t position{0};
2912 static constexpr
char const *
const name{
"body"};
2913 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
2914 static constexpr
bool traverse{
true};
2915 static constexpr
auto mbr_ptr{&SgAsmDwarfLexicalBlock::p_body};
2916 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2917 using bind = Desc<SgAsmDwarfLexicalBlock, SgAsmDwarfConstructList* SgAsmDwarfLexicalBlock::*, &SgAsmDwarfLexicalBlock::p_body>;
2922 static constexpr
char const *
const name{
"AsmDwarfLexicalBlock"};
2923 static constexpr
unsigned long variant{107};
2924 static constexpr
bool concrete{
true};
2933 using field_type = uint64_t;
2934 static constexpr
size_t position{0};
2935 static constexpr
char const *
const name{
"address"};
2936 static constexpr
char const *
const typestr{
"uint64_t"};
2937 static constexpr
bool traverse{
false};
2938 static constexpr
auto mbr_ptr{&SgAsmDwarfLine::p_address};
2939 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2940 using bind = Desc<SgAsmDwarfLine, uint64_t SgAsmDwarfLine::*, &SgAsmDwarfLine::p_address>;
2944 using field_type = int;
2945 static constexpr
size_t position{1};
2946 static constexpr
char const *
const name{
"file_id"};
2947 static constexpr
char const *
const typestr{
"int"};
2948 static constexpr
bool traverse{
false};
2949 static constexpr
auto mbr_ptr{&SgAsmDwarfLine::p_file_id};
2950 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2951 using bind = Desc<SgAsmDwarfLine, int SgAsmDwarfLine::*, &SgAsmDwarfLine::p_file_id>;
2955 using field_type = int;
2956 static constexpr
size_t position{2};
2957 static constexpr
char const *
const name{
"line"};
2958 static constexpr
char const *
const typestr{
"int"};
2959 static constexpr
bool traverse{
false};
2960 static constexpr
auto mbr_ptr{&SgAsmDwarfLine::p_line};
2961 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2962 using bind = Desc<SgAsmDwarfLine, int SgAsmDwarfLine::*, &SgAsmDwarfLine::p_line>;
2966 using field_type = int;
2967 static constexpr
size_t position{3};
2968 static constexpr
char const *
const name{
"column"};
2969 static constexpr
char const *
const typestr{
"int"};
2970 static constexpr
bool traverse{
false};
2971 static constexpr
auto mbr_ptr{&SgAsmDwarfLine::p_column};
2972 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2973 using bind = Desc<SgAsmDwarfLine, int SgAsmDwarfLine::*, &SgAsmDwarfLine::p_column>;
2978 static constexpr
char const *
const name{
"AsmDwarfLine"};
2979 static constexpr
unsigned long variant{108};
2980 static constexpr
bool concrete{
true};
2982 using fields_t =
mp::List<describe_field_t<SgAsmDwarfLine,uint64_t,&SgAsmDwarfLine::p_address>,
describe_field_t<SgAsmDwarfLine,int,&SgAsmDwarfLine::p_file_id>,
describe_field_t<SgAsmDwarfLine,int,&SgAsmDwarfLine::p_line>,
describe_field_t<SgAsmDwarfLine,int,&SgAsmDwarfLine::p_column>>;
2989 using field_type = SgAsmDwarfLinePtrList;
2990 static constexpr
size_t position{0};
2991 static constexpr
char const *
const name{
"line_list"};
2992 static constexpr
char const *
const typestr{
"SgAsmDwarfLinePtrList"};
2993 static constexpr
bool traverse{
true};
2994 static constexpr
auto mbr_ptr{&SgAsmDwarfLineList::p_line_list};
2995 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
2996 using bind = Desc<SgAsmDwarfLineList, SgAsmDwarfLinePtrList SgAsmDwarfLineList::*, &SgAsmDwarfLineList::p_line_list>;
3001 static constexpr
char const *
const name{
"AsmDwarfLineList"};
3002 static constexpr
unsigned long variant{109};
3003 static constexpr
bool concrete{
true};
3012 using field_type = std::string;
3013 static constexpr
size_t position{0};
3014 static constexpr
char const *
const name{
"macro_string"};
3015 static constexpr
char const *
const typestr{
"std::string"};
3016 static constexpr
bool traverse{
false};
3017 static constexpr
auto mbr_ptr{&SgAsmDwarfMacro::p_macro_string};
3018 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3019 using bind = Desc<SgAsmDwarfMacro, std::string SgAsmDwarfMacro::*, &SgAsmDwarfMacro::p_macro_string>;
3024 static constexpr
char const *
const name{
"AsmDwarfMacro"};
3025 static constexpr
unsigned long variant{110};
3026 static constexpr
bool concrete{
true};
3035 using field_type = SgAsmDwarfMacroPtrList;
3036 static constexpr
size_t position{0};
3037 static constexpr
char const *
const name{
"macro_list"};
3038 static constexpr
char const *
const typestr{
"SgAsmDwarfMacroPtrList"};
3039 static constexpr
bool traverse{
true};
3040 static constexpr
auto mbr_ptr{&SgAsmDwarfMacroList::p_macro_list};
3041 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3042 using bind = Desc<SgAsmDwarfMacroList, SgAsmDwarfMacroPtrList SgAsmDwarfMacroList::*, &SgAsmDwarfMacroList::p_macro_list>;
3047 static constexpr
char const *
const name{
"AsmDwarfMacroList"};
3048 static constexpr
unsigned long variant{111};
3049 static constexpr
bool concrete{
true};
3059 static constexpr
char const *
const name{
"AsmDwarfMember"};
3060 static constexpr
unsigned long variant{112};
3061 static constexpr
bool concrete{
true};
3071 static constexpr
char const *
const name{
"AsmDwarfModule"};
3072 static constexpr
unsigned long variant{113};
3073 static constexpr
bool concrete{
true};
3083 static constexpr
char const *
const name{
"AsmDwarfMutableType"};
3084 static constexpr
unsigned long variant{114};
3085 static constexpr
bool concrete{
true};
3095 static constexpr
char const *
const name{
"AsmDwarfNamelist"};
3096 static constexpr
unsigned long variant{115};
3097 static constexpr
bool concrete{
true};
3107 static constexpr
char const *
const name{
"AsmDwarfNamelistItem"};
3108 static constexpr
unsigned long variant{116};
3109 static constexpr
bool concrete{
true};
3119 static constexpr
size_t position{0};
3120 static constexpr
char const *
const name{
"body"};
3121 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
3122 static constexpr
bool traverse{
true};
3123 static constexpr
auto mbr_ptr{&SgAsmDwarfNamespace::p_body};
3124 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3125 using bind = Desc<SgAsmDwarfNamespace, SgAsmDwarfConstructList* SgAsmDwarfNamespace::*, &SgAsmDwarfNamespace::p_body>;
3130 static constexpr
char const *
const name{
"AsmDwarfNamespace"};
3131 static constexpr
unsigned long variant{117};
3132 static constexpr
bool concrete{
true};
3142 static constexpr
char const *
const name{
"AsmDwarfPackedType"};
3143 static constexpr
unsigned long variant{118};
3144 static constexpr
bool concrete{
true};
3154 static constexpr
char const *
const name{
"AsmDwarfPartialUnit"};
3155 static constexpr
unsigned long variant{119};
3156 static constexpr
bool concrete{
true};
3166 static constexpr
char const *
const name{
"AsmDwarfPointerType"};
3167 static constexpr
unsigned long variant{120};
3168 static constexpr
bool concrete{
true};
3178 static constexpr
char const *
const name{
"AsmDwarfPtrToMemberType"};
3179 static constexpr
unsigned long variant{121};
3180 static constexpr
bool concrete{
true};
3190 static constexpr
char const *
const name{
"AsmDwarfReferenceType"};
3191 static constexpr
unsigned long variant{122};
3192 static constexpr
bool concrete{
true};
3202 static constexpr
char const *
const name{
"AsmDwarfRestrictType"};
3203 static constexpr
unsigned long variant{123};
3204 static constexpr
bool concrete{
true};
3214 static constexpr
char const *
const name{
"AsmDwarfSetType"};
3215 static constexpr
unsigned long variant{124};
3216 static constexpr
bool concrete{
true};
3226 static constexpr
char const *
const name{
"AsmDwarfSharedType"};
3227 static constexpr
unsigned long variant{125};
3228 static constexpr
bool concrete{
true};
3238 static constexpr
char const *
const name{
"AsmDwarfStringType"};
3239 static constexpr
unsigned long variant{126};
3240 static constexpr
bool concrete{
true};
3250 static constexpr
size_t position{0};
3251 static constexpr
char const *
const name{
"body"};
3252 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
3253 static constexpr
bool traverse{
true};
3254 static constexpr
auto mbr_ptr{&SgAsmDwarfStructureType::p_body};
3255 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3256 using bind = Desc<SgAsmDwarfStructureType, SgAsmDwarfConstructList* SgAsmDwarfStructureType::*, &SgAsmDwarfStructureType::p_body>;
3261 static constexpr
char const *
const name{
"AsmDwarfStructureType"};
3262 static constexpr
unsigned long variant{127};
3263 static constexpr
bool concrete{
true};
3273 static constexpr
size_t position{0};
3274 static constexpr
char const *
const name{
"body"};
3275 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
3276 static constexpr
bool traverse{
true};
3277 static constexpr
auto mbr_ptr{&SgAsmDwarfSubprogram::p_body};
3278 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3279 using bind = Desc<SgAsmDwarfSubprogram, SgAsmDwarfConstructList* SgAsmDwarfSubprogram::*, &SgAsmDwarfSubprogram::p_body>;
3284 static constexpr
char const *
const name{
"AsmDwarfSubprogram"};
3285 static constexpr
unsigned long variant{128};
3286 static constexpr
bool concrete{
true};
3296 static constexpr
char const *
const name{
"AsmDwarfSubrangeType"};
3297 static constexpr
unsigned long variant{129};
3298 static constexpr
bool concrete{
true};
3308 static constexpr
size_t position{0};
3309 static constexpr
char const *
const name{
"body"};
3310 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
3311 static constexpr
bool traverse{
true};
3312 static constexpr
auto mbr_ptr{&SgAsmDwarfSubroutineType::p_body};
3313 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3314 using bind = Desc<SgAsmDwarfSubroutineType, SgAsmDwarfConstructList* SgAsmDwarfSubroutineType::*, &SgAsmDwarfSubroutineType::p_body>;
3319 static constexpr
char const *
const name{
"AsmDwarfSubroutineType"};
3320 static constexpr
unsigned long variant{130};
3321 static constexpr
bool concrete{
true};
3331 static constexpr
char const *
const name{
"AsmDwarfTemplateTypeParameter"};
3332 static constexpr
unsigned long variant{131};
3333 static constexpr
bool concrete{
true};
3343 static constexpr
char const *
const name{
"AsmDwarfTemplateValueParameter"};
3344 static constexpr
unsigned long variant{132};
3345 static constexpr
bool concrete{
true};
3355 static constexpr
char const *
const name{
"AsmDwarfThrownType"};
3356 static constexpr
unsigned long variant{133};
3357 static constexpr
bool concrete{
true};
3367 static constexpr
char const *
const name{
"AsmDwarfTryBlock"};
3368 static constexpr
unsigned long variant{134};
3369 static constexpr
bool concrete{
true};
3379 static constexpr
char const *
const name{
"AsmDwarfTypedef"};
3380 static constexpr
unsigned long variant{135};
3381 static constexpr
bool concrete{
true};
3391 static constexpr
size_t position{0};
3392 static constexpr
char const *
const name{
"body"};
3393 static constexpr
char const *
const typestr{
"SgAsmDwarfConstructList*"};
3394 static constexpr
bool traverse{
true};
3395 static constexpr
auto mbr_ptr{&SgAsmDwarfUnionType::p_body};
3396 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3397 using bind = Desc<SgAsmDwarfUnionType, SgAsmDwarfConstructList* SgAsmDwarfUnionType::*, &SgAsmDwarfUnionType::p_body>;
3402 static constexpr
char const *
const name{
"AsmDwarfUnionType"};
3403 static constexpr
unsigned long variant{136};
3404 static constexpr
bool concrete{
true};
3414 static constexpr
char const *
const name{
"AsmDwarfUnknownConstruct"};
3415 static constexpr
unsigned long variant{137};
3416 static constexpr
bool concrete{
true};
3426 static constexpr
char const *
const name{
"AsmDwarfUnspecifiedParameters"};
3427 static constexpr
unsigned long variant{138};
3428 static constexpr
bool concrete{
true};
3438 static constexpr
char const *
const name{
"AsmDwarfUnspecifiedType"};
3439 static constexpr
unsigned long variant{139};
3440 static constexpr
bool concrete{
true};
3450 static constexpr
char const *
const name{
"AsmDwarfUpcRelaxedType"};
3451 static constexpr
unsigned long variant{140};
3452 static constexpr
bool concrete{
true};
3462 static constexpr
char const *
const name{
"AsmDwarfUpcSharedType"};
3463 static constexpr
unsigned long variant{141};
3464 static constexpr
bool concrete{
true};
3474 static constexpr
char const *
const name{
"AsmDwarfUpcStrictType"};
3475 static constexpr
unsigned long variant{142};
3476 static constexpr
bool concrete{
true};
3486 static constexpr
char const *
const name{
"AsmDwarfVariable"};
3487 static constexpr
unsigned long variant{143};
3488 static constexpr
bool concrete{
true};
3498 static constexpr
char const *
const name{
"AsmDwarfVariant"};
3499 static constexpr
unsigned long variant{144};
3500 static constexpr
bool concrete{
true};
3510 static constexpr
char const *
const name{
"AsmDwarfVariantPart"};
3511 static constexpr
unsigned long variant{145};
3512 static constexpr
bool concrete{
true};
3522 static constexpr
char const *
const name{
"AsmDwarfVolatileType"};
3523 static constexpr
unsigned long variant{146};
3524 static constexpr
bool concrete{
true};
3534 static constexpr
char const *
const name{
"AsmDwarfWithStmt"};
3535 static constexpr
unsigned long variant{147};
3536 static constexpr
bool concrete{
true};
3545 using field_type = SgAsmElfDynamicEntry::EntryType;
3546 static constexpr
size_t position{0};
3547 static constexpr
char const *
const name{
"d_tag"};
3548 static constexpr
char const *
const typestr{
"SgAsmElfDynamicEntry::EntryType"};
3549 static constexpr
bool traverse{
false};
3550 static constexpr
auto mbr_ptr{&SgAsmElfDynamicEntry::p_d_tag};
3551 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3552 using bind = Desc<SgAsmElfDynamicEntry, SgAsmElfDynamicEntry::EntryType SgAsmElfDynamicEntry::*, &SgAsmElfDynamicEntry::p_d_tag>;
3557 static constexpr
size_t position{1};
3558 static constexpr
char const *
const name{
"d_val"};
3559 static constexpr
char const *
const typestr{
"rose_rva_t"};
3560 static constexpr
bool traverse{
false};
3561 static constexpr
auto mbr_ptr{&SgAsmElfDynamicEntry::p_d_val};
3562 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3563 using bind = Desc<SgAsmElfDynamicEntry, rose_rva_t SgAsmElfDynamicEntry::*, &SgAsmElfDynamicEntry::p_d_val>;
3568 static constexpr
size_t position{2};
3569 static constexpr
char const *
const name{
"name"};
3570 static constexpr
char const *
const typestr{
"SgAsmGenericString*"};
3571 static constexpr
bool traverse{
true};
3572 static constexpr
auto mbr_ptr{&SgAsmElfDynamicEntry::p_name};
3573 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3574 using bind = Desc<SgAsmElfDynamicEntry, SgAsmGenericString* SgAsmElfDynamicEntry::*, &SgAsmElfDynamicEntry::p_name>;
3578 using field_type = SgUnsignedCharList;
3579 static constexpr
size_t position{3};
3580 static constexpr
char const *
const name{
"extra"};
3581 static constexpr
char const *
const typestr{
"SgUnsignedCharList"};
3582 static constexpr
bool traverse{
false};
3583 static constexpr
auto mbr_ptr{&SgAsmElfDynamicEntry::p_extra};
3584 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3585 using bind = Desc<SgAsmElfDynamicEntry, SgUnsignedCharList SgAsmElfDynamicEntry::*, &SgAsmElfDynamicEntry::p_extra>;
3590 static constexpr
char const *
const name{
"AsmElfDynamicEntry"};
3591 static constexpr
unsigned long variant{148};
3592 static constexpr
bool concrete{
true};
3594 using fields_t =
mp::List<describe_field_t<SgAsmElfDynamicEntry,SgAsmElfDynamicEntry::EntryType,&SgAsmElfDynamicEntry::p_d_tag>,
describe_field_t<SgAsmElfDynamicEntry,rose_rva_t,&SgAsmElfDynamicEntry::p_d_val>,
describe_field_t<SgAsmElfDynamicEntry,SgAsmGenericString*,&SgAsmElfDynamicEntry::p_name>,
describe_field_t<SgAsmElfDynamicEntry,SgUnsignedCharList,&SgAsmElfDynamicEntry::p_extra>>;
3601 using field_type = SgAsmElfDynamicEntryPtrList;
3602 static constexpr
size_t position{0};
3603 static constexpr
char const *
const name{
"entries"};
3604 static constexpr
char const *
const typestr{
"SgAsmElfDynamicEntryPtrList"};
3605 static constexpr
bool traverse{
false};
3606 static constexpr
auto mbr_ptr{&SgAsmElfDynamicEntryList::p_entries};
3607 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3608 using bind = Desc<SgAsmElfDynamicEntryList, SgAsmElfDynamicEntryPtrList SgAsmElfDynamicEntryList::*, &SgAsmElfDynamicEntryList::p_entries>;
3613 static constexpr
char const *
const name{
"AsmElfDynamicEntryList"};
3614 static constexpr
unsigned long variant{149};
3615 static constexpr
bool concrete{
true};
3625 static constexpr
size_t position{0};
3626 static constexpr
char const *
const name{
"entries"};
3627 static constexpr
char const *
const typestr{
"SgAsmElfDynamicEntryList*"};
3628 static constexpr
bool traverse{
true};
3629 static constexpr
auto mbr_ptr{&SgAsmElfDynamicSection::p_entries};
3630 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3631 using bind = Desc<SgAsmElfDynamicSection, SgAsmElfDynamicEntryList* SgAsmElfDynamicSection::*, &SgAsmElfDynamicSection::p_entries>;
3636 static constexpr
char const *
const name{
"AsmElfDynamicSection"};
3637 static constexpr
unsigned long variant{150};
3638 static constexpr
bool concrete{
true};
3647 using field_type = int;
3648 static constexpr
size_t position{0};
3649 static constexpr
char const *
const name{
"version"};
3650 static constexpr
char const *
const typestr{
"int"};
3651 static constexpr
bool traverse{
false};
3652 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_version};
3653 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3654 using bind = Desc<SgAsmElfEHFrameEntryCI, int SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_version>;
3658 using field_type = std::string;
3659 static constexpr
size_t position{1};
3660 static constexpr
char const *
const name{
"augmentation_string"};
3661 static constexpr
char const *
const typestr{
"std::string"};
3662 static constexpr
bool traverse{
false};
3663 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_augmentation_string};
3664 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3665 using bind = Desc<SgAsmElfEHFrameEntryCI, std::string SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_augmentation_string>;
3669 using field_type = uint64_t;
3670 static constexpr
size_t position{2};
3671 static constexpr
char const *
const name{
"eh_data"};
3672 static constexpr
char const *
const typestr{
"uint64_t"};
3673 static constexpr
bool traverse{
false};
3674 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_eh_data};
3675 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3676 using bind = Desc<SgAsmElfEHFrameEntryCI, uint64_t SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_eh_data>;
3680 using field_type = uint64_t;
3681 static constexpr
size_t position{3};
3682 static constexpr
char const *
const name{
"code_alignment_factor"};
3683 static constexpr
char const *
const typestr{
"uint64_t"};
3684 static constexpr
bool traverse{
false};
3685 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_code_alignment_factor};
3686 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3687 using bind = Desc<SgAsmElfEHFrameEntryCI, uint64_t SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_code_alignment_factor>;
3691 using field_type = int64_t;
3692 static constexpr
size_t position{4};
3693 static constexpr
char const *
const name{
"data_alignment_factor"};
3694 static constexpr
char const *
const typestr{
"int64_t"};
3695 static constexpr
bool traverse{
false};
3696 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_data_alignment_factor};
3697 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3698 using bind = Desc<SgAsmElfEHFrameEntryCI, int64_t SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_data_alignment_factor>;
3702 using field_type = uint64_t;
3703 static constexpr
size_t position{5};
3704 static constexpr
char const *
const name{
"augmentation_data_length"};
3705 static constexpr
char const *
const typestr{
"uint64_t"};
3706 static constexpr
bool traverse{
false};
3707 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_augmentation_data_length};
3708 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3709 using bind = Desc<SgAsmElfEHFrameEntryCI, uint64_t SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_augmentation_data_length>;
3713 using field_type = int;
3714 static constexpr
size_t position{6};
3715 static constexpr
char const *
const name{
"lsda_encoding"};
3716 static constexpr
char const *
const typestr{
"int"};
3717 static constexpr
bool traverse{
false};
3718 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_lsda_encoding};
3719 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3720 using bind = Desc<SgAsmElfEHFrameEntryCI, int SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_lsda_encoding>;
3724 using field_type = int;
3725 static constexpr
size_t position{7};
3726 static constexpr
char const *
const name{
"prh_encoding"};
3727 static constexpr
char const *
const typestr{
"int"};
3728 static constexpr
bool traverse{
false};
3729 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_prh_encoding};
3730 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3731 using bind = Desc<SgAsmElfEHFrameEntryCI, int SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_prh_encoding>;
3735 using field_type = unsigned;
3736 static constexpr
size_t position{8};
3737 static constexpr
char const *
const name{
"prh_arg"};
3738 static constexpr
char const *
const typestr{
"unsigned"};
3739 static constexpr
bool traverse{
false};
3740 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_prh_arg};
3741 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3742 using bind = Desc<SgAsmElfEHFrameEntryCI, unsigned SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_prh_arg>;
3746 using field_type = rose_addr_t;
3747 static constexpr
size_t position{9};
3748 static constexpr
char const *
const name{
"prh_addr"};
3749 static constexpr
char const *
const typestr{
"rose_addr_t"};
3750 static constexpr
bool traverse{
false};
3751 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_prh_addr};
3752 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3753 using bind = Desc<SgAsmElfEHFrameEntryCI, rose_addr_t SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_prh_addr>;
3757 using field_type = int;
3758 static constexpr
size_t position{10};
3759 static constexpr
char const *
const name{
"addr_encoding"};
3760 static constexpr
char const *
const typestr{
"int"};
3761 static constexpr
bool traverse{
false};
3762 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_addr_encoding};
3763 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3764 using bind = Desc<SgAsmElfEHFrameEntryCI, int SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_addr_encoding>;
3768 using field_type = bool;
3769 static constexpr
size_t position{11};
3770 static constexpr
char const *
const name{
"sig_frame"};
3771 static constexpr
char const *
const typestr{
"bool"};
3772 static constexpr
bool traverse{
false};
3773 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_sig_frame};
3774 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3775 using bind = Desc<SgAsmElfEHFrameEntryCI, bool SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_sig_frame>;
3779 using field_type = SgUnsignedCharList;
3780 static constexpr
size_t position{12};
3781 static constexpr
char const *
const name{
"instructions"};
3782 static constexpr
char const *
const typestr{
"SgUnsignedCharList"};
3783 static constexpr
bool traverse{
false};
3784 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_instructions};
3785 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3786 using bind = Desc<SgAsmElfEHFrameEntryCI, SgUnsignedCharList SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_instructions>;
3791 static constexpr
size_t position{13};
3792 static constexpr
char const *
const name{
"fd_entries"};
3793 static constexpr
char const *
const typestr{
"SgAsmElfEHFrameEntryFDList*"};
3794 static constexpr
bool traverse{
true};
3795 static constexpr
auto mbr_ptr{&SgAsmElfEHFrameEntryCI::p_fd_entries};
3796 template <
template <
typename NodeT,
typename FieldT, FieldT fld_ptr>
class Desc>
3797 using bind = Desc<SgAsmElfEHFrameEntryCI, SgAsmElfEHFrameEntryFDList* SgAsmElfEHFrameEntryCI::*, &SgAsmElfEHFrameEntryCI::p_fd_entries>;
3802 static constexpr
char const *
const name{
"AsmElfEHFrameEntryCI"};
3803 static constexpr
unsigned long variant{151};
3804 static constexpr
bool concrete{
true};
3806 using fields_t =
mp::List<describe_field_t<SgAsmElfEHFrameEntryCI,int,&SgAsmElfEHFrameEntryCI::p_version>,
describe_field_t<SgAsmElfEHFrameEntryCI,std::string,&SgAsmElfEHFrameEntryCI::p_augmentation_string>,
describe_field_t<SgAsmElfEHFrameEntryCI,uint64_t,&SgAsmElfEHFrameEntryCI::p_eh_data>,
describe_field_t<SgAsmElfEHFrameEntryCI,uint64_t,&SgAsmElfEHFrameEntryCI::p_code_alignment_factor>,
describe_field_t<SgAsmElfEHFrameEntryCI,int64_t,&SgAsmElfEHFrameEntryCI::p_data_alignment_factor>,
describe_field_t<SgAsmElfEHFrameEntryCI,uint64_t,&SgAsmElfEHFrameEntryCI::p_augmentation_data_length>,
describe_field_t<SgAsmElfEHFrameEntryCI,int,&SgAsmElfEHFrameEntryCI::p_lsda_encoding>,
describe_field_t<SgAsmElfEHFrameEntryCI,int,&SgAsmElfEHFrameEntryCI::p_prh_encoding>,
describe_field_t<SgAsmElfEHFrameEntryCI,unsigned,&SgAsmElfEHFrameEntryCI::p_prh_arg>,
describe_field_t<SgAsmElfEHFrameEntryCI,rose_addr_t,&SgAsmElfEHFrameEntryCI::p_prh_addr>,
describe_field_t<SgAsmElfEHFrameEntryCI,int,&SgAsmElfEHFrameEntryCI::p_addr_encoding>,
describe_field_t<SgAsmElfEHFrameEntryCI,bool,&SgAsmElfEHFrameEntryCI::p_sig_frame>,
describe_field_t<SgAsmElfEHFrameEntryCI,SgUnsignedCharList,&SgAsmElfEHFrameEntryCI::p_instructions>,
describe_field_t<SgAsmElfEHFrameEntryCI,SgAsmElfEHFrameEntryFDList*,&SgAsmElfEHFrameEntryCI::p_fd_entries>>;
3813 using field_type = SgAsmElfEHFrameEntryCIPtrList;