Design Patterns
not_exp.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 OPERATIONAL_INTERPRETER_NOT_EXP_INTERFACE_H_
7 #define OPERATIONAL_INTERPRETER_NOT_EXP_INTERFACE_H_
8 
10 
11 namespace operational
12 {
13 namespace interpreter
14 {
16 {
17  public:
18  explicit NotExp(BooleanExpInterface* expression);
19 
20  virtual bool Evaluate(InterpreterContextInterface& context) override;
21  virtual BooleanExpInterface *Replace(const std::string& name, BooleanExpInterface& expression) override;
22  virtual BooleanExpInterface *Copy() const override;
23 
24  private:
25  BooleanExpInterface* operand_;
26 };
27 }
28 }
29 
30 #endif
31 
virtual bool Evaluate(InterpreterContextInterface &context) override
Definition: not_exp.cc:14
Definition: application.cc:10
Definition: not_exp.h:15
Definition: boolean_exp_interface.h:17
NotExp(BooleanExpInterface *expression)
Definition: not_exp.cc:12
virtual BooleanExpInterface * Replace(const std::string &name, BooleanExpInterface &expression) override
Definition: not_exp.cc:19
Definition: interpreter_context_interface.h:17
virtual BooleanExpInterface * Copy() const override
Definition: not_exp.cc:24