libzypp
11.13.5
|
String matching (STRING|SUBSTRING|GLOB|REGEX). More...
#include <StrMatcher.h>
Classes | |
class | Impl |
StrMatcher implementation. More... |
Public Types | |
typedef MatchException | Exception |
Public Member Functions | |
StrMatcher () | |
Default ctor matches nothing. | |
StrMatcher (const std::string &search_r) | |
Ctor from string matches in Match::STRING mode per default. | |
StrMatcher (const std::string &search_r, const Match &flags_r) | |
Ctor taking string and Match flags. | |
StrMatcher (const std::string &search_r, const Match::Mode &flags_r) | |
Ctor taking string and Match::Mode. | |
StrMatcher (const std::string &search_r, int flags_r) | |
Low level interface wraps flags into Match. | |
template<class _Tp > | |
bool | operator() (const _Tp &string_r) const |
Return whether string matches. | |
bool | operator() (const char *string_r) const |
const std::string & | searchstring () const |
The current searchstring. | |
void | setSearchstring (const std::string &string_r) |
Set a new searchstring. | |
void | setSearchstring (const std::string &string_r, const Match &flags_r) |
Set a new searchstring and flags. | |
const Match & | flags () const |
The current search flags. | |
void | setFlags (const Match &flags_r) |
Set new search flags. | |
void | compile () const |
Compile the pattern e.g. | |
bool | isCompiled () const |
Whether the StrMatcher is already compiled. | |
bool | doMatch (const char *string_r) const |
Return whether string matches. |
Private Member Functions | |
friend | base::SafeBool () const |
bool | boolTest () const |
![]() | |
operator bool_type () const | |
~SafeBool () |
Private Attributes | |
RWCOW_pointer< Impl > | _pimpl |
Pointer to implementation. |
Friends | |
std::ostream & | operator<< (std::ostream &str, const StrMatcher &obj) |
Related Functions | |
(Note that these are not member functions.) | |
std::ostream & | operator<< (std::ostream &str, const StrMatcher &obj) |
bool | operator== (const StrMatcher &lhs, const StrMatcher &rhs) |
bool | operator!= (const StrMatcher &lhs, const StrMatcher &rhs) |
bool | operator< (const StrMatcher &lhs, const StrMatcher &rhs) |
String matching (STRING|SUBSTRING|GLOB|REGEX).
Used by e.g. PoolQuery and LookupAttr for queries, but it can also be used for matching arbitrary strings.
Those flags are always set: REG_EXTENDED | REG_NOSUB | REG_NEWLINE
Definition at line 302 of file StrMatcher.h.
Definition at line 307 of file StrMatcher.h.
zypp::StrMatcher::StrMatcher | ( | ) |
Default ctor matches nothing.
Definition at line 259 of file StrMatcher.cc.
zypp::StrMatcher::StrMatcher | ( | const std::string & | search_r | ) |
Ctor from string matches in Match::STRING mode per default.
Definition at line 263 of file StrMatcher.cc.
zypp::StrMatcher::StrMatcher | ( | const std::string & | search_r, |
const Match & | flags_r | ||
) |
Ctor taking string and Match flags.
Definition at line 267 of file StrMatcher.cc.
zypp::StrMatcher::StrMatcher | ( | const std::string & | search_r, |
const Match::Mode & | flags_r | ||
) |
Ctor taking string and Match::Mode.
Needed because we want them to be treated as Match, and not as int as the compiler woud do.
Definition at line 271 of file StrMatcher.cc.
zypp::StrMatcher::StrMatcher | ( | const std::string & | search_r, |
int | flags_r | ||
) |
Low level interface wraps flags into Match.
Definition at line 275 of file StrMatcher.cc.
|
inline |
Return whether string matches.
You can use it with any class that impements c_str
. (std::string
, Pathname, IdString, ...). NULL
never matches.
Definition at line 344 of file StrMatcher.h.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 347 of file StrMatcher.h.
const std::string & zypp::StrMatcher::searchstring | ( | ) | const |
The current searchstring.
Definition at line 288 of file StrMatcher.cc.
void zypp::StrMatcher::setSearchstring | ( | const std::string & | string_r | ) |
Set a new searchstring.
Definition at line 291 of file StrMatcher.cc.
void zypp::StrMatcher::setSearchstring | ( | const std::string & | string_r, |
const Match & | flags_r | ||
) |
Set a new searchstring and flags.
Definition at line 294 of file StrMatcher.cc.
const Match & zypp::StrMatcher::flags | ( | ) | const |
The current search flags.
Definition at line 300 of file StrMatcher.cc.
void zypp::StrMatcher::setFlags | ( | const Match & | flags_r | ) |
Set new search flags.
Definition at line 303 of file StrMatcher.cc.
void zypp::StrMatcher::compile | ( | ) | const |
Compile the pattern e.g.
in case of REGEX
.
MatchUnknownModeException | If the Match flag more than one mode bit set. |
MatchInvalidRegexException | If Match::REGEX is set and searchstring is not a valid regular expression. |
Definition at line 279 of file StrMatcher.cc.
bool zypp::StrMatcher::isCompiled | ( | ) | const |
Whether the StrMatcher is already compiled.
Definition at line 282 of file StrMatcher.cc.
bool zypp::StrMatcher::doMatch | ( | const char * | string_r | ) | const |
Return whether string matches.
Compiles the StrMatcher if this was not yet done.
MatchException | Any of the exceptions thrown by StrMatcher::compile. |
Definition at line 285 of file StrMatcher.cc.
|
private |
|
inlineprivate |
Definition at line 386 of file StrMatcher.h.
|
friend |
Definition at line 306 of file StrMatcher.cc.
|
related |
Stream output
Definition at line 306 of file StrMatcher.cc.
|
related |
Definition at line 309 of file StrMatcher.cc.
|
related |
Definition at line 401 of file StrMatcher.h.
|
related |
Arbitrary order for std::container.
Definition at line 315 of file StrMatcher.cc.
|
private |
Pointer to implementation.
Definition at line 391 of file StrMatcher.h.