59    std::vector<cstring> stack;
 
   65        setName(
"HierarchicalNames");
 
   68    const IR::Node *preorder(IR::P4Parser *parser)
 override {
 
   69        stack.push_back(getName(parser));
 
   72    const IR::Node *postorder(IR::P4Parser *parser)
 override {
 
   77    const IR::Node *preorder(IR::P4Control *control)
 override {
 
   78        stack.push_back(getName(control));
 
   81    const IR::Node *postorder(IR::P4Control *control)
 override {
 
   86    const IR::Node *preorder(IR::P4Table *table)
 override {
 
   87        visit(table->annotations);
 
   92    const IR::Node *postorder(IR::Annotation *annotation) 
override;
 
   94    const IR::Node *preorder(IR::Parameter *parameter)
 override {