84 auto rv = Transform::init_apply(node);
93 const IR::Node *postorder(IR::Type_BaseList *type)
override;
95 const IR::Node *postorder(IR::Type_Struct *type)
override {
return insertReplacements(type); }
96 const IR::Node *postorder(IR::ArrayIndex *expression)
override;
97 const IR::Node *postorder(IR::Type_Typedef *type)
override {
return insertReplacements(type); }
98 const IR::Node *postorder(IR::Type_Newtype *type)
override {
return insertReplacements(type); }
99 const IR::Node *postorder(IR::P4Parser *parser)
override {
return insertReplacements(parser); }
100 const IR::Node *postorder(IR::P4Control *control)
override {
101 return insertReplacements(control);
103 const IR::Node *postorder(IR::Method *method)
override {
return insertReplacements(method); }
104 const IR::Node *postorder(IR::Type_Extern *ext)
override {
return insertReplacements(ext); }
105 const IR::Node *postorder(IR::Declaration_Instance *decl)
override {
106 return insertReplacements(decl);
108 const IR::Node *preorder(IR::P4ValueSet *set)
override {
113 const IR::Node *preorder(IR::P4ListExpression *expression)
override {
return skip(expression); }
114 const IR::Node *preorder(IR::Type_P4List *list)
override {
return skip(list); }
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:24