50 std::vector<cstring> stack;
56 setName(
"HierarchicalNames");
59 bool preorder(IR::P4Parser *parser)
override {
60 stack.push_back(getName(parser));
63 void postorder(IR::P4Parser *)
override { stack.pop_back(); }
65 bool preorder(IR::P4Control *control)
override {
66 stack.push_back(getName(control));
69 void postorder(IR::P4Control *)
override { stack.pop_back(); }
71 bool preorder(IR::P4Table *table)
override {
72 visit(table->annotations);
76 void postorder(IR::Annotation *annotation)
override;
78 bool preorder(IR::Parameter *)
override {
return false; }
TODO: this is not really specific to BMV2, it should reside somewhere else.
Definition applyOptionsPragmas.cpp:13