LRDE Tiger Compiler  1.34a $Id: 7fef12e1f5fa43449d667a0eec1d837c40fc1202 $
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
while-exp.hh
Go to the documentation of this file.
1 
6 #ifndef AST_WHILE_EXP_HH
7 # define AST_WHILE_EXP_HH
8 
9 # include <ast/exp.hh>
10 
11 namespace ast
12 {
13 
15  class WhileExp : public Exp
16  {
19  public:
21  WhileExp(const Location& location, Exp* test, Exp* body);
23  virtual ~WhileExp();
26 
27 
28  public:
30  virtual void accept(ConstVisitor& v) const override;
32  virtual void accept(Visitor& v) override;
34 
37  public:
39  const Exp& test_get() const;
41  Exp& test_get();
43  const Exp& body_get() const;
45  Exp& body_get();
48  protected:
53  };
54 
55 } // namespace ast
56 
57 # include <ast/while-exp.hxx>
58 
59 #endif // !AST_WHILE_EXP_HH