1 #ifndef _ConditionAll_h_ 2 #define _ConditionAll_h_ 3 4 #include "Condition.h" 5 6 /** this namespace holds Condition and its subclasses; these classes 7 * represent predicates about UniverseObjects used by, for instance, the 8 * Effect system. */ 9 namespace Condition { 10 11 /** Matches all objects. */ 12 struct FO_COMMON_API All final : public Condition { 13 All(); 14 15 bool operator==(const Condition& rhs) const override; 16 void Eval(const ScriptingContext& parent_context, ObjectSet& matches, 17 ObjectSet& non_matches, SearchDomain search_domain = NON_MATCHES) const override; 18 std::string Description(bool negated = false) const override; 19 std::string Dump(unsigned short ntabs = 0) const override; SetTopLevelContentfinal20 void SetTopLevelContent(const std::string& content_name) override 21 {} 22 unsigned int GetCheckSum() const override; 23 24 private: 25 friend class boost::serialization::access; 26 template <typename Archive> 27 void serialize(Archive& ar, const unsigned int version); 28 }; 29 30 } // namespace Condition 31 32 #endif // _ConditionAll_h_ 33