X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcondition.h;h=2f3a5ef9888a67a0f978f0944eb956d5261620b9;hb=c679a9dd1a97ae3b1ffa568143d42d02c2ca9e74;hp=f518aea0829a0a4164be613fc0b6c84cfdedf7dc;hpb=445edbc3c42bbd7880cc414cf153ddfd196bfc1c;p=builder.git diff --git a/source/condition.h b/source/condition.h index f518aea..2f3a5ef 100644 --- a/source/condition.h +++ b/source/condition.h @@ -1,17 +1,24 @@ +/* $Id$ + +This file is part of builder +Copyright © 2006-2007 Mikko Rasa, Mikkosoft Productions +Distributed under the LGPL +*/ + #ifndef CONDITION_H_ #define CONDITION_H_ -#include +#include #include "buildinfo.h" #include "misc.h" -#include "packageref.h" class Config; +class SourcePackage; class Condition { public: - class Loader: public Msp::Parser::Loader + class Loader: public Msp::DataFile::Loader { public: Loader(Condition &); @@ -22,15 +29,14 @@ public: void build_info(); }; - Condition(Package &, const std::string &); - const PkgRefList &get_requires() const { return requires; } + Condition(SourcePackage &, const std::string &); + const StringList &get_requires() const { return requires; } const BuildInfo &get_build_info() const { return build_info; } - void resolve_refs(); bool eval(); private: - Package &pkg; + SourcePackage &pkg; StringMap expression; - PkgRefList requires; + StringList requires; BuildInfo build_info; }; typedef std::list ConditionList;