pub struct BoxEntry(/* private fields */);Expand description
A heap-allocated Entry wrapper that uses dynamic dispatch.
While somewhat slower than a statically-dispatched entries, an crate::EntrySink of boxed
entries can be heterogeneous rather than requiring all entries to be the same type. This is
especially useful for “global” background queues that will consume entries from many
different components.
Implementations§
Trait Implementations§
Source§impl Entry for BoxEntry
impl Entry for BoxEntry
Source§fn write<'a>(&'a self, writer: &mut impl EntryWriter<'a>)
fn write<'a>(&'a self, writer: &mut impl EntryWriter<'a>)
Write the metric values contained in this entry to the format-provided
EntryWriter. The writer corresponds
to an atomic entry written to the metrics consumer, like CloudWatch.Source§fn sample_group(
&self,
) -> impl Iterator<Item = (Cow<'static, str>, Cow<'static, str>)>
fn sample_group( &self, ) -> impl Iterator<Item = (Cow<'static, str>, Cow<'static, str>)>
The key used to group “similar” entries when sampling. Defaults to the empty group. Read more
Source§fn merge<E>(self, other: E) -> Merged<Self, E>where
Self: Sized,
fn merge<E>(self, other: E) -> Merged<Self, E>where
Self: Sized,
Create a new entry that writes all the contents of this entry and then all of the contents of
other. Read moreSource§fn merge_by_ref<'a, E>(&'a self, other: &'a E) -> MergedRef<'a, Self, E>where
E: 'a + Entry,
fn merge_by_ref<'a, E>(&'a self, other: &'a E) -> MergedRef<'a, Self, E>where
E: 'a + Entry,
Like
Entry::merge, but does so by reference.Auto Trait Implementations§
impl !RefUnwindSafe for BoxEntry
impl !Sync for BoxEntry
impl !UnwindSafe for BoxEntry
impl Freeze for BoxEntry
impl Send for BoxEntry
impl Unpin for BoxEntry
impl UnsafeUnpin for BoxEntry
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
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<V, F> ValueFormatter<&V> for F
impl<V, F> ValueFormatter<&V> for F
Source§fn format_value(writer: impl ValueWriter, value: &&V)
fn format_value(writer: impl ValueWriter, value: &&V)
Write
value to writerSource§impl<V, F> ValueFormatter<Arc<V>> for F
impl<V, F> ValueFormatter<Arc<V>> for F
Source§fn format_value(writer: impl ValueWriter, value: &Arc<V>)
fn format_value(writer: impl ValueWriter, value: &Arc<V>)
Write
value to writerSource§impl<V, F> ValueFormatter<Box<V>> for F
impl<V, F> ValueFormatter<Box<V>> for F
Source§fn format_value(writer: impl ValueWriter, value: &Box<V>)
fn format_value(writer: impl ValueWriter, value: &Box<V>)
Write
value to writerSource§impl<V, F> ValueFormatter<Cow<'_, V>> for F
impl<V, F> ValueFormatter<Cow<'_, V>> for F
Source§fn format_value(writer: impl ValueWriter, value: &Cow<'_, V>)
fn format_value(writer: impl ValueWriter, value: &Cow<'_, V>)
Write
value to writerSource§impl<V, F> ValueFormatter<Option<V>> for Fwhere
F: ValueFormatter<V> + ?Sized,
impl<V, F> ValueFormatter<Option<V>> for Fwhere
F: ValueFormatter<V> + ?Sized,
Source§fn format_value(writer: impl ValueWriter, value: &Option<V>)
fn format_value(writer: impl ValueWriter, value: &Option<V>)
Write
value to writer