merge with debian/sid
[ntk/apt.git] / apt-pkg / cachefilter.h
1 // -*- mode: cpp; mode: fold -*-
2 // Description /*{{{*/
3 /** \file cachefilter.h
4 Collection of functor classes */
5 /*}}}*/
6 #ifndef APT_CACHEFILTER_H
7 #define APT_CACHEFILTER_H
8 // Include Files /*{{{*/
9 #include <apt-pkg/pkgcache.h>
10
11 #include <string>
12
13 #include <regex.h>
14 /*}}}*/
15 namespace APT {
16 namespace CacheFilter {
17 // PackageNameMatchesRegEx /*{{{*/
18 class PackageNameMatchesRegEx {
19 /** \brief dpointer placeholder (for later in case we need it) */
20 void *d;
21 regex_t* pattern;
22 public:
23 PackageNameMatchesRegEx(std::string const &Pattern);
24 bool operator() (pkgCache::PkgIterator const &Pkg);
25 bool operator() (pkgCache::GrpIterator const &Grp);
26 ~PackageNameMatchesRegEx();
27 };
28 /*}}}*/
29 }
30 }
31 #endif