source: src/SynTree/AddStmtVisitor.h @ ea6332d

aaron-thesisarm-ehcleanup-dtorsdeferred_resndemanglerjacob/cs343-translationjenkins-sandboxnew-astnew-ast-unique-exprnew-envno_listpersistent-indexerresolv-newwith_gc
Last change on this file since ea6332d was ea6332d, checked in by Thierry Delisle <tdelisle@…>, 4 years ago

Big header cleaning pass - commit 3

  • Property mode set to 100644
File size: 1.2 KB
Line 
1//
2// Cforall Version 1.0.0 Copyright (C) 2015 University of Waterloo
3//
4// The contents of this file are covered under the licence agreement in the
5// file "LICENCE" distributed with Cforall.
6//
7// AddStmtVisitor.h --
8//
9// Author           : Rob Schluntz
10// Created On       : Wed Jun 22 12:05:48 2016
11// Last Modified By : Peter A. Buhr
12// Last Modified On : Sat Jul 22 09:51:08 2017
13// Update Count     : 9
14//
15
16#pragma once
17
18#include <list>               // for list
19
20#include "SynTree/SynTree.h"  // for Visitor Nodes
21#include "SynTree/Visitor.h"  // for Visitor
22
23class AddStmtVisitor : public Visitor {
24  public:
25        typedef Visitor Parent;
26
27        using Parent::visit;
28        virtual void visit(CompoundStmt *compoundStmt);
29        virtual void visit(IfStmt *ifStmt);
30        virtual void visit(WhileStmt *whileStmt);
31        virtual void visit(ForStmt *forStmt);
32        virtual void visit(SwitchStmt *switchStmt);
33        virtual void visit(CaseStmt *caseStmt);
34        virtual void visit(CatchStmt *catchStmt);
35
36  protected:
37        void visitStatementList( std::list< Statement * > & );
38        Statement * visitStatement( Statement * );
39        std::list< Statement* > stmtsToAdd;
40        std::list< Statement* > stmtsToAddAfter;
41};
42
43// Local Variables: //
44// tab-width: 4 //
45// mode: c++ //
46// compile-command: "make install" //
47// End: //
Note: See TracBrowser for help on using the repository browser.