Go to the documentation of this file.00001
00025 #include <predicate_manager/prop_and.h>
00026
00027
00028
00029 using namespace predicate_manager;
00030 using namespace std;
00031
00032
00033
00034 bool
00035 And::
00036 evaluate ( boost::function<bool ( NameID ) > f ) const
00037 {
00038 bool v = true;
00039 foreach ( children_type::value_type c, children_ )
00040 v = v && c->evaluate ( f );
00041
00042 return v;
00043 }
00044
00045
00046
00047 boost::shared_ptr<PropLogic>
00048 And::
00049 clone() const
00050 {
00051 boost::shared_ptr<And> p ( new And ( *this ) );
00052 return ( boost::dynamic_pointer_cast<PropLogic> ( p ) );
00053 }