virtual Condition *flatten() const { return clone(); }
virtual bool can_merge(const Condition &, const CompoundCondition &) const { return false; }
virtual Condition *merge(const std::vector<Condition *> &, const CompoundCondition &) const { return 0; }
+ virtual bool is_viable() const { return true; }
virtual void add_lines(std::list<FilterStatement> &) const = 0;
};
virtual Condition *flatten(OrCondition *, AndCondition *) const;
virtual Condition *flatten(OrCondition *, OrCondition *) const;
public:
+ virtual bool is_viable() const;
virtual void add_lines(std::list<FilterStatement> &) const;
};
virtual Condition *flatten(OrCondition *, AndCondition *) const;
virtual Condition *flatten(OrCondition *, OrCondition *) const;
public:
+ virtual bool is_viable() const;
virtual void add_lines(std::list<FilterStatement> &) const;
};