| 123456789101112131415161718192021222324252627282930313233343536373839404142434445 |
- // Filename: ppFilenamePattern.h
- // Created by: drose (25Sep00)
- //
- ////////////////////////////////////////////////////////////////////
- #ifndef PPFILENAMEPATTERN_H
- #define PPFILENAMEPATTERN_H
- #include "ppremake.h"
- ///////////////////////////////////////////////////////////////////
- // Class : PPFilenamePattern
- // Description : This is a string that represents a filename, or a
- // family of filenames, using the make convention that a
- // wildcard sign (PATTERN_WILDCARD, typically '%') in
- // the filename represents any sequence of characters.
- ////////////////////////////////////////////////////////////////////
- class PPFilenamePattern {
- public:
- PPFilenamePattern(const string &pattern);
- PPFilenamePattern(const PPFilenamePattern ©);
- void operator = (const PPFilenamePattern ©);
- bool has_wildcard() const;
- string get_pattern() const;
- const string &get_prefix() const;
- const string &get_suffix() const;
- bool matches(const string &filename) const;
- string extract_body(const string &filename) const;
- string transform(const string &filename,
- const PPFilenamePattern &transform_from) const;
- private:
- bool _has_wildcard;
- string _prefix;
- string _suffix;
- };
- inline ostream &
- operator << (ostream &out, const PPFilenamePattern &pattern) {
- return out << pattern.get_pattern();
- }
- #endif
|