-/* $Id$
-
-This file is part of builder
-Copyright © 2006-2009 Mikko Rasa, Mikkosoft Productions
-Distributed under the LGPL
-*/
-
#ifndef CONFIG_H_
#define CONFIG_H_
typedef std::map<std::string, Option> OptionMap;
private:
- class Loader: public Msp::DataFile::Loader
+ class Loader: public Msp::DataFile::ObjectLoader<Config>
{
- private:
- Config &conf;
-
public:
Loader(Config &);
private:
SourcePackage &package;
OptionMap options;
Msp::Time::TimeStamp mtime;
- bool freeze_mtime;
+ bool changed;
public:
Config(SourcePackage &);
/** Checks whether an option exists. */
bool is_option(const std::string &) const;
- /** Selects the last profile used. If the profile cache file is not
- present, the default profile is assumed. */
- void select_last_profile();
-
- /** Selects a profile. The profile cache file is updated, unless doing a
- dry run. */
- void select_profile(const std::string &);
-
/** Processes options from the given raw option map. Nonexistent options
are ignored. If any options were changed, the mtime of the configuration is
updated to the current time. Return value indicates whether any options
void save() const;
private:
bool set_option(const std::string &, const std::string &);
+public:
void load();
};