6 #include "libbuilder_api.h"
9 Stores a filename pattern. A pattern consists of a prefix and a suffix, and
10 can be applied to a body to form a complete filename. Either or both of the
11 prefix and suffix may be empty.
13 class LIBBUILDER_API Pattern
20 /** Constructs a pattern from a single string. The string must have exactly
21 one percent sign (%) to separate the prefix and suffix. */
22 Pattern(const std::string &);
24 const std::string &get_prefix() const { return prefix; }
25 const std::string &get_suffix() const { return suffix; }
27 /** Applies the pattern to a body string. */
28 std::string apply(const std::string &) const;
30 /** Applies a list of patterns to the same body. */
31 static std::vector<std::string> apply_list(const std::vector<Pattern> &, const std::string &);