pub struct SupervisionGate { /* private fields */ }Expand description
The AdmissionGate that consults out-of-process supervisors.
Implementations§
Source§impl SupervisionGate
impl SupervisionGate
pub fn new(registry: Arc<SupervisionRegistry>) -> Self
Trait Implementations§
Source§impl AdmissionGate for SupervisionGate
impl AdmissionGate for SupervisionGate
Source§fn name(&self) -> &str
fn name(&self) -> &str
Short stable identifier (e.g.
"information_flow", "concurrency")
recorded on the audit event so a denial is attributable to a gate.Source§fn check<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
proposal: &'life1 ActionProposal,
ctx: &'life2 GateContext<'life3>,
) -> Pin<Box<dyn Future<Output = GateOutcome> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
fn check<'life0, 'life1, 'life2, 'life3, 'async_trait>(
&'life0 self,
proposal: &'life1 ActionProposal,
ctx: &'life2 GateContext<'life3>,
) -> Pin<Box<dyn Future<Output = GateOutcome> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
'life3: 'async_trait,
Inspect a proposal and return a verdict. Must not mutate shared
state — admission runs before the execution snapshot is taken.
Auto Trait Implementations§
impl !RefUnwindSafe for SupervisionGate
impl !UnwindSafe for SupervisionGate
impl Freeze for SupervisionGate
impl Send for SupervisionGate
impl Sync for SupervisionGate
impl Unpin for SupervisionGate
impl UnsafeUnpin for SupervisionGate
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
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
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
impl<T> ErasedDestructor for Twhere
T: 'static,
Source§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
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 more