pub struct SearchRequest {
pub spools: Vec<SpoolRef>,
pub text: String,
pub mode: i32,
pub page: Option<PageRequest>,
pub budget: Option<ReadBudget>,
pub domains: Vec<i32>,
pub threads: Vec<ThreadRef>,
pub annotations: Option<AnnotationQuery>,
pub source_scope: Option<SourceScope>,
}Fields§
§spools: Vec<SpoolRef>Empty discovers authorized Spools, or uses the Spools of selected Threads.
text: StringLiteral search text. A structured annotation query can omit text; an empty unfiltered query is invalid. User text never supplies an authorization scope.
mode: i32§page: Option<PageRequest>§budget: Option<ReadBudget>§domains: Vec<i32>Empty selects all supported domains, or CONTEXT when annotations is present. An explicit unsupported domain or mode is rejected, never silently ignored.
threads: Vec<ThreadRef>Exact Thread identities, intersected with spools when both are supplied. Empty searches all authorized Threads in the selected Spools.
annotations: Option<AnnotationQuery>The same typed predicates used by ObserveCollaboration. Presence selects context revisions only; selecting other domains with this filter is invalid. Predicates apply to each current revision, not a union of concurrent tags.
source_scope: Option<SourceScope>Applies only to SOURCE_CONTENT and SOURCE_SYMBOL. Omission or UNSPECIFIED means CURRENT. An explicit scope requires at least one of those domains; other selected domains retain their own semantics (in particular, REVISION still resolves accepted historical identifiers). Scope, visibility and index readiness are evaluated before pagination; cursors are bound to this selection. Neither scope grants source access.
Implementations§
Source§impl SearchRequest
impl SearchRequest
Sourcepub fn mode(&self) -> Mode
pub fn mode(&self) -> Mode
Returns the enum value of mode, or the default if the field is set to an invalid enum value.
Sourcepub fn domains(
&self,
) -> FilterMap<Cloned<Iter<'_, i32>>, fn(i32) -> Option<SearchDomain>> ⓘ
pub fn domains( &self, ) -> FilterMap<Cloned<Iter<'_, i32>>, fn(i32) -> Option<SearchDomain>> ⓘ
Returns an iterator which yields the valid enum values contained in domains.
Sourcepub fn push_domains(&mut self, value: SearchDomain)
pub fn push_domains(&mut self, value: SearchDomain)
Appends the provided enum value to domains.
Trait Implementations§
Source§impl Clone for SearchRequest
impl Clone for SearchRequest
Source§fn clone(&self) -> SearchRequest
fn clone(&self) -> SearchRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for SearchRequest
impl Debug for SearchRequest
Source§impl Default for SearchRequest
impl Default for SearchRequest
Source§fn default() -> SearchRequest
fn default() -> SearchRequest
Source§impl Message for SearchRequest
impl Message for SearchRequest
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl PartialEq for SearchRequest
impl PartialEq for SearchRequest
impl StructuralPartialEq for SearchRequest
Auto Trait Implementations§
impl Freeze for SearchRequest
impl RefUnwindSafe for SearchRequest
impl Send for SearchRequest
impl Sync for SearchRequest
impl Unpin for SearchRequest
impl UnsafeUnpin for SearchRequest
impl UnwindSafe for SearchRequest
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more