Expand description
The OR dimension of filtering: --or-filter / --or-grep grouped by
--or-group. A record passes the OR clause when every non-empty group
has at least one matching condition (OR within a group, AND across
groups). Required --filter/--grep are unchanged and AND’d on top.
Each OR-filter compiles to a single-spec CompiledFilter and each OR-grep
to a single-pattern GrepPredicate, so the existing field/regex machinery
(including case policy and records-mode evaluation) is reused verbatim.
Structs§
- OrGroups
- The compiled OR dimension. Empty (
is_active() == false) means “no OR constraint”: bothmatches_*return true viaallover an empty list. - OrSpec
Raw - Raw, ungrouped OR-conditions collected from argv or config, before compilation. Groups are kept in first-seen order.
Constants§
- DEFAULT_
GROUP - Name of the implicit group that holds OR-conditions given without an
explicit
--or-group.
Functions§
- extract_
from_ argv - Walk an already-
expand_argv’d argv and collect OR-conditions grouped by the most recent--or-groupmarker (default group before any marker). Handles--flag valueand--flag=value. Does not strip tokens — clap still parses them for--helpand error reporting; this is the source of truth for grouping because clap’sVeccollection drops ordering.