pub enum MaskMode {
Omit,
Stub,
}Expand description
Controls how hidden nodes are rendered when a NodeMask is used in
GraphDb::node_info_masked, GraphDb::node_edges_masked, and
GraphDb::neighborhood_masked.
The default is MaskMode::Omit, which preserves byte-identical behaviour
with all pre-existing masked paths. MaskMode::Stub is an explicit
opt-in that discloses node existence — suitable only for full-token
client masks. Role-token paths are hard-coded to Omit.
Existence-disclosure warning: Stub mode intentionally tells the caller
whether a node exists, even if its contents are hidden. Only use this on
client-mask (full-token) paths where the caller already has that knowledge
implicitly.
Variants§
Omit
Hidden nodes are silently omitted from every result — behaviour is byte-identical to the pre-existing masked-query paths. This is the default.
Stub
Hidden nodes’ existence is acknowledged via a restricted stub:
{"key": "<key>", "restricted": true}. No label, props, or other
fields are included in the stub.
Trait Implementations§
impl Copy for MaskMode
impl Eq for MaskMode
impl StructuralPartialEq for MaskMode
Auto Trait Implementations§
impl Freeze for MaskMode
impl RefUnwindSafe for MaskMode
impl Send for MaskMode
impl Sync for MaskMode
impl Unpin for MaskMode
impl UnsafeUnpin for MaskMode
impl UnwindSafe for MaskMode
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
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§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>
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
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out indicating that a T is niched.