All visitors must implement this base class and then override one or more of the VisitXXX() methods, depending on which shop type the visitor class is interested in. More...
#include <Visitor_Element_Classes.h>
Public Member Functions | |
virtual void | VisitRestaurant (Visitor_Restaurant *shop) |
Let the visitor visit a Visitor_Restaurant shop. | |
virtual void | VisitButcher (Visitor_Butcher *shop) |
Let the visitor visit a Visitor_Butcher shop. | |
virtual void | VisitBaker (Visitor_Baker *shop) |
Let the visitor visit a Visitor_Baker shop. | |
virtual void | VisitVegetableGrocer (Visitor_VegetableGrocer *shop) |
Let the visitor visit a Visitor_VegetableGrocer shop. | |
virtual void | VisitCondimentGrocer (Visitor_CondimentGrocer *shop) |
Let the visitor visit a Visitor_CondimentGrocer shop. | |
virtual void | VisitPickleGrocer (Visitor_PickleGrocer *shop) |
Let the visitor visit a Visitor_PickleGrocer shop. | |
virtual void | VisitMaker (Visitor_Maker *shop) |
Let the visitor visit a Visitor_Maker shop. | |
All visitors must implement this base class and then override one or more of the VisitXXX() methods, depending on which shop type the visitor class is interested in.
For every new shop class added, a new VisitXXX() method needs to be added to this base class and then all visitor classes must be rebuilt. There is no way around this as the Visitor_Shop and Visitor classes are closely intertwined – at least at the interface level.
Definition at line 38 of file Visitor_Element_Classes.h.
|
inlinevirtual |
Let the visitor visit a Visitor_Baker shop.
shop | The specific baker shop being visited. |
Reimplemented in OrderVisitor.
Definition at line 57 of file Visitor_Element_Classes.h.
Referenced by Visitor_Baker::Accept().
|
inlinevirtual |
Let the visitor visit a Visitor_Butcher shop.
shop | The specific butcher shop being visited. |
Reimplemented in OrderVisitor.
Definition at line 51 of file Visitor_Element_Classes.h.
Referenced by Visitor_Butcher::Accept().
|
inlinevirtual |
Let the visitor visit a Visitor_CondimentGrocer shop.
shop | The specific condiment grocer being visited. |
Reimplemented in OrderVisitor.
Definition at line 69 of file Visitor_Element_Classes.h.
Referenced by Visitor_CondimentGrocer::Accept().
|
inlinevirtual |
Let the visitor visit a Visitor_Maker shop.
shop | The specific maker shop being visited. |
Reimplemented in OrderVisitor.
Definition at line 81 of file Visitor_Element_Classes.h.
Referenced by Visitor_Maker::Accept().
|
inlinevirtual |
Let the visitor visit a Visitor_PickleGrocer shop.
shop | The specific pickle grocer being visited. |
Reimplemented in OrderVisitor.
Definition at line 75 of file Visitor_Element_Classes.h.
Referenced by Visitor_PickleGrocer::Accept().
|
inlinevirtual |
Let the visitor visit a Visitor_Restaurant shop.
shop | The specific restaurant being visited. |
Reimplemented in OrderVisitor.
Definition at line 45 of file Visitor_Element_Classes.h.
Referenced by Visitor_Restaurant::Accept().
|
inlinevirtual |
Let the visitor visit a Visitor_VegetableGrocer shop.
shop | The specific vegetable grocer being visited. |
Reimplemented in OrderVisitor.
Definition at line 63 of file Visitor_Element_Classes.h.
Referenced by Visitor_VegetableGrocer::Accept().