X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcondition.h;h=0cdc2bb482723e756dd94abcc32e94f9367045a3;hb=894c4bd9d58df50c38c7a656cf085c48581439ef;hp=954adeece62cffe4d45578f4a060c87d78775ce0;hpb=43bd25ffcb0b4f7882773f4676b209a99cb73c04;p=builder.git diff --git a/source/condition.h b/source/condition.h index 954adee..0cdc2bb 100644 --- a/source/condition.h +++ b/source/condition.h @@ -3,7 +3,6 @@ #include #include "buildinfo.h" -#include "misc.h" class Config; class SourcePackage; @@ -11,11 +10,8 @@ class SourcePackage; class Condition { public: - class Loader: public Msp::DataFile::Loader + class Loader: public Msp::DataFile::ObjectLoader { - private: - Condition &cond; - public: Loader(Condition &); private: @@ -23,18 +19,21 @@ public: void build_info(); }; + typedef std::list RequireList; + private: + typedef std::map Expression; + SourcePackage &pkg; - StringMap expression; - StringList requires; + Expression expression; + RequireList requires; BuildInfo build_info; public: Condition(SourcePackage &, const std::string &); - const StringList &get_requires() const { return requires; } + const RequireList &get_requires() const { return requires; } const BuildInfo &get_build_info() const { return build_info; } bool eval(); }; -typedef std::list ConditionList; #endif