pub struct QueryOptions<'a> {
pub limit: Option<usize>,
pub cursor: Option<&'a str>,
pub provider: Option<&'a dyn EmbeddingProvider>,
pub in_memory: bool,
pub bare: bool,
pub unknown_names: Option<UnknownNames>,
pub vocabulary: Option<&'a VocabularyCache>,
pub now_ms: Option<i64>,
}Expand description
query’s options.
Fields§
§limit: Option<usize>The page cap (default 50).
cursor: Option<&'a str>Resume after a truncated page’s cursor.
provider: Option<&'a dyn EmbeddingProvider>The provider behind semantic(...); None → semantic_unavailable
when the query names a phrase.
in_memory: boolForce the pure in-memory engine (skip the tier-3 pushdown planner). The default plans; the differential gate runs both and compares.
bare: boolbare: true (§1.4, 4.2): every hit is its projection only — the
automatic id/path envelope members are stripped when the result is
shaped, AFTER paging and distinct (identity is kept internally: the
keyset cursor and the dedup key read the envelope). Needs a select
(without a projection a hit is only its envelope) and is refused with
values (already the bare-values form); a projected id/path is the
row’s intrinsic, kept as any projected key is.
unknown_names: Option<UnknownNames>What a tier-3 name on an open kind does (spec/surface §1.5, 4.6; a
tier-3 name on links is filter_invalid either way): Hint records
it in hints and runs the query — the default of the source entry
(query, every read); Refuse fails with filter_invalid before
any row is read — the default of the AST entry (query_ast), whose
caller is the write selector compiler, where a name no row carries
would select every row. None takes the entry’s default.
vocabulary: Option<&'a VocabularyCache>The vocabulary cache of the store (§1.5 “Caching”), kept by the
Surface beside its store; None judges with a cache of the run’s own.
now_ms: Option<i64>The instant the named points of date() resolve against
(spec/surface §1.3, 4.8): the host clock, UTC, in milliseconds —
the Surface passes the clock it stamps commits with (pinned by
OMGBASE_SPEC_CLOCK); None reads the wall clock. One instant per
run: the fold and the context share it.