Go to the documentation of this file.
7 #ifndef BALL_KERNEL_EXPRESSIONTREE_H
8 #define BALL_KERNEL_EXPRESSIONTREE_H
10 #ifndef BALL_KERNEL_EXPRESSIONPREDICATE_H
91 virtual bool operator () (
const Atom& atom)
const;
155 void dump(std::ostream& is = std::cout,
Size depth = 0)
const;
186 #endif // BALL_KERNEL_EXPRESSIONTREE_H
ExpressionTree(Type type, list< const ExpressionTree * > children, bool negate=false)
virtual ~ExpressionTree()
ExpressionPredicate * getPredicate() const
void appendChild(const ExpressionTree *child)
BALL_EXPORT bool operator!=(const String &s1, const String &s2)
ExpressionTree(ExpressionPredicate *predicate, bool negate=false)
const list< const ExpressionTree * > & getChildren() const
void setPredicate(ExpressionPredicate *predicate)
bool compareChildren_(const ExpressionTree &tree) const
ExpressionTree(const ExpressionTree &tree)
ExpressionPredicate * predicate_
@ OR
The node is a logical OR conjunction.
BALL_EXPORT bool operator==(const String &s1, const String &s2)
@ LEAF
The node is a leaf.
void dump(std::ostream &is=std::cout, Size depth=0) const
void setNegate(bool negate)
#define BALL_CREATE(name)
list< const ExpressionTree * > children_