pub enum ViewportSelector {
Center(String),
Rids(Vec<String>),
LabelEquals(String),
}Expand description
How Red UI picks the starting set of nodes for a viewport. Exactly one variant per request.
Variants§
Center(String)
Expand outwards from a single named node id.
Rids(Vec<String>)
Seed the viewport with a specific RID list. Carries all requested ids verbatim — the contract guarantees no silent chunking on the way in, even when the list is large. This is the replacement for the frontend’s old RID-IN chunking workaround.
LabelEquals(String)
Seed the viewport with every node whose label / type matches the filter. Empty string = match-all (UI uses this for the initial “show me the whole collection, capped” load).
Implementations§
Source§impl ViewportSelector
impl ViewportSelector
Sourcepub fn seed_count(&self) -> usize
pub fn seed_count(&self) -> usize
Number of explicit seed ids the selector carries. For
LabelEquals and Center this is the obvious 1 / 0; for
Rids it is the full input cardinality (the contract never
drops ids on the way in).
Trait Implementations§
Source§impl Clone for ViewportSelector
impl Clone for ViewportSelector
Source§fn clone(&self) -> ViewportSelector
fn clone(&self) -> ViewportSelector
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ViewportSelector
impl Debug for ViewportSelector
impl Eq for ViewportSelector
Source§impl PartialEq for ViewportSelector
impl PartialEq for ViewportSelector
impl StructuralPartialEq for ViewportSelector
Auto Trait Implementations§
impl Freeze for ViewportSelector
impl RefUnwindSafe for ViewportSelector
impl Send for ViewportSelector
impl Sync for ViewportSelector
impl Unpin for ViewportSelector
impl UnsafeUnpin for ViewportSelector
impl UnwindSafe for ViewportSelector
Blanket Implementations§
Source§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
Source§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.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>
Converts
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>
Converts
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 moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request