|
|
@@ -15,66 +15,6 @@
|
|
|
namespace APT {
|
|
|
namespace CacheFilter {
|
|
|
|
|
|
-#define PACKAGE_MATCHER_ABI_COMPAT 1
|
|
|
-#ifdef PACKAGE_MATCHER_ABI_COMPAT
|
|
|
-
|
|
|
-// PackageNameMatchesRegEx /*{{{*/
|
|
|
-class PackageNameMatchesRegEx {
|
|
|
- /** \brief dpointer placeholder (for later in case we need it) */
|
|
|
- void *d;
|
|
|
- regex_t* pattern;
|
|
|
-public:
|
|
|
- PackageNameMatchesRegEx(std::string const &Pattern);
|
|
|
- bool operator() (pkgCache::PkgIterator const &Pkg);
|
|
|
- bool operator() (pkgCache::GrpIterator const &Grp);
|
|
|
- ~PackageNameMatchesRegEx();
|
|
|
-};
|
|
|
- /*}}}*/
|
|
|
-// PackageNameMatchesFnmatch /*{{{*/
|
|
|
- class PackageNameMatchesFnmatch {
|
|
|
- /** \brief dpointer placeholder (for later in case we need it) */
|
|
|
- void *d;
|
|
|
- const std::string Pattern;
|
|
|
-public:
|
|
|
- PackageNameMatchesFnmatch(std::string const &Pattern)
|
|
|
- : Pattern(Pattern) {};
|
|
|
- bool operator() (pkgCache::PkgIterator const &Pkg);
|
|
|
- bool operator() (pkgCache::GrpIterator const &Grp);
|
|
|
- ~PackageNameMatchesFnmatch() {};
|
|
|
-};
|
|
|
- /*}}}*/
|
|
|
-// PackageArchitectureMatchesSpecification /*{{{*/
|
|
|
-/** \class PackageArchitectureMatchesSpecification
|
|
|
- \brief matching against architecture specification strings
|
|
|
-
|
|
|
- The strings are of the format <kernel>-<cpu> where either component,
|
|
|
- or the whole string, can be the wildcard "any" as defined in
|
|
|
- debian-policy §11.1 "Architecture specification strings".
|
|
|
-
|
|
|
- Examples: i386, mipsel, linux-any, any-amd64, any */
|
|
|
-class PackageArchitectureMatchesSpecification {
|
|
|
- std::string literal;
|
|
|
- std::string complete;
|
|
|
- bool isPattern;
|
|
|
- /** \brief dpointer placeholder (for later in case we need it) */
|
|
|
- void *d;
|
|
|
-public:
|
|
|
- /** \brief matching against architecture specification strings
|
|
|
- *
|
|
|
- * @param pattern is the architecture specification string
|
|
|
- * @param isPattern defines if the given \b pattern is a
|
|
|
- * architecture specification pattern to match others against
|
|
|
- * or if it is the fixed string and matched against patterns
|
|
|
- */
|
|
|
- PackageArchitectureMatchesSpecification(std::string const &pattern, bool const isPattern = true);
|
|
|
- bool operator() (char const * const &arch);
|
|
|
- bool operator() (pkgCache::PkgIterator const &Pkg);
|
|
|
- bool operator() (pkgCache::VerIterator const &Ver);
|
|
|
- ~PackageArchitectureMatchesSpecification();
|
|
|
-};
|
|
|
-
|
|
|
-#else
|
|
|
-
|
|
|
class PackageMatcher {
|
|
|
public:
|
|
|
virtual bool operator() (pkgCache::PkgIterator const &Pkg) { return false; };
|
|
|
@@ -138,7 +78,6 @@ public:
|
|
|
virtual bool operator() (pkgCache::VerIterator const &Ver);
|
|
|
virtual ~PackageArchitectureMatchesSpecification();
|
|
|
};
|
|
|
-#endif
|
|
|
/*}}}*/
|
|
|
}
|
|
|
}
|