FBB::Glob(3bobcat)
NAME
FBB::Glob - Wrapper around glob(3) to find files matching a pattern
SYNOPSIS
#include <bobcat/glob>
Linking option: -lbobcat
DESCRIPTION
The FBB::Glob class is a wrapper around the C function glob(3). It
returns a list of files matching a certain pattern provided to
FBB::Glob's constructors or members.
NAMESPACE
FBB
All constructors, members, operators and manipulators, mentioned in
this man-page, are defined in the namespace FBB.
INHERITS FROM
ENUMERATIONS
Flags:
o ERR: Return on read errors;
o MARK: Append a slash to each name.
o NOSORT: Don't sort the names.
o NOESCAPE: Backslashes don't quote metacharacters.
o PERIOD: Leading .-characters can be matched by metachars.
Dots:
- o FIRST: Filenames starting with a dot will be listed first.
- Within this set and in the leftover-set the relative ordering is maintained.
- o DEFAULT: Return filenames as they appear in the globbing
- process.
CONSTRUCTORS
- o Glob(std::string const &pattern = "*", int flags = PERIOD, Dots
- dots = FIRST):
This constructor (which can also be used as the default constructor) determines all elements in the current directory. The . and .. relative filenames are not part of the listings. Used as default constructor, other directory elements starting with a period will be the first elements in the series of detected directory elements. - This constructor throws an Errno exception if it did not properly complete it tasks.
- Multiple flags may be specified, separated by the bitor operator.
- This constructor properly completes its task if only defined Flag values were specified and if the glob(3) function returned without errors.
- Glob offers copy and move constructors.
OVERLOADED OPERATORS
- o Glob &operator=(Glob const &other):
- The assignment operator is available.
- o Glob &operator=(Glob const &&tmp):
- The move-assignment operator is available.
- o char const *operator[](size_t idx) const:
- The element at index position idx is returns as a C string. It returns an empty string if idx is or exceeds size().
MEMBER FUNCTIONS
- o void verify() const:
- Obsoleted, will be removed in a future Bobcat release.
- o size_t size() const:
- Returns the number of elements that were detected.
- o char const *const *begin() const:
- Returns a pointer to the first element that was detected. This pointer can be used in generic algorithms as an output-iterator supporting pointer arithmetic.
- o char const *const *end() const:
- Returns a pointer beyond the last element that was detected. This pointer can be used in generic algorithms as an output-iterator supporting pointer arithmetic.
- o void swap(Glob &other):
- Swaps the contents of the other object with the current object.
EXAMPLES
- int main(int argc, char **argv)
{ - if (argc == 1)
{cout << "Provide glob-expression as 1st arg\n";
return 1; - }
- cout << "General:\n";
- Glob general;
- for (size_t idx = 0; idx < general.size(); idx++)
cout << idx << ": " << general[idx] << endl;
- cout << "Pattern: " << argv[1] << "\n";
- Glob pattern(argv[1], Glob::PERIOD, Glob::DEFAULT);
- for (size_t idx = 0; idx < pattern.size(); idx++)
cout << idx << ": " << pattern[idx] << endl;
- return 0;
- }
FILES
bobcat/glob - defines the class interface
SEE ALSO
bobcat(7), stat(3bobcat), glob(3)
BUGS
No Reported Bugs.
DISTRIBUTION FILES
o bobcat_2.08.01-x.dsc: detached signature;
o bobcat_2.08.01-x.tar.gz: source archive;
o bobcat_2.08.01-x_i386.changes: change log;
- o libbobcat1_2.08.01-x_*.deb: debian package holding the
- libraries;
- o libbobcat1-dev_2.08.01-x_*.deb: debian package holding the
- libraries, headers and manual pages;
- o http://sourceforge.net/projects/bobcat: public archive location;
BOBCAT
Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.
COPYRIGHT
This is free software, distributed under the terms of the GNU General
Public License (GPL).
AUTHOR
- Frank B. Brokken (f.b.brokken@rug.nl).