pub enum Content {
}
Expand description
Represents variable typed content.
This is used for the serialization system to represent values before the actual snapshots are written and is also exposed to dynamic redaction functions.
Some enum variants are intentionally not exposed to user code.
It’s generally recommended to construct content objects by
using the From
trait and by using the
accessor methods to assert on it.
While matching on the content is possible in theory it is
recommended against. The reason for this is that the content
enum holds variants that can “wrap” values where it’s not
expected. For instance if a field holds an Option<String>
you cannot use pattern matching to extract the string as it
will be contained in an internal Some
variant that is not
exposed. On the other hand the as_str
method will
automatically resolve such internal wrappers.
If you do need to pattern match you should use the
resolve_inner
method to resolve such internal wrappers.
Variants
Bool(bool)
U8(u8)
U16(u16)
U32(u32)
U64(u64)
U128(u128)
I8(i8)
I16(i16)
I32(i32)
I64(i64)
I128(i128)
F32(f32)
F64(f64)
Char(char)
String(String)
Bytes(Vec<u8>)
Seq(Vec<Content>)
Map(Vec<(Content, Content)>)
Implementations
sourceimpl Content
impl Content
sourcepub fn resolve_inner(&self) -> &Content
pub fn resolve_inner(&self) -> &Content
This resolves the innermost content in a chain of wrapped content.
For instance if you encounter an Option<Option<String>>
field the content will be wrapped twice in an internal
option wrapper. If you need to pattern match you will
need in some situations to first resolve the inner value
before such matching can take place as there is no exposed
way to match on these wrappers.
This method does not need to be called for the as_
methods which resolve automatically.
sourcepub fn resolve_inner_mut(&mut self) -> &mut Content
pub fn resolve_inner_mut(&mut self) -> &mut Content
Mutable version of resolve_inner
.
Trait Implementations
sourceimpl PartialOrd<Content> for Content
impl PartialOrd<Content> for Content
sourcefn partial_cmp(&self, other: &Content) -> Option<Ordering>
fn partial_cmp(&self, other: &Content) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl StructuralPartialEq for Content
Auto Trait Implementations
impl RefUnwindSafe for Content
impl Send for Content
impl Sync for Content
impl Unpin for Content
impl UnwindSafe for Content
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more