Enum BytesKind

Source
#[non_exhaustive]
pub enum BytesKind { Stream, Value, PlainValue, }
Expand description

The kind of bytes to log

The main distinction is between bytes as “values” (like checksums) or bytes as “streams” (like user input)

This changes the default formatting, although different Drain implementations can handle this information differently.

Variants (Non-exhaustive)§

This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
§

Stream

Format the bytes as a “stream”

By default, this prints as hex bytes prefixed with 0x (but without underscores).

Drain implementations are encouraged to switch to more efficient formats like base64 (or direct binary).

§

Value

Format the bytes as a “value”

By default, this prints as uppercase hex prefixed with 0x, implicitly separated by underscores

For example, sha1("foo") would format as 0xF1D2_D2F9_24E9_86AC_86FD_F7B3_6C94_BCDF_32BE_EC15 Notice the leading 0x and the underscores.

If this leading 0x and underscores are not desired, consider BytesKind::PlainValue

§

PlainValue

Format the bytes as a “plain” value.

This is very similar to BytesKind::Value, however by default it avoids underscores and a leading 0x.

For example, sha1("foo") would format as F1D2D2F924E986AC86FDF7B36C94BCDF32BEEC15 Notice the lack of leading 0x and the lack of underscores.

Trait Implementations§

Source§

impl Clone for BytesKind

Source§

fn clone(&self) -> BytesKind

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for BytesKind

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for BytesKind

Source§

fn default() -> BytesKind

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

impl Copy for BytesKind

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

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.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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> SendSyncUnwindSafe for T
where T: Send + Sync + UnwindSafe + ?Sized,