pub enum ContextEffect {
Enforced {
mechanism: String,
},
Advisory {
recorded_in: String,
},
Unsupported {
reason: String,
},
}Expand description
How strongly the backend applied the context.
Variants§
Enforced
Backend actively constrains operations based on the context. SQL backends with session vars, KV/object stores with key prefix scoping, document stores with filter prefixes all land here.
Advisory
Context is recorded (audit, tx metadata, span) but not used to constrain operations. Useful for observability without breaking existing deployments where the operator hasn’t configured per-tenant collections / databases.
Unsupported
Backend can’t carry the context. Surfaces in metrics so the operator sees their actual RLS posture rather than assuming universal enforcement.
Implementations§
Source§impl ContextEffect
impl ContextEffect
pub fn is_enforced(&self) -> bool
pub fn is_unsupported(&self) -> bool
Trait Implementations§
Source§impl Clone for ContextEffect
impl Clone for ContextEffect
Source§fn clone(&self) -> ContextEffect
fn clone(&self) -> ContextEffect
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 ContextEffect
impl Debug for ContextEffect
impl Eq for ContextEffect
Source§impl PartialEq for ContextEffect
impl PartialEq for ContextEffect
Source§fn eq(&self, other: &ContextEffect) -> bool
fn eq(&self, other: &ContextEffect) -> bool
Tests for
self and other values to be equal, and is used by ==.impl StructuralPartialEq for ContextEffect
Auto Trait Implementations§
impl Freeze for ContextEffect
impl RefUnwindSafe for ContextEffect
impl Send for ContextEffect
impl Sync for ContextEffect
impl Unpin for ContextEffect
impl UnsafeUnpin for ContextEffect
impl UnwindSafe for ContextEffect
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
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<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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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::RequestCreates a shared type from an unshared type.