Struct serde_hjson::de::Deserializer
[−]
[src]
pub struct Deserializer<Iter: Iterator<Item=u8>> { // some fields omitted }
A structure that deserializes Hjson into Rust values.
Methods
impl<Iter> Deserializer<Iter> where Iter: Iterator<Item=u8>
[src]
fn new(rdr: Iter) -> Deserializer<Iter>
Creates the Hjson parser from an std::iter::Iterator
.
fn new_for_root(rdr: Iter) -> Deserializer<Iter>
Creates the Hjson parser from an std::iter::Iterator
.
fn end(&mut self) -> Result<()>
The Deserializer::end
method should be called after a value has been fully deserialized.
This allows the Deserializer
to validate that the input stream is at the end or that it
only has trailing whitespace.
Trait Implementations
impl<Iter> Deserializer for Deserializer<Iter> where Iter: Iterator<Item=u8>
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization.
fn deserialize<V>(&mut self, visitor: V) -> Result<V::Value> where V: Visitor
This method walks a visitor through a value as it is being deserialized.
fn deserialize_option<V>(&mut self, visitor: V) -> Result<V::Value> where V: Visitor
Parses a null
as a None, and any other values as a Some(...)
.
fn deserialize_newtype_struct<V>(&mut self, _name: &str, visitor: V) -> Result<V::Value> where V: Visitor
Parses a newtype struct as the underlying value.
fn deserialize_enum<V>(&mut self, _name: &str, _variants: &'static [&'static str], visitor: V) -> Result<V::Value> where V: EnumVisitor
Parses an enum as an object like {"$KEY":$VALUE}
, where $VALUE is either a straight
value, a [..]
, or a {..}
.
fn deserialize_bool<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a bool
value.
fn deserialize_usize<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an usize
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u8<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an u8
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u16<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an u16
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u32<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an u32
value. A reasonable default is to forward to deserialize_u64
. Read more
fn deserialize_u64<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an u64
value.
fn deserialize_isize<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an isize
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i8<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an i8
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i16<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an i16
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i32<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an i32
value. A reasonable default is to forward to deserialize_i64
. Read more
fn deserialize_i64<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an i64
value.
fn deserialize_f32<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a f32
value. A reasonable default is to forward to deserialize_f64
. Read more
fn deserialize_f64<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a f64
value.
fn deserialize_char<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a char
value.
fn deserialize_str<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a &str
value.
fn deserialize_string<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a String
value.
fn deserialize_unit<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting an unit
value.
fn deserialize_seq<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a sequence value. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_seq_fixed_size<V>(&mut self, _: usize, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a fixed size array. This allows deserializers to parse arrays that aren't tagged as arrays. Read more
fn deserialize_bytes<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a Vec<u8>
. This allows deserializers that provide a custom byte vector serialization to properly deserialize the type. Read more
fn deserialize_map<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a map of values. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_unit_struct<V>(&mut self, _: &'static str, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a unit struct. This allows deserializers to a unit struct that aren't tagged as a unit struct. Read more
fn deserialize_tuple_struct<V>(&mut self, _: &'static str, _: usize, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a tuple struct. This allows deserializers to parse sequences that aren't tagged as sequences. Read more
fn deserialize_struct<V>(&mut self, _: &'static str, _: &'static [&'static str], visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a struct. This allows deserializers to parse sequences that aren't tagged as maps. Read more
fn deserialize_struct_field<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting some sort of struct field name. This allows deserializers to choose between &str, usize, or &[u8] to properly deserialize a struct field. Read more
fn deserialize_tuple<V>(&mut self, _: usize, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type is expecting a tuple value. This allows deserializers that provide a custom tuple serialization to properly deserialize the type. Read more
fn deserialize_ignored_any<V>(&mut self, visitor: V) -> Result<V::Value, Self::Error> where V: Visitor
This method hints that the Deserialize
type needs to deserialize a value whose type doesn't matter because it is ignored. Read more
impl<Iter> VariantVisitor for Deserializer<Iter> where Iter: Iterator<Item=u8>
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization.
fn visit_variant<V>(&mut self) -> Result<V> where V: Deserialize
visit_variant
is called to identify which variant to deserialize.
fn visit_unit(&mut self) -> Result<()>
visit_unit
is called when deserializing a variant with no values.
fn visit_newtype<T>(&mut self) -> Result<T> where T: Deserialize
visit_newtype
is called when deserializing a variant with a single value. A good default is often to use the visit_tuple
method to deserialize a (value,)
. Read more
fn visit_tuple<V>(&mut self, _len: usize, visitor: V) -> Result<V::Value> where V: Visitor
visit_tuple
is called when deserializing a tuple-like variant. If no tuple variants are expected, yield a Err(serde::de::Error::invalid_type(serde::de::Type::TupleVariant))
Read more
fn visit_struct<V>(&mut self, _fields: &'static [&'static str], visitor: V) -> Result<V::Value> where V: Visitor
visit_struct
is called when deserializing a struct-like variant. If no struct variants are expected, yield a Err(serde::de::Error::invalid_type(serde::de::Type::StructVariant))
Read more