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

ph::common::visitable_object_base Class Reference

#include <visitable_object.hpp>

Inheritance diagram for ph::common::visitable_object_base:

reflect_test::base reflect_test::c_base reflect_test::bar reflect_test::foo reflect_test::root reflect_test::c_ref reflect_test::c_vector

Detailed Description

Abstract class representing the interface for an object to be visited.

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

Definition at line 136 of file visitable_object.hpp.

Public Member Functions

virtual ~visitable_object_base ()
virtual bool accept (object_name_visitor *v) const =0
 Visit the name and type of the object (only).
virtual bool accept (member_visitor *v)=0
virtual bool accept (const_member_visitor *v) const =0
virtual bool accept (object_visitor *v)=0
virtual bool accept (const_object_visitor *v) const =0


Constructor & Destructor Documentation

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

Definition at line 144 of file visitable_object.hpp.


Member Function Documentation

virtual bool ph::common::visitable_object_base::accept object_name_visitor v  )  const [pure virtual]
 

Visit the name and type of the object (only).

Referenced by ph::common::get_visitable_obj_member().

virtual bool ph::common::visitable_object_base::accept member_visitor v  )  [pure virtual]
 

Visit each of the members in the object.

Implemented in reflect_test::bar, reflect_test::base, reflect_test::c_base, reflect_test::c_ref, reflect_test::c_vector, reflect_test::foo, and reflect_test::root.

virtual bool ph::common::visitable_object_base::accept const_member_visitor v  )  const [pure virtual]
 

Visit each of the members in the object. But they won't be modified.

Implemented in reflect_test::bar, reflect_test::base, reflect_test::c_base, reflect_test::c_ref, reflect_test::c_vector, reflect_test::foo, and reflect_test::root.

virtual bool ph::common::visitable_object_base::accept object_visitor v  )  [pure virtual]
 

Visit each of the objects within this object.

Implemented in reflect_test::bar, reflect_test::base, reflect_test::c_base, reflect_test::c_ref, reflect_test::c_vector, reflect_test::foo, and reflect_test::root.

virtual bool ph::common::visitable_object_base::accept const_object_visitor v  )  const [pure virtual]
 

Visit each of the objects within this object. But they won't be modified.

Implemented in reflect_test::bar, reflect_test::base, reflect_test::c_base, reflect_test::c_ref, reflect_test::c_vector, reflect_test::foo, and reflect_test::root.


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