Struct tracing_core::field::FieldSet
source · pub struct FieldSet {
names: &'static [&'static str],
callsite: Identifier,
}
Expand description
Describes the fields present on a span.
§Equality
In well-behaved applications, two FieldSet
s initialized with equal
callsite identifiers will have identical fields. Consequently, in release
builds, FieldSet::eq
only checks that its arguments have equal
callsites. However, the equality of field names is checked in debug builds.
Fields§
§names: &'static [&'static str]
The names of each field on the described span.
callsite: Identifier
The callsite where the described span originates.
Implementations§
source§impl FieldSet
impl FieldSet
sourcepub const fn new(names: &'static [&'static str], callsite: Identifier) -> Self
pub const fn new(names: &'static [&'static str], callsite: Identifier) -> Self
Constructs a new FieldSet
with the given array of field names and callsite.
sourcepub(crate) fn callsite(&self) -> Identifier
pub(crate) fn callsite(&self) -> Identifier
Returns an Identifier
that uniquely identifies the Callsite
which defines this set of fields..
sourcepub fn field<Q>(&self, name: &Q) -> Option<Field>
pub fn field<Q>(&self, name: &Q) -> Option<Field>
Returns the Field
named name
, or None
if no such field exists.
sourcepub fn contains(&self, field: &Field) -> bool
pub fn contains(&self, field: &Field) -> bool
Returns true
if self
contains the given field
.
Note: Iffield
shares a name with a field in thisFieldSet
, but was created by aFieldSet
with a different callsite, thisFieldSet
does not contain it. This is so that if two separate span callsites define a field named "foo", theField
corresponding to "foo" for each of those callsites are not equivalent.
Trait Implementations§
source§impl<'a> IntoIterator for &'a FieldSet
impl<'a> IntoIterator for &'a FieldSet
source§impl PartialEq for FieldSet
impl PartialEq for FieldSet
impl Eq for FieldSet
Auto Trait Implementations§
impl Freeze for FieldSet
impl !RefUnwindSafe for FieldSet
impl Send for FieldSet
impl Sync for FieldSet
impl Unpin for FieldSet
impl !UnwindSafe for FieldSet
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