Struct LevelFilter
pub struct LevelFilter(/* private fields */);
dep_tracing
and alloc
only.Expand description
A filter comparable to a verbosity Level
.
If a Level
is considered less than or equal to a LevelFilter
, it
should be considered enabled; if greater than the LevelFilter
, that level
is disabled. See LevelFilter::current
for more details.
Note that this is essentially identical to the Level
type, but with the
addition of an OFF
level that completely disables all trace
instrumentation.
See the documentation for the Level
type to see how Level
s
and LevelFilter
s interact.
Implementations§
§impl LevelFilter
impl LevelFilter
pub const OFF: LevelFilter
pub const OFF: LevelFilter
The “off” level.
Designates that trace instrumentation should be completely disabled.
pub const ERROR: LevelFilter
pub const ERROR: LevelFilter
The “error” level.
Designates very serious errors.
pub const WARN: LevelFilter
pub const WARN: LevelFilter
The “warn” level.
Designates hazardous situations.
pub const INFO: LevelFilter
pub const INFO: LevelFilter
The “info” level.
Designates useful information.
pub const DEBUG: LevelFilter
pub const DEBUG: LevelFilter
The “debug” level.
Designates lower priority information.
pub const TRACE: LevelFilter
pub const TRACE: LevelFilter
The “trace” level.
Designates very low priority, often extremely verbose, information.
pub const fn from_level(level: Level) -> LevelFilter
pub const fn from_level(level: Level) -> LevelFilter
Returns a LevelFilter
that enables spans and events with verbosity up
to and including level
.
pub const fn into_level(self) -> Option<Level> ⓘ
pub const fn into_level(self) -> Option<Level> ⓘ
pub fn current() -> LevelFilter
pub fn current() -> LevelFilter
Returns a LevelFilter
that matches the most verbose Level
that any
currently active Subscriber
will enable.
User code should treat this as a hint. If a given span or event has a
level higher than the returned LevelFilter
, it will not be enabled.
However, if the level is less than or equal to this value, the span or
event is not guaranteed to be enabled; the subscriber will still
filter each callsite individually.
Therefore, comparing a given span or event’s level to the returned
LevelFilter
can be used for determining if something is
disabled, but should not be used for determining if something is
enabled.
Trait Implementations§
§impl Clone for LevelFilter
impl Clone for LevelFilter
§fn clone(&self) -> LevelFilter
fn clone(&self) -> LevelFilter
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more§impl Debug for LevelFilter
impl Debug for LevelFilter
§impl Display for LevelFilter
impl Display for LevelFilter
§impl From<Level> for LevelFilter
impl From<Level> for LevelFilter
§fn from(level: Level) -> LevelFilter
fn from(level: Level) -> LevelFilter
§impl From<LevelFilter> for Option<Level>
impl From<LevelFilter> for Option<Level>
§impl From<Option<Level>> for LevelFilter
impl From<Option<Level>> for LevelFilter
§fn from(level: Option<Level>) -> LevelFilter
fn from(level: Option<Level>) -> LevelFilter
§impl FromStr for LevelFilter
impl FromStr for LevelFilter
§type Err = ParseLevelFilterError
type Err = ParseLevelFilterError
§fn from_str(from: &str) -> Result<LevelFilter, <LevelFilter as FromStr>::Err> ⓘ
fn from_str(from: &str) -> Result<LevelFilter, <LevelFilter as FromStr>::Err> ⓘ
s
to return a value of this type. Read more§impl Hash for LevelFilter
impl Hash for LevelFilter
§impl Ord for LevelFilter
impl Ord for LevelFilter
§impl PartialEq<Level> for LevelFilter
impl PartialEq<Level> for LevelFilter
§impl PartialEq<LevelFilter> for Level
impl PartialEq<LevelFilter> for Level
§impl PartialEq for LevelFilter
impl PartialEq for LevelFilter
§impl PartialOrd<Level> for LevelFilter
impl PartialOrd<Level> for LevelFilter
§impl PartialOrd<LevelFilter> for Level
impl PartialOrd<LevelFilter> for Level
§fn partial_cmp(&self, other: &LevelFilter) -> Option<Ordering> ⓘ
fn partial_cmp(&self, other: &LevelFilter) -> Option<Ordering> ⓘ
§fn lt(&self, other: &LevelFilter) -> bool
fn lt(&self, other: &LevelFilter) -> bool
§fn le(&self, other: &LevelFilter) -> bool
fn le(&self, other: &LevelFilter) -> bool
§fn gt(&self, other: &LevelFilter) -> bool
fn gt(&self, other: &LevelFilter) -> bool
§fn ge(&self, other: &LevelFilter) -> bool
fn ge(&self, other: &LevelFilter) -> bool
§impl PartialOrd for LevelFilter
impl PartialOrd for LevelFilter
§fn partial_cmp(&self, other: &LevelFilter) -> Option<Ordering> ⓘ
fn partial_cmp(&self, other: &LevelFilter) -> Option<Ordering> ⓘ
§fn lt(&self, other: &LevelFilter) -> bool
fn lt(&self, other: &LevelFilter) -> bool
§fn le(&self, other: &LevelFilter) -> bool
fn le(&self, other: &LevelFilter) -> bool
§fn gt(&self, other: &LevelFilter) -> bool
fn gt(&self, other: &LevelFilter) -> bool
§fn ge(&self, other: &LevelFilter) -> bool
fn ge(&self, other: &LevelFilter) -> bool
impl Copy for LevelFilter
impl Eq for LevelFilter
impl StructuralPartialEq for LevelFilter
Auto Trait Implementations§
impl Freeze for LevelFilter
impl RefUnwindSafe for LevelFilter
impl Send for LevelFilter
impl Sync for LevelFilter
impl Unpin for LevelFilter
impl UnwindSafe for LevelFilter
Blanket Implementations§
§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
Source§impl<T> ByteSized for T
impl<T> ByteSized for T
Source§const BYTE_ALIGN: usize = _
const BYTE_ALIGN: usize = _
Source§fn byte_align(&self) -> usize ⓘ
fn byte_align(&self) -> usize ⓘ
Source§fn ptr_size_ratio(&self) -> [usize; 2]
fn ptr_size_ratio(&self) -> [usize; 2]
Source§impl<T, R> Chain<R> for Twhere
T: ?Sized,
impl<T, R> Chain<R> for Twhere
T: ?Sized,
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key
and return true
if they are equal.Source§impl<T> ExtAny for T
impl<T> ExtAny for T
Source§fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
fn as_any_mut(&mut self) -> &mut dyn Anywhere
Self: Sized,
Source§impl<T> ExtMem for Twhere
T: ?Sized,
impl<T> ExtMem for Twhere
T: ?Sized,
Source§const NEEDS_DROP: bool = _
const NEEDS_DROP: bool = _
Source§fn mem_align_of_val(&self) -> usize ⓘ
fn mem_align_of_val(&self) -> usize ⓘ
Source§fn mem_size_of_val(&self) -> usize ⓘ
fn mem_size_of_val(&self) -> usize ⓘ
Source§fn mem_needs_drop(&self) -> bool
fn mem_needs_drop(&self) -> bool
true
if dropping values of this type matters. Read moreSource§fn mem_forget(self)where
Self: Sized,
fn mem_forget(self)where
Self: Sized,
self
without running its destructor. Read moreSource§fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
fn mem_replace(&mut self, other: Self) -> Selfwhere
Self: Sized,
Source§unsafe fn mem_zeroed<T>() -> T
unsafe fn mem_zeroed<T>() -> T
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe fn mem_transmute_copy<Src, Dst>(src: &Src) -> Dst
unsafe_layout
only.T
represented by the all-zero byte-pattern. Read moreSource§fn mem_as_bytes(&self) -> &[u8] ⓘ
fn mem_as_bytes(&self) -> &[u8] ⓘ
unsafe_slice
only.§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
Source§impl<T> Hook for T
impl<T> Hook for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§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> ⓘ
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> ⓘ
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§impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
impl<F, T> IntoSample<T> for Fwhere
T: FromSample<F>,
fn into_sample(self) -> T
§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError> ⓘ
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError> ⓘ
§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
out
indicating that a T
is niched.