# query.QueryIteratorExt

- **Module:** query
- **Package:** libtmux
- **Language:** Rust
- **Kind:** trait
- **Source:** https://github.com/libtmux/libtmux-rs/blob/f0e37052c232636b61d095817046e6bfc8f2ca40/crates/libtmux/src/query.rs#L504
- **Page:** https://libtmux.org/en/rs/latest/reference/query-queryiteratorext/

Cardinality and named-predicate operations for native iterators.

[`Self::matching`] borrows candidates from a borrowed iterator;
[`Self::matching_owned`] moves each selected item from its iterator.
Cardinality methods preserve the iterator's item type in either case.

## Example

```rust
use libtmux::query::QueryIteratorExt;

let values = [1, 2, 3];
assert_eq!(values.iter().exactly_one(), Err(libtmux::query::ExactlyOneError::MultipleItems));
```
