/usr/include/bobcat/glob is in libbobcat-dev 4.08.02-2build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 | #ifndef INCLUDED_BOBCAT_GLOB_
#define INCLUDED_BOBCAT_GLOB_
#include <string>
#include <glob.h>
#include <bobcat/gs>
namespace FBB
{
class Glob: public GS__
{
struct GlobShare;
GlobShare *d_share;
public:
enum Flags
{
NO_FLAG = 0, // to avoid having to use 0
// These flags are equal to the ones used in <glob.h>
ERR = 1 << 0, // Return on read errors.
MARK = 1 << 1, // Append a slash to each name.
NOSORT = 1 << 2, // Don't sort the names.
NOESCAPE = 1 << 6, // Backslashes don't quote metacharacters.
PERIOD = 1 << 7, // Leading `.' can be matched by metachars.
NOMATCH = 1 << 8, // No matches are OK (size() returns 0)
mask = (1 << 9) - 1 // all of the above flags
};
enum Dots
{
FIRST,
DEFAULT
};
Glob(std::string const &pattern = "*", int flags = PERIOD, // 1
Dots dots = FIRST);
Glob(Type type, std::string const &pattern = "*", // 2
int flags = PERIOD, Dots dots = FIRST);
Glob(Glob &&tmp); // 3
Glob(Glob const &other); // 4
~Glob();
Glob &operator=(Glob const &other);
Glob &operator=(Glob &&tmp);
size_t size() const;
char const *operator[](size_t idx) const;
char const *const *begin() const;
char const *const *end() const;
void verify() const; // no-op
void swap(Glob &other);
private:
char const **mbegin() const; // .f
char const **mend() const; // .f
void accept(Type type);
static bool isDot(char const *cp);
};
} // FBB
#endif
|