X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fconfig.h;h=1f7fa712839f5b5bdc346681e3a346c117aafba4;hb=HEAD;hp=355108fb2c35bcd26f5c012c107dc4d587703212;hpb=74266a6e650f019063cdcd1c9a7bd26d8f99041b;p=builder.git diff --git a/source/config.h b/source/config.h deleted file mode 100644 index 355108f..0000000 --- a/source/config.h +++ /dev/null @@ -1,56 +0,0 @@ -#ifndef CONFIG_H_ -#define CONFIG_H_ - -#include -#include -#include -#include -#include - -typedef std::map RawOptionMap; - -/** -Manages configuration for a package. A configuration may have an arbitary -amount of options, as well as a modification time (mtime). -*/ -class Config -{ -public: - /** - A single configuration option. - */ - struct Option - { - std::string name; - std::string defv; - std::string descr; - std::string value; - - Option(const std::string &, const std::string &, const std::string &); - }; - typedef std::map OptionMap; - - void add_option(const std::string &, const std::string &, const std::string &); - const Option &get_option(const std::string &) const; - const OptionMap &get_options() const { return options; } - const Msp::Time::TimeStamp &get_mtime() const { return mtime; } - bool is_option(const std::string &) const; - bool process(const RawOptionMap &); - void load(const Msp::Path::Path &); - void save(const Msp::Path::Path &) const; -private: - class Loader: public Msp::Parser::Loader - { - public: - Loader(Config &); - private: - Config &conf; - - void option(const std::string &, const std::string &); - }; - - OptionMap options; - Msp::Time::TimeStamp mtime; -}; - -#endif