Design Patterns
statement_node.h
Go to the documentation of this file.
1 // Based on "Design Patterns: Elements of Reusable Object-Oriented Software"
2 // book by Erich Gamma, John Vlissides, Ralph Johnson, and Richard Helm
3 //
4 // Created by Bartosz Rachwal. The National Institute of Advanced Industrial Science and Technology, Japan.
5 
6 #ifndef STRUCTURAL_FACADE_STATEMENT_NODE_H_
7 #define STRUCTURAL_FACADE_STATEMENT_NODE_H_
8 
10 #include "program_node_interface.h"
11 
12 #include "../../../operational/src/iterator/list.h"
13 
14 namespace structural
15 {
16 namespace facade
17 {
19 {
20  public:
21  StatementNode();
22 
23  virtual void GetSourcePosition(int& line, int& index) override;
24 
25  virtual void Add(ProgramNodeInterface*) override;
26  virtual void Remove(ProgramNodeInterface*) override;
27 
28  virtual void Traverse(CodeGeneratorInterface&) override;
29 
30  protected:
32 };
33 }
34 }
35 
36 #endif
37 
Definition: shape_interface.h:11
Definition: list.h:17
virtual void Remove(ProgramNodeInterface *) override
virtual void Add(ProgramNodeInterface *) override
Definition: code_generator_interface.h:17
Definition: statement_node_interface.h:15
Definition: statement_node.h:18
Definition: program_node_interface.h:15
virtual void GetSourcePosition(int &line, int &index) override
operational::iterator::List< ProgramNodeInterface * > * children_
Definition: statement_node.h:31
virtual void Traverse(CodeGeneratorInterface &) override