|
pianod2
multisource multiuser scriptable networked music player
|
Track filter. More...
#include <config.h>#include <cstdlib>#include <string>#include <vector>#include <memory>#include "enumeratedarray.h"#include "musictypes.h"

Go to the source code of this file.
Classes | |
| class | Filter |
| Track data filter. More... | |
| class | Filter::ParseError |
| Error for generic filter syntax/parse errors. More... | |
| class | Filter::InvalidValue |
| Error for filter expression containing an invalid value. More... | |
| class | Filter::DisallowedOperator |
| Error for filter expressions trying to use a relational operation incorrectly. More... | |
| class | Filter::Operation |
| Nodes for the filter parse tree. More... | |
| union | Filter::Operation::value_t |
| struct | Filter::Operation::value_t::rating_t |
| For ratings and user-specific operations. More... | |
| struct | Filter::Operation::value_t::string_t |
| For string operations. More... | |
| struct | Filter::Operation::value_t::subnodes_t |
| For and/or operations. More... | |
| class | PermutedFilter |
| Permuted filter, like Filter but constructed from a string. More... | |
| class | ListFilter |
| Permuted filter, like Filter but constructed from a list of strings. More... | |
Namespaces | |
| Query | |
| Filter-to-query converter. | |
Track filter.
A filter is created from an string expression, from which it builds an efficient expression tree. The filter can then be used to assess whether MusicThingies of any kind matches the expression. If the filter compares on a field that isn't present in the thingie, that comparison resolves to false.