pub struct ManagedInspectQueue<V> { /* private fields */ }
Expand description

A queue that wraps an inspect node and attaches all inserted values to the node.

This class can either be explicitly given an inspect node through ManagedInspectQueue::with_node or can create its own inspect node when included in a struct that derives Inspect or when [ManagedInspectQueue::with_inspect] is called. ManagedInspectQueue will only keep the last [size_limit] items.

Implementations§

source§

impl<V> ManagedInspectQueue<V>
where for<'a> &'a mut V: Inspect, V: Debug + Default,

source

pub fn new(size_limit: usize) -> Self

Creates a new ManagedInspectQueue with a default node. This gives the parent the option to call with_inspect itself instead of passing a node into with_node.

source

pub fn with_node(node: Node, size_limit: usize) -> Self

Creates a new ManagedInspectQueue that attaches inserted values to the given node. A size limit of 0 indicates an unlimited length.

source

pub fn iter_mut(&mut self) -> IterMut<'_, V>

Returns a mutable iterator for the underlying queue.

source

pub fn items_mut(&mut self) -> &mut VecDeque<V>

Returns a mutable reference to the underlying queue. Items should be inserted with this reference.

source

pub fn retain<F>(&mut self, f: F)
where F: FnMut(&V) -> bool,

Filters the queue by the condition function [f].

source

pub fn inspect_node(&self) -> &Node

Returns a reference to the ManagedInspectQueue’s node.

source

pub fn push(&mut self, key: &str, item: V)

Inserts the given value into the queue and attaches it to the inspect tree. If the new size of the queue is over capacity, the oldest value is removed.

Trait Implementations§

source§

impl<V: Default> Default for ManagedInspectQueue<V>

source§

fn default() -> ManagedInspectQueue<V>

Returns the “default value” for a type. Read more
source§

impl<V> Inspect for &mut ManagedInspectQueue<V>
where for<'a> &'a mut V: Inspect,

source§

fn iattach( self, parent: &Node, name: impl AsRef<str> ) -> Result<(), AttachError>

Attaches self to the inspect tree, under parent[name]. Note that: Read more

Auto Trait Implementations§

§

impl<V> Freeze for ManagedInspectQueue<V>

§

impl<V> !RefUnwindSafe for ManagedInspectQueue<V>

§

impl<V> Send for ManagedInspectQueue<V>
where V: Send,

§

impl<V> Sync for ManagedInspectQueue<V>
where V: Sync,

§

impl<V> Unpin for ManagedInspectQueue<V>
where V: Unpin,

§

impl<V> !UnwindSafe for ManagedInspectQueue<V>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> Encode<Ambiguous1> for T

source§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl<T> Encode<Ambiguous2> for T

source§

unsafe fn encode( self, _encoder: &mut Encoder<'_>, _offset: usize, _depth: Depth ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<T> WithInspect for T
where &'a mut T: for<'a> Inspect,

source§

fn with_inspect( self, parent: &Node, name: impl AsRef<str> ) -> Result<T, AttachError>

Attaches self to the inspect tree. It is recommended to invoke this as part of construction. For example: Read more
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more