CASM
1.1.0
A Clusters Approach to Statistical Mechanics
|
#include <FunctionVisitor.hh>
Defines visitor pattern for abstract Function objects. FunctionVisitor has virtual methods for each type of derived Function object, which by default do nothing. Classes that derive from FunctionVisitor implement specific visitation behavior by overloading the virtual visit() methods, as needed. An abstract FunctionVisitor object operates on a Function tree by being passed to the Function::accept(FunctionVisitor*) method of the root of the tree.
Definition at line 34 of file FunctionVisitor.hh.
Public Member Functions | |
virtual | ~FunctionVisitor () |
virtual std::string | type_name () const =0 |
virtual bool | visit (Variable const &host, BasisSet const *bset_ptr) const |
virtual bool | visit (Variable &host, BasisSet const *bset_ptr) const |
virtual bool | visit (OccupantFunction const &host, BasisSet const *bset_ptr) const |
virtual bool | visit (OccupantFunction &host, BasisSet const *bset_ptr) const |
virtual bool | visit (PolynomialFunction const &host, BasisSet const *bset_ptr) const |
virtual bool | visit (PolynomialFunction &host, BasisSet const *bset_ptr) const |
Private Member Functions | |
virtual bool | _generic_visit (Function &host, BasisSet const *bset_ptr) const |
virtual bool | _generic_visit (Function const &host, BasisSet const *bset_ptr) const |
virtual bool | _visit (const Array< Function * > &host_list, BasisSet const *bset_ptr) const |
|
inlinevirtual |
Definition at line 36 of file FunctionVisitor.hh.
|
privatevirtual |
Reimplemented in CASM::SubExpressionLabeler.
Definition at line 55 of file FunctionVisitor.cc.
|
privatevirtual |
Reimplemented in CASM::SubExpressionLabeler, and CASM::OccFuncEvaluator.
Definition at line 61 of file FunctionVisitor.cc.
|
inlineprivatevirtual |
Definition at line 60 of file FunctionVisitor.hh.
|
pure virtual |
|
virtual |
Reimplemented in CASM::OccFuncEvaluator, CASM::OccFuncBasisIndexer, and CASM::OccFuncLabeler.
Definition at line 40 of file FunctionVisitor.cc.
|
virtual |
Reimplemented in CASM::OccFuncEvaluator.
Definition at line 35 of file FunctionVisitor.cc.
|
virtual |
Definition at line 50 of file FunctionVisitor.cc.
|
virtual |
Definition at line 45 of file FunctionVisitor.cc.
Reimplemented in CASM::VariableLabeler.
Definition at line 31 of file FunctionVisitor.cc.
|
virtual |
Definition at line 26 of file FunctionVisitor.cc.