X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftool.h;h=22fc3b28568293ea3a6b8bdb51faafc0d43da474;hb=dceec8d95c63aaf4d8d4b367c9846caf9e32a6bf;hp=1736e1c74f0f40207ebbc66f391bebbc7d59aba9;hpb=338eefb513953ae55e8e3614c009c242ba8ad74e;p=builder.git diff --git a/source/tool.h b/source/tool.h index 1736e1c..22fc3b2 100644 --- a/source/tool.h +++ b/source/tool.h @@ -12,17 +12,23 @@ class Task; class Tool { +public: + typedef std::list SuffixList; + protected: Builder &builder; std::string tag; - std::list input_suffixes; + SuffixList input_suffixes; + SuffixList aux_suffixes; Tool(Builder &, const std::string &); - public: + virtual ~Tool() { } + const std::string &get_tag() const { return tag; } - const std::list &get_input_suffixes() const { return input_suffixes; } - bool accepts_suffix(const std::string &) const; + const SuffixList &get_input_suffixes() const { return input_suffixes; } + const SuffixList &get_auxiliary_suffixes() const { return aux_suffixes; } + bool accepts_suffix(const std::string &, bool = false) const; virtual Target *create_source(const Component &, const Msp::FS::Path &) const { return 0; } Target *create_target(Target &, const std::string & = std::string()) const;