libzypp: Functors for building compex queries.

libzypp 17.38.5

Functors for building compex queries.
Filters and Functors

Some logical functors to build more complex queries:

Some logical functors to build more complex queries:

- True and False. No supprise, they always return `true` or `false`.
- Not<TCondition>. TCondition is a functor, and its result is inverted.
- Chain<TACondition,TBCondition>. `TACondition` and `TBCondition` are functors, and Chain evaluates TACondition && TBCondition.

As it's no fun to get and write the correct template arguments, convenience functions creating the correct functor are provided.

- `true_c` and `false_c`. (provided just to match the schema)
- `not_c`. Takes a functor as argument and returns the appropriate Not functor.
- `chain`. Takes two functors and returns the appropriate Cain functor.

struct Print; // functor printing elements
struct Count; // functor counting number of elements
std::for_each( c.begin(), c.end(),
chain( Print(), Count() ) );
zypp::functor::chain
Chain< TACondition, TBCondition > chain(TACondition conda_r, TBCondition condb_r)
Convenience function for creating a Chain from two conditions conda_r and condb_r.
Definition Functional.h:185