libtmux Reference MCP Search
On this page

query.schema.FilterSchema

View as Markdown

Module
query.schema
Package
libtmux
Source
crates/libtmux/src/query/schema.rs
trait query.schema.FilterSchema
trait [source]
trait [source]
trait query.schema.FilterSchema

A filter target whose portable expression grammar can be described.

#[derive(libtmux::Filterable)] implements this and [ Filterable ] from the same field declaration. Implement it manually only when a handwritten [ Filterable ] target must also expose a JsonSchema for its [ FilterExpr ].

The schema closes targets, fields, operators, relations, and JSON value families. Deserialization remains authoritative for fixed-width integer bounds, regex compilation, and whole-expression complexity limits.

Examples

use libtmux::query::FilterExpr;

#[derive(libtmux::Filterable)]
#[filterable(target = "task", crate = "libtmux")]
struct Task {
    name: String,
    done: bool,
}

let schema = schemars::schema_for!(FilterExpr<Task>);
assert!(schema.as_object().is_some());

0 declared, 0 inherited

Esc

Type to search.