mirror of
https://github.com/Sneed-Group/Poodletooth-iLand
synced 2024-12-26 05:02:31 -06:00
45 lines
1.4 KiB
C++
45 lines
1.4 KiB
C++
// 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
|