X-Git-Url: http://git.tdb.fi/?p=poefilter.git;a=blobdiff_plain;f=source%2Fcondition.h;h=53f2a8a8268be8e0248f76d41a1032b8a89516b7;hp=59976aad096b19781895060bdd94dc806741cf58;hb=1805b8e549e6b5c0a53b2f735b8f2eb725f40b2e;hpb=fc27eb63c05d915d606e17992ecd5b7f68478101 diff --git a/source/condition.h b/source/condition.h index 59976aa..53f2a8a 100644 --- a/source/condition.h +++ b/source/condition.h @@ -3,6 +3,7 @@ #include #include +#include #include #include "rarity.h" @@ -19,14 +20,14 @@ public: virtual Condition *clone() const = 0; virtual bool can_merge(const Condition &, const CompoundCondition &) const { return false; } virtual void add_lines(std::list &) const = 0; - virtual void add_merged_lines(const std::list &, const CompoundCondition &, std::list &) const { } + virtual void add_merged_lines(const std::vector &, const CompoundCondition &, std::list &) const { } }; class CompoundCondition: public Condition { protected: - std::list conditions; + std::vector conditions; public: virtual ~CompoundCondition(); @@ -42,7 +43,7 @@ public: class AndCondition: public CompoundCondition { public: - virtual Condition *clone() const; + virtual AndCondition *clone() const; virtual void add_lines(std::list &) const; }; @@ -50,7 +51,7 @@ public: class OrCondition: public CompoundCondition { public: - virtual Condition *clone() const; + virtual OrCondition *clone() const; virtual void add_lines(std::list &) const; }; @@ -69,7 +70,7 @@ private: public: LinkedColorsCondition(const Colors &); - virtual Condition *clone() const; + virtual LinkedColorsCondition *clone() const; virtual void add_lines(std::list &) const; };