Struct ncryptf::serde::json::serde_json::value::Serializer
source · pub struct Serializer;
json
only.Expand description
Serializer whose output is a Value
.
This is the serializer that backs serde_json::to_value
.
Unlike the main serde_json serializer which goes from some serializable
value of type T
to JSON text, this one goes from T
to
serde_json::Value
.
The to_value
function is implementable as:
use serde::Serialize;
use serde_json::{Error, Value};
pub fn to_value<T>(input: T) -> Result<Value, Error>
where
T: Serialize,
{
input.serialize(serde_json::value::Serializer)
}
Trait Implementations§
source§impl Serializer for Serializer
impl Serializer for Serializer
§type Ok = Value
type Ok = Value
Serializer
during successful
serialization. Most serializers that produce text or binary output
should set Ok = ()
and serialize into an io::Write
or buffer
contained within the Serializer
instance. Serializers that build
in-memory data structures may be simplified by using Ok
to propagate
the data structure around.§type SerializeSeq = SerializeVec
type SerializeSeq = SerializeVec
serialize_seq
for serializing the content of the
sequence.§type SerializeTuple = SerializeVec
type SerializeTuple = SerializeVec
serialize_tuple
for serializing the content of
the tuple.§type SerializeTupleStruct = SerializeVec
type SerializeTupleStruct = SerializeVec
serialize_tuple_struct
for serializing the
content of the tuple struct.§type SerializeTupleVariant = SerializeTupleVariant
type SerializeTupleVariant = SerializeTupleVariant
serialize_tuple_variant
for serializing the
content of the tuple variant.§type SerializeMap = SerializeMap
type SerializeMap = SerializeMap
serialize_map
for serializing the content of the
map.§type SerializeStruct = SerializeMap
type SerializeStruct = SerializeMap
serialize_struct
for serializing the content of
the struct.§type SerializeStructVariant = SerializeStructVariant
type SerializeStructVariant = SerializeStructVariant
serialize_struct_variant
for serializing the
content of the struct variant.source§fn serialize_bool(self, value: bool) -> Result<Value, Error>
fn serialize_bool(self, value: bool) -> Result<Value, Error>
bool
value. Read moresource§fn serialize_i128(self, value: i128) -> Result<Value, Error>
fn serialize_i128(self, value: i128) -> Result<Value, Error>
i128
value. Read moresource§fn serialize_u128(self, value: u128) -> Result<Value, Error>
fn serialize_u128(self, value: u128) -> Result<Value, Error>
u128
value. Read moresource§fn serialize_bytes(self, value: &[u8]) -> Result<Value, Error>
fn serialize_bytes(self, value: &[u8]) -> Result<Value, Error>
source§fn serialize_unit_variant(
self,
_name: &'static str,
_variant_index: u32,
variant: &'static str
) -> Result<Value, Error>
fn serialize_unit_variant( self, _name: &'static str, _variant_index: u32, variant: &'static str ) -> Result<Value, Error>
source§fn serialize_newtype_struct<T>(
self,
_name: &'static str,
value: &T
) -> Result<Value, Error>
fn serialize_newtype_struct<T>( self, _name: &'static str, value: &T ) -> Result<Value, Error>
struct Millimeters(u8)
. Read moresource§fn serialize_newtype_variant<T>(
self,
_name: &'static str,
_variant_index: u32,
variant: &'static str,
value: &T
) -> Result<Value, Error>
fn serialize_newtype_variant<T>( self, _name: &'static str, _variant_index: u32, variant: &'static str, value: &T ) -> Result<Value, Error>
source§fn serialize_seq(
self,
len: Option<usize>
) -> Result<<Serializer as Serializer>::SerializeSeq, Error>
fn serialize_seq( self, len: Option<usize> ) -> Result<<Serializer as Serializer>::SerializeSeq, Error>
serialize_element
, then a call to
end
. Read moresource§fn serialize_tuple(
self,
len: usize
) -> Result<<Serializer as Serializer>::SerializeTuple, Error>
fn serialize_tuple( self, len: usize ) -> Result<<Serializer as Serializer>::SerializeTuple, Error>
serialize_element
,
then a call to end
. Read moresource§fn serialize_tuple_struct(
self,
_name: &'static str,
len: usize
) -> Result<<Serializer as Serializer>::SerializeTupleStruct, Error>
fn serialize_tuple_struct( self, _name: &'static str, len: usize ) -> Result<<Serializer as Serializer>::SerializeTupleStruct, Error>
struct Rgb(u8, u8, u8)
. This
call must be followed by zero or more calls to serialize_field
, then a
call to end
. Read moresource§fn serialize_tuple_variant(
self,
_name: &'static str,
_variant_index: u32,
variant: &'static str,
len: usize
) -> Result<<Serializer as Serializer>::SerializeTupleVariant, Error>
fn serialize_tuple_variant( self, _name: &'static str, _variant_index: u32, variant: &'static str, len: usize ) -> Result<<Serializer as Serializer>::SerializeTupleVariant, Error>
E::T
in enum E { T(u8, u8) }
. This call must be followed by zero or more calls to
serialize_field
, then a call to end
. Read moresource§fn serialize_map(
self,
_len: Option<usize>
) -> Result<<Serializer as Serializer>::SerializeMap, Error>
fn serialize_map( self, _len: Option<usize> ) -> Result<<Serializer as Serializer>::SerializeMap, Error>
serialize_key
and serialize_value
, then a call to end
. Read moresource§fn serialize_struct(
self,
name: &'static str,
len: usize
) -> Result<<Serializer as Serializer>::SerializeStruct, Error>
fn serialize_struct( self, name: &'static str, len: usize ) -> Result<<Serializer as Serializer>::SerializeStruct, Error>
struct Rgb { r: u8, g: u8, b: u8 }
.
This call must be followed by zero or more calls to serialize_field
,
then a call to end
. Read moresource§fn serialize_struct_variant(
self,
_name: &'static str,
_variant_index: u32,
variant: &'static str,
_len: usize
) -> Result<<Serializer as Serializer>::SerializeStructVariant, Error>
fn serialize_struct_variant( self, _name: &'static str, _variant_index: u32, variant: &'static str, _len: usize ) -> Result<<Serializer as Serializer>::SerializeStructVariant, Error>
E::S
in enum E { S { r: u8, g: u8, b: u8 } }
. This call must be followed by zero or more calls to
serialize_field
, then a call to end
. Read moresource§fn collect_str<T>(self, value: &T) -> Result<Value, Error>
fn collect_str<T>(self, value: &T) -> Result<Value, Error>
Display
. Read moresource§fn collect_seq<I>(self, iter: I) -> Result<Self::Ok, Self::Error>
fn collect_seq<I>(self, iter: I) -> Result<Self::Ok, Self::Error>
source§fn collect_map<K, V, I>(self, iter: I) -> Result<Self::Ok, Self::Error>
fn collect_map<K, V, I>(self, iter: I) -> Result<Self::Ok, Self::Error>
source§fn is_human_readable(&self) -> bool
fn is_human_readable(&self) -> bool
Serialize
implementations should serialize in
human-readable form. Read moreAuto Trait Implementations§
impl RefUnwindSafe for Serializer
impl Send for Serializer
impl Sync for Serializer
impl Unpin for Serializer
impl UnwindSafe for Serializer
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
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>
§impl<T> IntoCollection<T> for T
impl<T> IntoCollection<T> for T
§fn into_collection<A>(self) -> SmallVec<A>where
A: Array<Item = T>,
fn into_collection<A>(self) -> SmallVec<A>where
A: Array<Item = T>,
self
into a collection.fn mapped<U, F, A>(self, f: F) -> SmallVec<A>where
F: FnMut(T) -> U,
A: Array<Item = U>,
§impl<T> Paint for Twhere
T: ?Sized,
impl<T> Paint for Twhere
T: ?Sized,
§fn fg(&self, value: Color) -> Painted<&T>
fn fg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the foreground set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like red()
and
green()
, which have the same functionality but are
pithier.
Example
Set foreground color to white using fg()
:
use yansi::{Paint, Color};
painted.fg(Color::White);
Set foreground color to white using white()
.
use yansi::Paint;
painted.white();
§fn bright_black(&self) -> Painted<&T>
fn bright_black(&self) -> Painted<&T>
§fn bright_red(&self) -> Painted<&T>
fn bright_red(&self) -> Painted<&T>
§fn bright_green(&self) -> Painted<&T>
fn bright_green(&self) -> Painted<&T>
§fn bright_yellow(&self) -> Painted<&T>
fn bright_yellow(&self) -> Painted<&T>
§fn bright_blue(&self) -> Painted<&T>
fn bright_blue(&self) -> Painted<&T>
§fn bright_magenta(&self) -> Painted<&T>
fn bright_magenta(&self) -> Painted<&T>
§fn bright_cyan(&self) -> Painted<&T>
fn bright_cyan(&self) -> Painted<&T>
§fn bright_white(&self) -> Painted<&T>
fn bright_white(&self) -> Painted<&T>
§fn bg(&self, value: Color) -> Painted<&T>
fn bg(&self, value: Color) -> Painted<&T>
Returns a styled value derived from self
with the background set to
value
.
This method should be used rarely. Instead, prefer to use color-specific
builder methods like on_red()
and
on_green()
, which have the same functionality but
are pithier.
Example
Set background color to red using fg()
:
use yansi::{Paint, Color};
painted.bg(Color::Red);
Set background color to red using on_red()
.
use yansi::Paint;
painted.on_red();
§fn on_primary(&self) -> Painted<&T>
fn on_primary(&self) -> Painted<&T>
§fn on_magenta(&self) -> Painted<&T>
fn on_magenta(&self) -> Painted<&T>
§fn on_bright_black(&self) -> Painted<&T>
fn on_bright_black(&self) -> Painted<&T>
§fn on_bright_red(&self) -> Painted<&T>
fn on_bright_red(&self) -> Painted<&T>
§fn on_bright_green(&self) -> Painted<&T>
fn on_bright_green(&self) -> Painted<&T>
§fn on_bright_yellow(&self) -> Painted<&T>
fn on_bright_yellow(&self) -> Painted<&T>
§fn on_bright_blue(&self) -> Painted<&T>
fn on_bright_blue(&self) -> Painted<&T>
§fn on_bright_magenta(&self) -> Painted<&T>
fn on_bright_magenta(&self) -> Painted<&T>
§fn on_bright_cyan(&self) -> Painted<&T>
fn on_bright_cyan(&self) -> Painted<&T>
§fn on_bright_white(&self) -> Painted<&T>
fn on_bright_white(&self) -> Painted<&T>
§fn attr(&self, value: Attribute) -> Painted<&T>
fn attr(&self, value: Attribute) -> Painted<&T>
Enables the styling [Attribute
] value
.
This method should be used rarely. Instead, prefer to use
attribute-specific builder methods like bold()
and
underline()
, which have the same functionality
but are pithier.
Example
Make text bold using attr()
:
use yansi::{Paint, Attribute};
painted.attr(Attribute::Bold);
Make text bold using using bold()
.
use yansi::Paint;
painted.bold();
§fn rapid_blink(&self) -> Painted<&T>
fn rapid_blink(&self) -> Painted<&T>
§fn quirk(&self, value: Quirk) -> Painted<&T>
fn quirk(&self, value: Quirk) -> Painted<&T>
Enables the yansi
[Quirk
] value
.
This method should be used rarely. Instead, prefer to use quirk-specific
builder methods like mask()
and
wrap()
, which have the same functionality but are
pithier.
Example
Enable wrapping using .quirk()
:
use yansi::{Paint, Quirk};
painted.quirk(Quirk::Wrap);
Enable wrapping using wrap()
.
use yansi::Paint;
painted.wrap();
§fn whenever(&self, value: Condition) -> Painted<&T>
fn whenever(&self, value: Condition) -> Painted<&T>
Conditionally enable styling based on whether the [Condition
] value
applies. Replaces any previous condition.
See the crate level docs for more details.
Example
Enable styling painted
only when both stdout
and stderr
are TTYs:
use yansi::{Paint, Condition};
painted.red().on_yellow().whenever(Condition::STDOUTERR_ARE_TTY);