ClientFilter
ClientFilter matches materialized Client values without tmux I/O. Its zero value matches every non-nil candidate. Criteria are ANDed; AnyOf adds an OR requirement and Not excludes. Field and relation criteria correspond to Client.Name, Client.ReadOnly, Client.AttachedSession, Client.AttachedWindow, and Client.AttachedPane. ClientFilter.Validate and methods that consume the filter reject invalid criteria with ErrInvalidFilter.
Source and package
- Qualified name
-
tmux.Client Filter - Package
- tmux
- Distribution
- github.com/libtmux/libtmux-go/tmux
- Source
- tmux/filter_generated.go
Fields10#
| Name | Type | Description |
|---|---|---|
| AnyOf | []Client | AnyOf additionally requires at least one branch to match after ordinary criteria match. A nil slice leaves AnyOf unset; a non-nil empty slice is invalid. |
| Name | *Client | Name exactly matches the stable tmux client name from Client.Name. A nil pointer leaves Name unset; a non-nil pointer applies it, including when it points to the zero value. |
| NameContains | *string | NameContains requires the stable tmux client name from Client.Name to contain the pointed-to substring. A nil pointer leaves NameContains unset; a non-nil pointer applies it, and an empty string matches every available string. |
| NameIn | []Client | NameIn lists accepted values for the stable tmux client name from Client.Name. A candidate matches when its materialized value equals one listed value. A nil slice leaves NameIn unset; a non-nil empty slice is invalid. |
| NameRegex | string | NameRegex requires the stable tmux client name from Client.Name to match Go regular expression syntax. An empty string leaves NameRegex unset. |
| Not | *Client | Not excludes a candidate when its nested filter matches. A nil pointer leaves Not unset. |
| Pane | *Pane | Pane traverses the materialized attachment returned by Client.AttachedPane. A nil pointer leaves the relation criterion unset. |
| ReadOnly | *bool | ReadOnly exactly matches the materialized read-only state from Client.ReadOnly. A nil pointer leaves ReadOnly unset; a non-nil pointer applies it, including when it points to the zero value. |
| Session | *Session | Session traverses the materialized attachment returned by Client.AttachedSession. A nil pointer leaves the relation criterion unset. |
| Window | *Window | Window traverses the materialized attachment returned by Client.AttachedWindow. A nil pointer leaves the relation criterion unset. |
Members4#
- MarshalJSON method MarshalJSON validates and encodes the client filter; failures wrap
ErrInvalidFilter. - Predicate method Predicate validates the client filter and returns a local predicate for
Clientvalues materialized by aSnapshot; it never runs tmux. It traverses only loaded relations and returns false for a nil candidate. - UnmarshalJSON method UnmarshalJSON clears the receiver, strictly decodes a client filter, then validates it. Unknown or duplicate fields, trailing data, and semantic failures wrap
ErrInvalidFilter; the receiver may retain decoded state on error. - Validate method Validate checks structure, regular expressions, and contradictory criteria; failures wrap
ErrInvalidFilter.
Guides#
Pages that discuss ClientFilter.