pub struct PayloadIndex {
pub field: String,
pub kind: PayloadIndexKind,
pub bitmaps: PayloadIndexBitmaps,
}Expand description
Bitmap index for a single payload field.
Fields§
§field: StringThe field name this index covers.
kind: PayloadIndexKindIndex kind.
bitmaps: PayloadIndexBitmapsvalue → set of node ids. Storage layout depends on kind.
Implementations§
Source§impl PayloadIndex
impl PayloadIndex
Sourcepub fn new(field: impl Into<String>, kind: PayloadIndexKind) -> Self
pub fn new(field: impl Into<String>, kind: PayloadIndexKind) -> Self
Create a new empty index for field.
Sourcepub fn insert(&mut self, node_id: u32, value: &Value)
pub fn insert(&mut self, node_id: u32, value: &Value)
Record that node_id has value for this field.
Sourcepub fn delete(&mut self, node_id: u32, value: &Value)
pub fn delete(&mut self, node_id: u32, value: &Value)
Remove node_id from the bitmap for value.
Sourcepub fn equality(&self, value: &Value) -> Option<&RoaringBitmap>
pub fn equality(&self, value: &Value) -> Option<&RoaringBitmap>
Return the bitmap of node ids with field = value, or None if the
value has never been inserted (empty set).
Sourcepub fn range(
&self,
low: Option<&Value>,
low_inclusive: bool,
high: Option<&Value>,
high_inclusive: bool,
) -> Option<RoaringBitmap>
pub fn range( &self, low: Option<&Value>, low_inclusive: bool, high: Option<&Value>, high_inclusive: bool, ) -> Option<RoaringBitmap>
Return the union bitmap of all entries whose key falls in
[low, high] (with low_inclusive / high_inclusive controlling
strictness). None bounds mean “open on that side”. Returns
None when this index is not a Range index — the caller falls
back to a full post-filter scan.
Trait Implementations§
Source§impl Clone for PayloadIndex
impl Clone for PayloadIndex
Source§fn clone(&self) -> PayloadIndex
fn clone(&self) -> PayloadIndex
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 PayloadIndex
impl Debug for PayloadIndex
Auto Trait Implementations§
impl Freeze for PayloadIndex
impl RefUnwindSafe for PayloadIndex
impl Send for PayloadIndex
impl Sync for PayloadIndex
impl Unpin for PayloadIndex
impl UnsafeUnpin for PayloadIndex
impl UnwindSafe for PayloadIndex
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<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> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.