pub struct SourceIngressEdge<'src, OutP, S, const OUT: usize>{ /* private fields */ }Expand description
Borrowing adapter that exposes a source’s ingress pressure as an Edge.
This is used by the graph/builder to wire a synthetic “monitor edge” whose
occupancy is returned by Source::ingress_occupancy(). It rejects all push
and pop operations (no buffering); only occupancy() is meaningful.
This form is zero-allocation and suitable for no_std/single-threaded runs.
Implementations§
Trait Implementations§
Source§impl<'src, OutP, S, const OUT: usize> Edge for SourceIngressEdge<'src, OutP, S, OUT>
impl<'src, OutP, S, const OUT: usize> Edge for SourceIngressEdge<'src, OutP, S, OUT>
Source§fn try_push<H: HeaderStore>(
&mut self,
_token: MessageToken,
_policy: &EdgePolicy,
_headers: &H,
) -> EnqueueResult
fn try_push<H: HeaderStore>( &mut self, _token: MessageToken, _policy: &EdgePolicy, _headers: &H, ) -> EnqueueResult
Attempt to push a token onto the queue using the given edge policy. Read more
Source§fn try_pop<H: HeaderStore>(
&mut self,
_headers: &H,
) -> Result<MessageToken, QueueError>
fn try_pop<H: HeaderStore>( &mut self, _headers: &H, ) -> Result<MessageToken, QueueError>
Attempt to pop the front token from the queue. Read more
Source§fn try_peek(&self) -> Result<MessageToken, QueueError>
fn try_peek(&self) -> Result<MessageToken, QueueError>
Peek at the front token without removing it.
Source§fn try_peek_at(&self, _index: usize) -> Result<MessageToken, QueueError>
fn try_peek_at(&self, _index: usize) -> Result<MessageToken, QueueError>
Peek at the token at logical position
index from the front. Read moreSource§fn occupancy(&self, _policy: &EdgePolicy) -> EdgeOccupancy
fn occupancy(&self, _policy: &EdgePolicy) -> EdgeOccupancy
Return a snapshot of occupancy used for telemetry and admission. Read more
Source§fn try_pop_batch<H: HeaderStore>(
&mut self,
_policy: &BatchingPolicy,
_headers: &H,
) -> Result<BatchView<'_, MessageToken>, QueueError>
fn try_pop_batch<H: HeaderStore>( &mut self, _policy: &BatchingPolicy, _headers: &H, ) -> Result<BatchView<'_, MessageToken>, QueueError>
Pop a batch of tokens according to the provided batching policy. Read more
Source§fn peek_header<'h, H: HeaderStore>(
&self,
headers: &'h H,
) -> Result<<H as HeaderStore>::HeaderGuard<'h>, QueueError>
fn peek_header<'h, H: HeaderStore>( &self, headers: &'h H, ) -> Result<<H as HeaderStore>::HeaderGuard<'h>, QueueError>
Peek the front message header via
HeaderStore (convenience). Read moreSource§fn get_admission_decision<H: HeaderStore>(
&self,
policy: &EdgePolicy,
token: MessageToken,
headers: &H,
) -> AdmissionDecision
fn get_admission_decision<H: HeaderStore>( &self, policy: &EdgePolicy, token: MessageToken, headers: &H, ) -> AdmissionDecision
Return an
AdmissionDecision for the given token according to
policy and the current occupancy snapshot. Read moreSource§fn get_admission_decision_from_message<P: Payload>(
&self,
policy: &EdgePolicy,
message: &Message<P>,
) -> AdmissionDecision
fn get_admission_decision_from_message<P: Payload>( &self, policy: &EdgePolicy, message: &Message<P>, ) -> AdmissionDecision
Return an
AdmissionDecision for the given token according to
policy and the current occupancy snapshot. Read moreAuto Trait Implementations§
impl<'src, OutP, S, const OUT: usize> Freeze for SourceIngressEdge<'src, OutP, S, OUT>where
S: ?Sized,
impl<'src, OutP, S, const OUT: usize> RefUnwindSafe for SourceIngressEdge<'src, OutP, S, OUT>
impl<'src, OutP, S, const OUT: usize> Send for SourceIngressEdge<'src, OutP, S, OUT>
impl<'src, OutP, S, const OUT: usize> Sync for SourceIngressEdge<'src, OutP, S, OUT>
impl<'src, OutP, S, const OUT: usize> Unpin for SourceIngressEdge<'src, OutP, S, OUT>
impl<'src, OutP, S, const OUT: usize> UnsafeUnpin for SourceIngressEdge<'src, OutP, S, OUT>where
S: ?Sized,
impl<'src, OutP, S, const OUT: usize> UnwindSafe for SourceIngressEdge<'src, OutP, S, OUT>
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