Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

ph::common::const_object_visitor Class Reference

#include <visitable_object.hpp>

Inheritance diagram for ph::common::const_object_visitor:

ph::reflect::dump_object_visitor

Detailed Description

Abstract class representing a visitor for objects, where the visitor does not modify the objects that it visits.

This class represents the "Visitor" in the "Visitor" pattern.

Definition at line 57 of file visitable_object.hpp.

Public Member Functions

virtual ~const_object_visitor ()
virtual bool recurse ()
virtual bool visit (const object_base *obj)=0
virtual bool visit_composite (const object_base *obj)=0


Constructor & Destructor Documentation

virtual ph::common::const_object_visitor::~const_object_visitor  )  [inline, virtual]
 

Definition at line 66 of file visitable_object.hpp.


Member Function Documentation

virtual bool ph::common::const_object_visitor::recurse  )  [inline, virtual]
 

Return true if the visitor should recurse through composite objects. it is up to the individual composite objects to implement this correctly.

Reimplemented in ph::reflect::dump_object_visitor.

Definition at line 68 of file visitable_object.hpp.

Referenced by ph::reflect::vector_object_helper::helper_accept(), and ph::reflect::ref_object_helper::helper_accept().

virtual bool ph::common::const_object_visitor::visit const object_base obj  )  [pure virtual]
 

Visit an object.

Implemented in ph::reflect::dump_object_visitor.

Referenced by ph::reflect::vector_object_helper::helper_accept(), and ph::reflect::ref_object_helper::helper_accept().

virtual bool ph::common::const_object_visitor::visit_composite const object_base obj  )  [pure virtual]
 

Visit a composite object.

Implemented in ph::reflect::dump_object_visitor.

Referenced by ph::reflect::vector_object_helper::helper_accept(), and ph::reflect::ref_object_helper::helper_accept().


The documentation for this class was generated from the following file:
Generated on Wed Apr 5 22:03:34 2006 for cppxmlobj by  doxygen 1.4.3