const Config::InputOptions *options;
public:
- Loader(SourcePackage &);
- Loader(SourcePackage &, const Config::InputOptions &);
+ Loader(SourcePackage &, const Config::InputOptions *);
private:
- void init(const Config::InputOptions *);
void finish() override;
+
void feature(const std::string &, const std::string &);
template<typename C>
void component(const std::string &);
- template<typename C, typename A, A>
- void component_arg(const std::string &);
+ template<typename C, typename A>
+ void component_arg(A, const std::string &);
void build_info();
void generate(const std::string &);
void interface_version(const std::string &);
void version(const std::string &);
};
- typedef std::list<Component *> ComponentList;
-
private:
- typedef std::list<Feature> FeatureList;
-
std::string version;
std::string interface_version;
std::string description;
FileTarget *build_file;
Msp::FS::Path source_dir;
- const BuildType *build_type;
+ const BuildType *build_type = 0;
Toolchain local_tools;
- FeatureList features;
+ std::vector<Feature> features;
BuildInfo build_info;
- ComponentList components;
+ std::vector<Component *> components;
SourceArchiveComponent *source_archive;
Config config;
mutable Cache cache;