# LibTmux.FSharp.Query

- **Module:** LibTmux.FSharp
- **Package:** LibTmux.FSharp
- **Language:** F#
- **Kind:** class
- **Source:** https://github.com/libtmux/libtmux-dotnet/blob/cf34b255c896d19a97e7d7fabea58609c916012d/src/LibTmux.FSharp/Query.fsi#L140
- **Page:** https://libtmux.org/en/fsharp/latest/reference/libtmux-fsharp-query/

```
type Query<'T>

module Query
```

Describes a tmux listing: a scope, filters and text panes must show.

Building a query reads nothing; each run reads tmux again. tmux narrows the
listing with its own filter where it can evaluate one exactly, and every
row is then checked against the portable filters.

## Members

### Common operations

- `atMostOne` (function): Reads the sole match, or None when nothing matches; several matches raise.
- `exactlyOne` (function): Reads the sole match, or why there is not exactly one.
- `list` (function): Reads the matching objects in tmux's listing order.
- `matching` (function): Filters captured objects locally, preserving input order and multiplicity.
- `tryExactlyOne` (function): Reads the sole match, or None when there are none or several.
- `whereUnsafe` (function): Adds a raw tmux filter, which tmux evaluates and nothing rechecks.
- `showing` (function): Keeps panes whose visible rows show the searched text.
- `where` (function): Adds a portable filter every result satisfies.
