#include <Expression.h>
Inheritance diagram for Tagcoll::FilterItemsByExpression< ITEM, TAG >:


Public Types | |
| enum | MatchType { PLAIN, INVERTED } |
Public Member Functions | |
| FilterItemsByExpression (const Expression &expression) | |
| FilterItemsByExpression (const std::string &expression) | |
| FilterItemsByExpression (Consumer< ITEM, TAG > &cons, const Expression &expression) | |
| FilterItemsByExpression (Consumer< ITEM, TAG > &cons, const std::string &expression) | |
| virtual | ~FilterItemsByExpression () |
| void | setExpression (const Expression &expression) |
| Set the expression to use for this filter. | |
| void | setExpression (const std::string &expression) |
| Set the expression to use for this filter. | |
| void | setMatchType (MatchType type) |
| Set the type of match. | |
| int | countMatched () const |
| Return the number of items that matched the expression. | |
Protected Member Functions | |
| bool | match (const OpSet< TAG > &tags) const |
| virtual void | consumeItemUntagged (const ITEM &item) |
| Process an untagged item. | |
| virtual void | consumeItem (const ITEM &item, const OpSet< TAG > &tags) |
| Process a tagged item, with its tags. | |
| virtual void | consumeItemsUntagged (const OpSet< ITEM > &items) |
| Process a set of items, all with no tags. | |
| virtual void | consumeItems (const OpSet< ITEM > &items, const OpSet< TAG > &tags) |
| Process a set of items identically tagged, with their tags. | |
Protected Attributes | |
| Expression | expr |
| MatchType | matchType |
| int | matched |
| enum Tagcoll::FilterItemsByExpression::MatchType |
| Tagcoll::FilterItemsByExpression< ITEM, TAG >::FilterItemsByExpression | ( | const Expression & | expression | ) | [inline] |
| Tagcoll::FilterItemsByExpression< ITEM, TAG >::FilterItemsByExpression | ( | const std::string & | expression | ) | [inline] |
| Tagcoll::FilterItemsByExpression< ITEM, TAG >::FilterItemsByExpression | ( | Consumer< ITEM, TAG > & | cons, | |
| const Expression & | expression | |||
| ) | [inline] |
| Tagcoll::FilterItemsByExpression< ITEM, TAG >::FilterItemsByExpression | ( | Consumer< ITEM, TAG > & | cons, | |
| const std::string & | expression | |||
| ) | [inline] |
| virtual Tagcoll::FilterItemsByExpression< ITEM, TAG >::~FilterItemsByExpression | ( | ) | [inline, virtual] |
| bool Tagcoll::FilterItemsByExpression< ITEM, TAG >::match | ( | const OpSet< TAG > & | tags | ) | const [inline, protected] |
| virtual void Tagcoll::FilterItemsByExpression< ITEM, TAG >::consumeItemUntagged | ( | const ITEM & | item | ) | [inline, protected, virtual] |
| virtual void Tagcoll::FilterItemsByExpression< ITEM, TAG >::consumeItem | ( | const ITEM & | item, | |
| const OpSet< TAG > & | tags | |||
| ) | [inline, protected, virtual] |
| virtual void Tagcoll::FilterItemsByExpression< ITEM, TAG >::consumeItemsUntagged | ( | const OpSet< ITEM > & | items | ) | [inline, protected, virtual] |
| virtual void Tagcoll::FilterItemsByExpression< ITEM, TAG >::consumeItems | ( | const OpSet< ITEM > & | items, | |
| const OpSet< TAG > & | tags | |||
| ) | [inline, protected, virtual] |
Process a set of items identically tagged, with their tags.
Reimplemented from Tagcoll::Consumer< ITEM, TAG >.
| void Tagcoll::FilterItemsByExpression< ITEM, TAG >::setExpression | ( | const Expression & | expression | ) | [inline] |
Set the expression to use for this filter.
| expression | The expression to use for matching |
| void Tagcoll::FilterItemsByExpression< ITEM, TAG >::setExpression | ( | const std::string & | expression | ) | [inline] |
Set the expression to use for this filter.
| expression | The expression to use for matching |
| void Tagcoll::FilterItemsByExpression< ITEM, TAG >::setMatchType | ( | MatchType | type | ) | [inline] |
Set the type of match.
| type | PLAIN: only keep the items that match the expression INVERTED: only keep the items that do not match the expression |
| int Tagcoll::FilterItemsByExpression< ITEM, TAG >::countMatched | ( | ) | const [inline] |
Return the number of items that matched the expression.
It returns the number of items that did not match if INVERTED match is used.
Expression Tagcoll::FilterItemsByExpression< ITEM, TAG >::expr [protected] |
MatchType Tagcoll::FilterItemsByExpression< ITEM, TAG >::matchType [protected] |
int Tagcoll::FilterItemsByExpression< ITEM, TAG >::matched [protected] |
1.5.1