11870 lines
349 KiB
Markdown
11870 lines
349 KiB
Markdown
|
|
# Crate Documentation
|
||
|
|
|
||
|
|
**Version:** 1.0.228
|
||
|
|
|
||
|
|
**Format Version:** 56
|
||
|
|
|
||
|
|
# Module `serde`
|
||
|
|
|
||
|
|
# Serde
|
||
|
|
|
||
|
|
Serde is a framework for ***ser***ializing and ***de***serializing Rust data
|
||
|
|
structures efficiently and generically.
|
||
|
|
|
||
|
|
The Serde ecosystem consists of data structures that know how to serialize
|
||
|
|
and deserialize themselves along with data formats that know how to
|
||
|
|
serialize and deserialize other things. Serde provides the layer by which
|
||
|
|
these two groups interact with each other, allowing any supported data
|
||
|
|
structure to be serialized and deserialized using any supported data format.
|
||
|
|
|
||
|
|
See the Serde website <https://serde.rs> for additional documentation and
|
||
|
|
usage examples.
|
||
|
|
|
||
|
|
## Design
|
||
|
|
|
||
|
|
Where many other languages rely on runtime reflection for serializing data,
|
||
|
|
Serde is instead built on Rust's powerful trait system. A data structure
|
||
|
|
that knows how to serialize and deserialize itself is one that implements
|
||
|
|
Serde's `Serialize` and `Deserialize` traits (or uses Serde's derive
|
||
|
|
attribute to automatically generate implementations at compile time). This
|
||
|
|
avoids any overhead of reflection or runtime type information. In fact in
|
||
|
|
many situations the interaction between data structure and data format can
|
||
|
|
be completely optimized away by the Rust compiler, leaving Serde
|
||
|
|
serialization to perform the same speed as a handwritten serializer for the
|
||
|
|
specific selection of data structure and data format.
|
||
|
|
|
||
|
|
## Data formats
|
||
|
|
|
||
|
|
The following is a partial list of data formats that have been implemented
|
||
|
|
for Serde by the community.
|
||
|
|
|
||
|
|
- [JSON], the ubiquitous JavaScript Object Notation used by many HTTP APIs.
|
||
|
|
- [Postcard], a no\_std and embedded-systems friendly compact binary format.
|
||
|
|
- [CBOR], a Concise Binary Object Representation designed for small message
|
||
|
|
size without the need for version negotiation.
|
||
|
|
- [YAML], a self-proclaimed human-friendly configuration language that ain't
|
||
|
|
markup language.
|
||
|
|
- [MessagePack], an efficient binary format that resembles a compact JSON.
|
||
|
|
- [TOML], a minimal configuration format used by [Cargo].
|
||
|
|
- [Pickle], a format common in the Python world.
|
||
|
|
- [RON], a Rusty Object Notation.
|
||
|
|
- [BSON], the data storage and network transfer format used by MongoDB.
|
||
|
|
- [Avro], a binary format used within Apache Hadoop, with support for schema
|
||
|
|
definition.
|
||
|
|
- [JSON5], a superset of JSON including some productions from ES5.
|
||
|
|
- [URL] query strings, in the x-www-form-urlencoded format.
|
||
|
|
- [Starlark], the format used for describing build targets by the Bazel and
|
||
|
|
Buck build systems. *(serialization only)*
|
||
|
|
- [Envy], a way to deserialize environment variables into Rust structs.
|
||
|
|
*(deserialization only)*
|
||
|
|
- [Envy Store], a way to deserialize [AWS Parameter Store] parameters into
|
||
|
|
Rust structs. *(deserialization only)*
|
||
|
|
- [S-expressions], the textual representation of code and data used by the
|
||
|
|
Lisp language family.
|
||
|
|
- [D-Bus]'s binary wire format.
|
||
|
|
- [FlexBuffers], the schemaless cousin of Google's FlatBuffers zero-copy
|
||
|
|
serialization format.
|
||
|
|
- [Bencode], a simple binary format used in the BitTorrent protocol.
|
||
|
|
- [Token streams], for processing Rust procedural macro input.
|
||
|
|
*(deserialization only)*
|
||
|
|
- [DynamoDB Items], the format used by [rusoto_dynamodb] to transfer data to
|
||
|
|
and from DynamoDB.
|
||
|
|
- [Hjson], a syntax extension to JSON designed around human reading and
|
||
|
|
editing. *(deserialization only)*
|
||
|
|
- [CSV], Comma-separated values is a tabular text file format.
|
||
|
|
|
||
|
|
[JSON]: https://github.com/serde-rs/json
|
||
|
|
[Postcard]: https://github.com/jamesmunns/postcard
|
||
|
|
[CBOR]: https://github.com/enarx/ciborium
|
||
|
|
[YAML]: https://github.com/dtolnay/serde-yaml
|
||
|
|
[MessagePack]: https://github.com/3Hren/msgpack-rust
|
||
|
|
[TOML]: https://docs.rs/toml
|
||
|
|
[Pickle]: https://github.com/birkenfeld/serde-pickle
|
||
|
|
[RON]: https://github.com/ron-rs/ron
|
||
|
|
[BSON]: https://github.com/mongodb/bson-rust
|
||
|
|
[Avro]: https://docs.rs/apache-avro
|
||
|
|
[JSON5]: https://github.com/callum-oakley/json5-rs
|
||
|
|
[URL]: https://docs.rs/serde_qs
|
||
|
|
[Starlark]: https://github.com/dtolnay/serde-starlark
|
||
|
|
[Envy]: https://github.com/softprops/envy
|
||
|
|
[Envy Store]: https://github.com/softprops/envy-store
|
||
|
|
[Cargo]: https://doc.rust-lang.org/cargo/reference/manifest.html
|
||
|
|
[AWS Parameter Store]: https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-parameter-store.html
|
||
|
|
[S-expressions]: https://github.com/rotty/lexpr-rs
|
||
|
|
[D-Bus]: https://docs.rs/zvariant
|
||
|
|
[FlexBuffers]: https://github.com/google/flatbuffers/tree/master/rust/flexbuffers
|
||
|
|
[Bencode]: https://github.com/P3KI/bendy
|
||
|
|
[Token streams]: https://github.com/oxidecomputer/serde_tokenstream
|
||
|
|
[DynamoDB Items]: https://docs.rs/serde_dynamo
|
||
|
|
[rusoto_dynamodb]: https://docs.rs/rusoto_dynamodb
|
||
|
|
[Hjson]: https://github.com/Canop/deser-hjson
|
||
|
|
[CSV]: https://docs.rs/csv
|
||
|
|
|
||
|
|
## Modules
|
||
|
|
|
||
|
|
## Module `de`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(all(docsrs, if_docsrs_then_no_serde_core), path =\n\"core/de/mod.rs\")]")`
|
||
|
|
- `Other("#[attr = Path(\"core/de/mod.rs\")]")`
|
||
|
|
|
||
|
|
Generic data structure deserialization framework.
|
||
|
|
|
||
|
|
The two most important traits in this module are [`Deserialize`] and
|
||
|
|
[`Deserializer`].
|
||
|
|
|
||
|
|
- **A type that implements `Deserialize` is a data structure** that can be
|
||
|
|
deserialized from any data format supported by Serde, and conversely
|
||
|
|
- **A type that implements `Deserializer` is a data format** that can
|
||
|
|
deserialize any data structure supported by Serde.
|
||
|
|
|
||
|
|
# The Deserialize trait
|
||
|
|
|
||
|
|
Serde provides [`Deserialize`] implementations for many Rust primitive and
|
||
|
|
standard library types. The complete list is below. All of these can be
|
||
|
|
deserialized using Serde out of the box.
|
||
|
|
|
||
|
|
Additionally, Serde provides a procedural macro called [`serde_derive`] to
|
||
|
|
automatically generate [`Deserialize`] implementations for structs and enums
|
||
|
|
in your program. See the [derive section of the manual] for how to use this.
|
||
|
|
|
||
|
|
In rare cases it may be necessary to implement [`Deserialize`] manually for
|
||
|
|
some type in your program. See the [Implementing `Deserialize`] section of
|
||
|
|
the manual for more about this.
|
||
|
|
|
||
|
|
Third-party crates may provide [`Deserialize`] implementations for types
|
||
|
|
that they expose. For example the [`linked-hash-map`] crate provides a
|
||
|
|
[`LinkedHashMap<K, V>`] type that is deserializable by Serde because the
|
||
|
|
crate provides an implementation of [`Deserialize`] for it.
|
||
|
|
|
||
|
|
# The Deserializer trait
|
||
|
|
|
||
|
|
[`Deserializer`] implementations are provided by third-party crates, for
|
||
|
|
example [`serde_json`], [`serde_yaml`] and [`postcard`].
|
||
|
|
|
||
|
|
A partial list of well-maintained formats is given on the [Serde
|
||
|
|
website][data formats].
|
||
|
|
|
||
|
|
# Implementations of Deserialize provided by Serde
|
||
|
|
|
||
|
|
This is a slightly different set of types than what is supported for
|
||
|
|
serialization. Some types can be serialized by Serde but not deserialized.
|
||
|
|
One example is `OsStr`.
|
||
|
|
|
||
|
|
- **Primitive types**:
|
||
|
|
- bool
|
||
|
|
- i8, i16, i32, i64, i128, isize
|
||
|
|
- u8, u16, u32, u64, u128, usize
|
||
|
|
- f32, f64
|
||
|
|
- char
|
||
|
|
- **Compound types**:
|
||
|
|
- \[T; 0\] through \[T; 32\]
|
||
|
|
- tuples up to size 16
|
||
|
|
- **Common standard library types**:
|
||
|
|
- String
|
||
|
|
- Option\<T\>
|
||
|
|
- Result\<T, E\>
|
||
|
|
- PhantomData\<T\>
|
||
|
|
- **Wrapper types**:
|
||
|
|
- Box\<T\>
|
||
|
|
- Box\<\[T\]\>
|
||
|
|
- Box\<str\>
|
||
|
|
- Cow\<'a, T\>
|
||
|
|
- Cell\<T\>
|
||
|
|
- RefCell\<T\>
|
||
|
|
- Mutex\<T\>
|
||
|
|
- RwLock\<T\>
|
||
|
|
- Rc\<T\> *(if* features = \["rc"\] *is enabled)*
|
||
|
|
- Arc\<T\> *(if* features = \["rc"\] *is enabled)*
|
||
|
|
- **Collection types**:
|
||
|
|
- BTreeMap\<K, V\>
|
||
|
|
- BTreeSet\<T\>
|
||
|
|
- BinaryHeap\<T\>
|
||
|
|
- HashMap\<K, V, H\>
|
||
|
|
- HashSet\<T, H\>
|
||
|
|
- LinkedList\<T\>
|
||
|
|
- VecDeque\<T\>
|
||
|
|
- Vec\<T\>
|
||
|
|
- **Zero-copy types**:
|
||
|
|
- &str
|
||
|
|
- &\[u8\]
|
||
|
|
- **FFI types**:
|
||
|
|
- CString
|
||
|
|
- Box\<CStr\>
|
||
|
|
- OsString
|
||
|
|
- **Miscellaneous standard library types**:
|
||
|
|
- Duration
|
||
|
|
- SystemTime
|
||
|
|
- Path
|
||
|
|
- PathBuf
|
||
|
|
- Range\<T\>
|
||
|
|
- RangeInclusive\<T\>
|
||
|
|
- Bound\<T\>
|
||
|
|
- num::NonZero*
|
||
|
|
- `!` *(unstable)*
|
||
|
|
- **Net types**:
|
||
|
|
- IpAddr
|
||
|
|
- Ipv4Addr
|
||
|
|
- Ipv6Addr
|
||
|
|
- SocketAddr
|
||
|
|
- SocketAddrV4
|
||
|
|
- SocketAddrV6
|
||
|
|
|
||
|
|
[Implementing `Deserialize`]: https://serde.rs/impl-deserialize.html
|
||
|
|
[`Deserialize`]: crate::Deserialize
|
||
|
|
[`Deserializer`]: crate::Deserializer
|
||
|
|
[`LinkedHashMap<K, V>`]: https://docs.rs/linked-hash-map/*/linked_hash_map/struct.LinkedHashMap.html
|
||
|
|
[`postcard`]: https://github.com/jamesmunns/postcard
|
||
|
|
[`linked-hash-map`]: https://crates.io/crates/linked-hash-map
|
||
|
|
[`serde_derive`]: https://crates.io/crates/serde_derive
|
||
|
|
[`serde_json`]: https://github.com/serde-rs/json
|
||
|
|
[`serde_yaml`]: https://github.com/dtolnay/serde-yaml
|
||
|
|
[derive section of the manual]: https://serde.rs/derive.html
|
||
|
|
[data formats]: https://serde.rs/#data-formats
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub mod de { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
### Modules
|
||
|
|
|
||
|
|
## Module `value`
|
||
|
|
|
||
|
|
Building blocks for deserializing basic values using the `IntoDeserializer`
|
||
|
|
trait.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::de::{value, Deserialize, IntoDeserializer};
|
||
|
|
use serde_derive::Deserialize;
|
||
|
|
use std::str::FromStr;
|
||
|
|
|
||
|
|
#[derive(Deserialize)]
|
||
|
|
enum Setting {
|
||
|
|
On,
|
||
|
|
Off,
|
||
|
|
}
|
||
|
|
|
||
|
|
impl FromStr for Setting {
|
||
|
|
type Err = value::Error;
|
||
|
|
|
||
|
|
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
||
|
|
Self::deserialize(s.into_deserializer())
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub mod value { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
### Types
|
||
|
|
|
||
|
|
#### Struct `Error`
|
||
|
|
|
||
|
|
A minimal representation of all possible errors that can occur using the
|
||
|
|
`IntoDeserializer` trait.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct Error {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Error { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Display**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Error**
|
||
|
|
- ```rust
|
||
|
|
fn custom<T>(msg: T) -> Self
|
||
|
|
where
|
||
|
|
T: Display { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn custom<T>(msg: T) -> Self
|
||
|
|
where
|
||
|
|
T: Display { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn description(self: &Self) -> &str { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **PartialEq**
|
||
|
|
- ```rust
|
||
|
|
fn eq(self: &Self, other: &Error) -> bool { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **StructuralPartialEq**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **ToString**
|
||
|
|
- ```rust
|
||
|
|
fn to_string(self: &Self) -> String { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `UnitDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `()`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct UnitDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new() -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `NeverDeserializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(feature = \"unstable\")]")`
|
||
|
|
- `Other("#[<cfg_attr>(docsrs, doc(cfg(feature = \"unstable\")))]")`
|
||
|
|
- `Other("#[doc(cfg(feature = \"unstable\"))]")`
|
||
|
|
|
||
|
|
A deserializer that cannot be instantiated.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct NeverDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, _visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `BoolDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `bool`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct BoolDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: bool) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `I8Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `i8`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct I8Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: i8) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `I16Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `i16`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct I16Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: i16) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `I32Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `i32`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct I32Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: i32) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `I64Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `i64`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct I64Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: i64) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `I128Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `i128`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct I128Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: i128) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `IsizeDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `isize`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct IsizeDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: isize) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `U8Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `u8`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct U8Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: u8) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `U16Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `u16`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct U16Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: u16) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `U64Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `u64`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct U64Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: u64) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `U128Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `u128`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct U128Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: u128) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `UsizeDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `usize`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct UsizeDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: usize) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `F32Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `f32`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct F32Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: f32) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `F64Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
an `f64`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct F64Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: f64) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `CharDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding
|
||
|
|
a `char`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct CharDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: char) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `U32Deserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `u32`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct U32Deserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: u32) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &str, variants: &''static [&''static str], visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **EnumAccess**
|
||
|
|
- ```rust
|
||
|
|
fn variant_seed<T>(self: Self, seed: T) -> Result<(<T as >::Value, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `StrDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `&str`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct StrDeserializer<''a, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: &''a str) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &str, variants: &''static [&''static str], visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **EnumAccess**
|
||
|
|
- ```rust
|
||
|
|
fn variant_seed<T>(self: Self, seed: T) -> Result<(<T as >::Value, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `BorrowedStrDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `&str` with a lifetime tied to another
|
||
|
|
deserializer.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct BorrowedStrDeserializer<''de, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: &''de str) -> BorrowedStrDeserializer<''de, E> { /* ... */ }
|
||
|
|
```
|
||
|
|
Create a new borrowed deserializer from the given string.
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &str, variants: &''static [&''static str], visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **EnumAccess**
|
||
|
|
- ```rust
|
||
|
|
fn variant_seed<T>(self: Self, seed: T) -> Result<(<T as >::Value, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `StringDeserializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(any(feature = \"std\", feature = \"alloc\"))]")`
|
||
|
|
- `Other("#[<cfg_attr>(docsrs, doc(cfg(any(feature = \"std\", feature = \"alloc\"))))]")`
|
||
|
|
- `Other("#[doc(cfg(any(feature = \"std\", feature = \"alloc\")))]")`
|
||
|
|
|
||
|
|
A deserializer holding a `String`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct StringDeserializer<E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: String) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &str, variants: &''static [&''static str], visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **EnumAccess**
|
||
|
|
- ```rust
|
||
|
|
fn variant_seed<T>(self: Self, seed: T) -> Result<(<T as >::Value, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `CowStrDeserializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(any(feature = \"std\", feature = \"alloc\"))]")`
|
||
|
|
- `Other("#[<cfg_attr>(docsrs, doc(cfg(any(feature = \"std\", feature = \"alloc\"))))]")`
|
||
|
|
- `Other("#[doc(cfg(any(feature = \"std\", feature = \"alloc\")))]")`
|
||
|
|
|
||
|
|
A deserializer holding a `Cow<str>`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct CowStrDeserializer<''a, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: Cow<''a, str>) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &str, variants: &''static [&''static str], visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **EnumAccess**
|
||
|
|
- ```rust
|
||
|
|
fn variant_seed<T>(self: Self, seed: T) -> Result<(<T as >::Value, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `BytesDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `&[u8]`. Always calls [`Visitor::visit_bytes`].
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct BytesDeserializer<''a, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: &''a [u8]) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Create a new deserializer from the given bytes.
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `BorrowedBytesDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `&[u8]` with a lifetime tied to another
|
||
|
|
deserializer. Always calls [`Visitor::visit_borrowed_bytes`].
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct BorrowedBytesDeserializer<''de, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(value: &''de [u8]) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Create a new borrowed deserializer from the given borrowed bytes.
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `SeqDeserializer`
|
||
|
|
|
||
|
|
A deserializer that iterates over a sequence.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct SeqDeserializer<I, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(iter: I) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Construct a new `SeqDeserializer<I, E>`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn end(self: Self) -> Result<(), E> { /* ... */ }
|
||
|
|
```
|
||
|
|
Check for remaining elements after passing a `SeqDeserializer` to
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> SeqDeserializer<I, E> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **SeqAccess**
|
||
|
|
- ```rust
|
||
|
|
fn next_element_seed<V>(self: &mut Self, seed: V) -> Result<Option<<V as >::Value>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn size_hint(self: &Self) -> Option<usize> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `SeqAccessDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `SeqAccess`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct SeqAccessDeserializer<A> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(seq: A) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Construct a new `SeqAccessDeserializer<A>`.
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> SeqAccessDeserializer<A> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<''_>) -> $crate::fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `MapDeserializer`
|
||
|
|
|
||
|
|
A deserializer that iterates over a map.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct MapDeserializer<''de, I, E> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(iter: I) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Construct a new `MapDeserializer<I, E>`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn end(self: Self) -> Result<(), E> { /* ... */ }
|
||
|
|
```
|
||
|
|
Check for remaining elements after passing a `MapDeserializer` to
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **MapAccess**
|
||
|
|
- ```rust
|
||
|
|
fn next_key_seed<T>(self: &mut Self, seed: T) -> Result<Option<<T as >::Value>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_value_seed<T>(self: &mut Self, seed: T) -> Result<<T as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_entry_seed<TK, TV>(self: &mut Self, kseed: TK, vseed: TV) -> Result<Option<(<TK as >::Value, <TV as >::Value)>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
TK: de::DeserializeSeed<''de>,
|
||
|
|
TV: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn size_hint(self: &Self) -> Option<usize> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **SeqAccess**
|
||
|
|
- ```rust
|
||
|
|
fn next_element_seed<T>(self: &mut Self, seed: T) -> Result<Option<<T as >::Value>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn size_hint(self: &Self) -> Option<usize> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `MapAccessDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding a `MapAccess`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct MapAccessDeserializer<A> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(map: A) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Construct a new `MapAccessDeserializer<A>`.
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> MapAccessDeserializer<A> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<''_>) -> $crate::fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, _name: &str, _variants: &''static [&''static str], visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **EnumAccess**
|
||
|
|
- ```rust
|
||
|
|
fn variant_seed<T>(self: Self, seed: T) -> Result<(<T as >::Value, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: de::DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
#### Struct `EnumAccessDeserializer`
|
||
|
|
|
||
|
|
A deserializer holding an `EnumAccess`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub struct EnumAccessDeserializer<A> {
|
||
|
|
// Some fields omitted
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Fields
|
||
|
|
|
||
|
|
| Name | Type | Documentation |
|
||
|
|
|------|------|---------------|
|
||
|
|
| *private fields* | ... | *Some fields have been omitted* |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
pub fn new(access: A) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Construct a new `EnumAccessDeserializer<A>`.
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> EnumAccessDeserializer<A> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<''_>) -> $crate::fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Deserializer**
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_any<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bool<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u8<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u16<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f32<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_f64<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_char<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_str<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_string<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_bytes<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_byte_buf<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_option<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_unit_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_newtype_struct<V>(self: Self, name: &''static str, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_seq<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple<V>(self: Self, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_tuple_struct<V>(self: Self, name: &''static str, len: usize, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_map<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_struct<V>(self: Self, name: &''static str, fields: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_enum<V>(self: Self, name: &''static str, variants: &''static [&''static str], visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_identifier<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_ignored_any<V>(self: Self, visitor: V) -> $crate::__private::Result<<V as >::Value, <Self as $crate::de::Deserializer<''de>>::Error>
|
||
|
|
where
|
||
|
|
V: $crate::de::Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **IntoDeserializer**
|
||
|
|
- ```rust
|
||
|
|
fn into_deserializer(self: Self) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
### Types
|
||
|
|
|
||
|
|
#### Enum `Unexpected`
|
||
|
|
|
||
|
|
`Unexpected` represents an unexpected invocation of any one of the `Visitor`
|
||
|
|
trait methods.
|
||
|
|
|
||
|
|
This is used as an argument to the `invalid_type`, `invalid_value`, and
|
||
|
|
`invalid_length` methods of the `Error` trait to build error messages.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use std::fmt;
|
||
|
|
#
|
||
|
|
# use serde::de::{self, Unexpected, Visitor};
|
||
|
|
#
|
||
|
|
# struct Example;
|
||
|
|
#
|
||
|
|
# impl<'de> Visitor<'de> for Example {
|
||
|
|
# type Value = ();
|
||
|
|
#
|
||
|
|
# fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
|
||
|
|
# write!(formatter, "definitely not a boolean")
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
fn visit_bool<E>(self, v: bool) -> Result<Self::Value, E>
|
||
|
|
where
|
||
|
|
E: de::Error,
|
||
|
|
{
|
||
|
|
Err(de::Error::invalid_type(Unexpected::Bool(v), &self))
|
||
|
|
}
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub enum Unexpected<''a> {
|
||
|
|
Bool(bool),
|
||
|
|
Unsigned(u64),
|
||
|
|
Signed(i64),
|
||
|
|
Float(f64),
|
||
|
|
Char(char),
|
||
|
|
Str(&''a str),
|
||
|
|
Bytes(&''a [u8]),
|
||
|
|
Unit,
|
||
|
|
Option,
|
||
|
|
NewtypeStruct,
|
||
|
|
Seq,
|
||
|
|
Map,
|
||
|
|
Enum,
|
||
|
|
UnitVariant,
|
||
|
|
NewtypeVariant,
|
||
|
|
TupleVariant,
|
||
|
|
StructVariant,
|
||
|
|
Other(&''a str),
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Variants
|
||
|
|
|
||
|
|
###### `Bool`
|
||
|
|
|
||
|
|
The input contained a boolean value that was not expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `bool` | |
|
||
|
|
|
||
|
|
###### `Unsigned`
|
||
|
|
|
||
|
|
The input contained an unsigned integer `u8`, `u16`, `u32` or `u64` that
|
||
|
|
was not expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `u64` | |
|
||
|
|
|
||
|
|
###### `Signed`
|
||
|
|
|
||
|
|
The input contained a signed integer `i8`, `i16`, `i32` or `i64` that
|
||
|
|
was not expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `i64` | |
|
||
|
|
|
||
|
|
###### `Float`
|
||
|
|
|
||
|
|
The input contained a floating point `f32` or `f64` that was not
|
||
|
|
expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `f64` | |
|
||
|
|
|
||
|
|
###### `Char`
|
||
|
|
|
||
|
|
The input contained a `char` that was not expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `char` | |
|
||
|
|
|
||
|
|
###### `Str`
|
||
|
|
|
||
|
|
The input contained a `&str` or `String` that was not expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `&''a str` | |
|
||
|
|
|
||
|
|
###### `Bytes`
|
||
|
|
|
||
|
|
The input contained a `&[u8]` or `Vec<u8>` that was not expected.
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `&''a [u8]` | |
|
||
|
|
|
||
|
|
###### `Unit`
|
||
|
|
|
||
|
|
The input contained a unit `()` that was not expected.
|
||
|
|
|
||
|
|
###### `Option`
|
||
|
|
|
||
|
|
The input contained an `Option<T>` that was not expected.
|
||
|
|
|
||
|
|
###### `NewtypeStruct`
|
||
|
|
|
||
|
|
The input contained a newtype struct that was not expected.
|
||
|
|
|
||
|
|
###### `Seq`
|
||
|
|
|
||
|
|
The input contained a sequence that was not expected.
|
||
|
|
|
||
|
|
###### `Map`
|
||
|
|
|
||
|
|
The input contained a map that was not expected.
|
||
|
|
|
||
|
|
###### `Enum`
|
||
|
|
|
||
|
|
The input contained an enum that was not expected.
|
||
|
|
|
||
|
|
###### `UnitVariant`
|
||
|
|
|
||
|
|
The input contained a unit variant that was not expected.
|
||
|
|
|
||
|
|
###### `NewtypeVariant`
|
||
|
|
|
||
|
|
The input contained a newtype variant that was not expected.
|
||
|
|
|
||
|
|
###### `TupleVariant`
|
||
|
|
|
||
|
|
The input contained a tuple variant that was not expected.
|
||
|
|
|
||
|
|
###### `StructVariant`
|
||
|
|
|
||
|
|
The input contained a struct variant that was not expected.
|
||
|
|
|
||
|
|
###### `Other`
|
||
|
|
|
||
|
|
A message stating what uncategorized thing the input contained that was
|
||
|
|
not expected.
|
||
|
|
|
||
|
|
The message should be a noun or noun phrase, not capitalized and without
|
||
|
|
a period. An example message is "unoriginal superhero".
|
||
|
|
|
||
|
|
Fields:
|
||
|
|
|
||
|
|
| Index | Type | Documentation |
|
||
|
|
|-------|------|---------------|
|
||
|
|
| 0 | `&''a str` | |
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
###### Trait Implementations
|
||
|
|
|
||
|
|
- **Any**
|
||
|
|
- ```rust
|
||
|
|
fn type_id(self: &Self) -> TypeId { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Borrow**
|
||
|
|
- ```rust
|
||
|
|
fn borrow(self: &Self) -> &T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **BorrowMut**
|
||
|
|
- ```rust
|
||
|
|
fn borrow_mut(self: &mut Self) -> &mut T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Clone**
|
||
|
|
- ```rust
|
||
|
|
fn clone(self: &Self) -> Unexpected<''a> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **CloneToUninit**
|
||
|
|
- ```rust
|
||
|
|
unsafe fn clone_to_uninit(self: &Self, dest: *mut u8) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Copy**
|
||
|
|
- **Debug**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, f: &mut $crate::fmt::Formatter<''_>) -> $crate::fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Display**
|
||
|
|
- ```rust
|
||
|
|
fn fmt(self: &Self, formatter: &mut fmt::Formatter<''_>) -> fmt::Result { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Freeze**
|
||
|
|
- **From**
|
||
|
|
- ```rust
|
||
|
|
fn from(t: T) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the argument unchanged.
|
||
|
|
|
||
|
|
- **Into**
|
||
|
|
- ```rust
|
||
|
|
fn into(self: Self) -> U { /* ... */ }
|
||
|
|
```
|
||
|
|
Calls `U::from(self)`.
|
||
|
|
|
||
|
|
- **PartialEq**
|
||
|
|
- ```rust
|
||
|
|
fn eq(self: &Self, other: &Unexpected<''a>) -> bool { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **RefUnwindSafe**
|
||
|
|
- **Send**
|
||
|
|
- **StructuralPartialEq**
|
||
|
|
- **Sync**
|
||
|
|
- **ToOwned**
|
||
|
|
- ```rust
|
||
|
|
fn to_owned(self: &Self) -> T { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn clone_into(self: &Self, target: &mut T) { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **ToString**
|
||
|
|
- ```rust
|
||
|
|
fn to_string(self: &Self) -> String { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryFrom**
|
||
|
|
- ```rust
|
||
|
|
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **TryInto**
|
||
|
|
- ```rust
|
||
|
|
fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
- **Unpin**
|
||
|
|
- **UnwindSafe**
|
||
|
|
### Traits
|
||
|
|
|
||
|
|
#### Trait `Error`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace), diagnostic ::\non_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Error` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Error` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
The `Error` trait allows `Deserialize` implementations to create descriptive
|
||
|
|
error messages belonging to the `Deserializer` against which they are
|
||
|
|
currently running.
|
||
|
|
|
||
|
|
Every `Deserializer` declares an `Error` type that encompasses both
|
||
|
|
general-purpose deserialization errors as well as errors specific to the
|
||
|
|
particular deserialization format. For example the `Error` type of
|
||
|
|
`serde_json` can represent errors like an invalid JSON escape sequence or an
|
||
|
|
unterminated string literal, in addition to the error cases that are part of
|
||
|
|
this trait.
|
||
|
|
|
||
|
|
Most deserializers should only need to provide the `Error::custom` method
|
||
|
|
and inherit the default behavior for the other methods.
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website shows an error
|
||
|
|
type appropriate for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Error: Sized + StdError {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `custom`: Raised when there is general error when deserializing a type.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn invalid_type(unexp: Unexpected<''_>, exp: &dyn Expected) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when a `Deserialize` receives a type different from what it was
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn invalid_value(unexp: Unexpected<''_>, exp: &dyn Expected) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when a `Deserialize` receives a value of the right type but that
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn invalid_length(len: usize, exp: &dyn Expected) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when deserializing a sequence or map and the input data contains
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn unknown_variant(variant: &str, expected: &''static [&''static str]) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when a `Deserialize` enum type received a variant with an
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn unknown_field(field: &str, expected: &''static [&''static str]) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when a `Deserialize` struct type received a field with an
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn missing_field(field: &''static str) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when a `Deserialize` struct type expected to receive a required
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn duplicate_field(field: &''static str) -> Self { /* ... */ }
|
||
|
|
```
|
||
|
|
Raised when a `Deserialize` struct type received more than one of the
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Error`
|
||
|
|
|
||
|
|
#### Trait `Expected`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Expected` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Expected` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
`Expected` represents an explanation of what data a `Visitor` was expecting
|
||
|
|
to receive.
|
||
|
|
|
||
|
|
This is used as an argument to the `invalid_type`, `invalid_value`, and
|
||
|
|
`invalid_length` methods of the `Error` trait to build error messages. The
|
||
|
|
message should be a noun or noun phrase that completes the sentence "This
|
||
|
|
Visitor expects to receive ...", for example the message could be "an
|
||
|
|
integer between 0 and 64". The message should not be capitalized and should
|
||
|
|
not end with a period.
|
||
|
|
|
||
|
|
Within the context of a `Visitor` implementation, the `Visitor` itself
|
||
|
|
(`&self`) is an implementation of this trait.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::de::{self, Unexpected, Visitor};
|
||
|
|
# use std::fmt;
|
||
|
|
#
|
||
|
|
# struct Example;
|
||
|
|
#
|
||
|
|
# impl<'de> Visitor<'de> for Example {
|
||
|
|
# type Value = ();
|
||
|
|
#
|
||
|
|
# fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
|
||
|
|
# write!(formatter, "definitely not a boolean")
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
fn visit_bool<E>(self, v: bool) -> Result<Self::Value, E>
|
||
|
|
where
|
||
|
|
E: de::Error,
|
||
|
|
{
|
||
|
|
Err(de::Error::invalid_type(Unexpected::Bool(v), &self))
|
||
|
|
}
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
Outside of a `Visitor`, `&"..."` can be used.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::de::{self, Unexpected};
|
||
|
|
#
|
||
|
|
# fn example<E>() -> Result<(), E>
|
||
|
|
# where
|
||
|
|
# E: de::Error,
|
||
|
|
# {
|
||
|
|
# let v = true;
|
||
|
|
return Err(de::Error::invalid_type(
|
||
|
|
Unexpected::Bool(v),
|
||
|
|
&"a negative integer",
|
||
|
|
));
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Expected {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `fmt`: Format an explanation of what data was being expected. Same signature as
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `T` with <''de, T>
|
||
|
|
- `&str`
|
||
|
|
|
||
|
|
#### Trait `Deserialize`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::Deserialize<'de>` is not satisfied\", note =\n\"for local types consider adding `#[derive(serde::Deserialize)]` to your `{Self}` type\",\nnote =\n\"for types from other crates check whether the crate offers a `serde` feature flag\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::Deserialize<'de>` is not satisfied\", note =\n\"for local types consider adding `#[derive(serde::Deserialize)]` to your `{Self}` type\",\nnote =\n\"for types from other crates check whether the crate offers a `serde` feature flag\",)]")`
|
||
|
|
|
||
|
|
A **data structure** that can be deserialized from any data format supported
|
||
|
|
by Serde.
|
||
|
|
|
||
|
|
Serde provides `Deserialize` implementations for many Rust primitive and
|
||
|
|
standard library types. The complete list is [here][crate::de]. All of these
|
||
|
|
can be deserialized using Serde out of the box.
|
||
|
|
|
||
|
|
Additionally, Serde provides a procedural macro called `serde_derive` to
|
||
|
|
automatically generate `Deserialize` implementations for structs and enums
|
||
|
|
in your program. See the [derive section of the manual][derive] for how to
|
||
|
|
use this.
|
||
|
|
|
||
|
|
In rare cases it may be necessary to implement `Deserialize` manually for
|
||
|
|
some type in your program. See the [Implementing
|
||
|
|
`Deserialize`][impl-deserialize] section of the manual for more about this.
|
||
|
|
|
||
|
|
Third-party crates may provide `Deserialize` implementations for types that
|
||
|
|
they expose. For example the `linked-hash-map` crate provides a
|
||
|
|
`LinkedHashMap<K, V>` type that is deserializable by Serde because the crate
|
||
|
|
provides an implementation of `Deserialize` for it.
|
||
|
|
|
||
|
|
[derive]: https://serde.rs/derive.html
|
||
|
|
[impl-deserialize]: https://serde.rs/impl-deserialize.html
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed by `Self` when deserialized. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Deserialize<''de>: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `deserialize`: Deserialize this value from the given Serde deserializer.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `IgnoredAny` with <''de>
|
||
|
|
- `()` with <''de>
|
||
|
|
- `never` with <''de>
|
||
|
|
- `bool` with <''de>
|
||
|
|
- `i8` with <''de>
|
||
|
|
- `num::NonZeroI8` with <''de>
|
||
|
|
- `Saturating<i8>` with <''de>
|
||
|
|
- `i16` with <''de>
|
||
|
|
- `num::NonZeroI16` with <''de>
|
||
|
|
- `Saturating<i16>` with <''de>
|
||
|
|
- `i32` with <''de>
|
||
|
|
- `num::NonZeroI32` with <''de>
|
||
|
|
- `Saturating<i32>` with <''de>
|
||
|
|
- `i64` with <''de>
|
||
|
|
- `num::NonZeroI64` with <''de>
|
||
|
|
- `Saturating<i64>` with <''de>
|
||
|
|
- `isize` with <''de>
|
||
|
|
- `num::NonZeroIsize` with <''de>
|
||
|
|
- `Saturating<isize>` with <''de>
|
||
|
|
- `u8` with <''de>
|
||
|
|
- `num::NonZeroU8` with <''de>
|
||
|
|
- `Saturating<u8>` with <''de>
|
||
|
|
- `u16` with <''de>
|
||
|
|
- `num::NonZeroU16` with <''de>
|
||
|
|
- `Saturating<u16>` with <''de>
|
||
|
|
- `u32` with <''de>
|
||
|
|
- `num::NonZeroU32` with <''de>
|
||
|
|
- `Saturating<u32>` with <''de>
|
||
|
|
- `u64` with <''de>
|
||
|
|
- `num::NonZeroU64` with <''de>
|
||
|
|
- `Saturating<u64>` with <''de>
|
||
|
|
- `usize` with <''de>
|
||
|
|
- `num::NonZeroUsize` with <''de>
|
||
|
|
- `Saturating<usize>` with <''de>
|
||
|
|
- `f32` with <''de>
|
||
|
|
- `f64` with <''de>
|
||
|
|
- `i128` with <''de>
|
||
|
|
- `num::NonZeroI128` with <''de>
|
||
|
|
- `Saturating<i128>` with <''de>
|
||
|
|
- `u128` with <''de>
|
||
|
|
- `num::NonZeroU128` with <''de>
|
||
|
|
- `Saturating<u128>` with <''de>
|
||
|
|
- `char` with <''de>
|
||
|
|
- `String` with <''de>
|
||
|
|
- `&''a str` with <''de: ''a, ''a>
|
||
|
|
- `&''a [u8]` with <''de: ''a, ''a>
|
||
|
|
- `CString` with <''de>
|
||
|
|
- `Box<CStr>` with <''de>
|
||
|
|
- `Reverse<T>` with <''de, T: Deserialize<''de>>
|
||
|
|
- `Option<T>` with <''de, T>
|
||
|
|
- `PhantomData<T>` with <''de, T>
|
||
|
|
- `BinaryHeap<T>` with <''de, T>
|
||
|
|
- `BTreeSet<T>` with <''de, T>
|
||
|
|
- `LinkedList<T>` with <''de, T>
|
||
|
|
- `HashSet<T, S>` with <''de, T, S>
|
||
|
|
- `VecDeque<T>` with <''de, T>
|
||
|
|
- `Vec<T>` with <''de, T>
|
||
|
|
- `[T; 0]` with <''de, T>
|
||
|
|
- `[T; 1]` with <''de, T>
|
||
|
|
- `[T; 2]` with <''de, T>
|
||
|
|
- `[T; 3]` with <''de, T>
|
||
|
|
- `[T; 4]` with <''de, T>
|
||
|
|
- `[T; 5]` with <''de, T>
|
||
|
|
- `[T; 6]` with <''de, T>
|
||
|
|
- `[T; 7]` with <''de, T>
|
||
|
|
- `[T; 8]` with <''de, T>
|
||
|
|
- `[T; 9]` with <''de, T>
|
||
|
|
- `[T; 10]` with <''de, T>
|
||
|
|
- `[T; 11]` with <''de, T>
|
||
|
|
- `[T; 12]` with <''de, T>
|
||
|
|
- `[T; 13]` with <''de, T>
|
||
|
|
- `[T; 14]` with <''de, T>
|
||
|
|
- `[T; 15]` with <''de, T>
|
||
|
|
- `[T; 16]` with <''de, T>
|
||
|
|
- `[T; 17]` with <''de, T>
|
||
|
|
- `[T; 18]` with <''de, T>
|
||
|
|
- `[T; 19]` with <''de, T>
|
||
|
|
- `[T; 20]` with <''de, T>
|
||
|
|
- `[T; 21]` with <''de, T>
|
||
|
|
- `[T; 22]` with <''de, T>
|
||
|
|
- `[T; 23]` with <''de, T>
|
||
|
|
- `[T; 24]` with <''de, T>
|
||
|
|
- `[T; 25]` with <''de, T>
|
||
|
|
- `[T; 26]` with <''de, T>
|
||
|
|
- `[T; 27]` with <''de, T>
|
||
|
|
- `[T; 28]` with <''de, T>
|
||
|
|
- `[T; 29]` with <''de, T>
|
||
|
|
- `[T; 30]` with <''de, T>
|
||
|
|
- `[T; 31]` with <''de, T>
|
||
|
|
- `[T; 32]` with <''de, T>
|
||
|
|
- `(T)` with <''de, T>
|
||
|
|
- `BTreeMap<K, V>` with <''de, K, V>
|
||
|
|
- `HashMap<K, V, S>` with <''de, K, V, S>
|
||
|
|
- `net::IpAddr` with <''de>
|
||
|
|
- `net::Ipv4Addr` with <''de>
|
||
|
|
- `net::Ipv6Addr` with <''de>
|
||
|
|
- `net::SocketAddr` with <''de>
|
||
|
|
- `net::SocketAddrV4` with <''de>
|
||
|
|
- `net::SocketAddrV6` with <''de>
|
||
|
|
- `&''a Path` with <''de: ''a, ''a>
|
||
|
|
- `PathBuf` with <''de>
|
||
|
|
- `Box<Path>` with <''de>
|
||
|
|
- `OsString` with <''de>
|
||
|
|
- `Box<T>` with <''de, T: Deserialize<''de>>
|
||
|
|
- `Box<[T]>` with <''de, T: Deserialize<''de>>
|
||
|
|
- `Box<str>` with <''de>
|
||
|
|
- `Box<OsStr>` with <''de>
|
||
|
|
- `Cow<''a, T>` with <''de, ''a, T>
|
||
|
|
- `RcWeak<T>` with <''de, T>
|
||
|
|
- `ArcWeak<T>` with <''de, T>
|
||
|
|
- `Rc<T>` with <''de, T>
|
||
|
|
- `Arc<T>` with <''de, T>
|
||
|
|
- `Cell<T>` with <''de, T>
|
||
|
|
- `RefCell<T>` with <''de, T: Deserialize<''de>>
|
||
|
|
- `Mutex<T>` with <''de, T: Deserialize<''de>>
|
||
|
|
- `RwLock<T>` with <''de, T: Deserialize<''de>>
|
||
|
|
- `Duration` with <''de>
|
||
|
|
- `SystemTime` with <''de>
|
||
|
|
- `Range<Idx>` with <''de, Idx>
|
||
|
|
- `RangeInclusive<Idx>` with <''de, Idx>
|
||
|
|
- `RangeFrom<Idx>` with <''de, Idx>
|
||
|
|
- `RangeTo<Idx>` with <''de, Idx>
|
||
|
|
- `Bound<T>` with <''de, T>
|
||
|
|
- `Wrapping<T>` with <''de, T>
|
||
|
|
- `AtomicBool` with <''de>
|
||
|
|
- `AtomicI8` with <''de>
|
||
|
|
- `AtomicI16` with <''de>
|
||
|
|
- `AtomicI32` with <''de>
|
||
|
|
- `AtomicIsize` with <''de>
|
||
|
|
- `AtomicU8` with <''de>
|
||
|
|
- `AtomicU16` with <''de>
|
||
|
|
- `AtomicU32` with <''de>
|
||
|
|
- `AtomicUsize` with <''de>
|
||
|
|
- `AtomicI64` with <''de>
|
||
|
|
- `AtomicU64` with <''de>
|
||
|
|
|
||
|
|
#### Trait `DeserializeOwned`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::DeserializeOwned` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::DeserializeOwned` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
A data structure that can be deserialized without borrowing any data from
|
||
|
|
the deserializer.
|
||
|
|
|
||
|
|
This is primarily useful for trait bounds on functions. For example a
|
||
|
|
`from_str` function may be able to deserialize a data structure that borrows
|
||
|
|
from the input string, but a `from_reader` function may only deserialize
|
||
|
|
owned data.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::de::{Deserialize, DeserializeOwned};
|
||
|
|
# use std::io::{Read, Result};
|
||
|
|
#
|
||
|
|
# trait Ignore {
|
||
|
|
fn from_str<'a, T>(s: &'a str) -> Result<T>
|
||
|
|
where
|
||
|
|
T: Deserialize<'a>;
|
||
|
|
|
||
|
|
fn from_reader<R, T>(rdr: R) -> Result<T>
|
||
|
|
where
|
||
|
|
R: Read,
|
||
|
|
T: DeserializeOwned;
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The relationship between `Deserialize` and `DeserializeOwned` in trait
|
||
|
|
bounds is explained in more detail on the page [Understanding deserializer
|
||
|
|
lifetimes].
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait DeserializeOwned: for<''de> Deserialize<''de> {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `T` with <T>
|
||
|
|
|
||
|
|
#### Trait `DeserializeSeed`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::DeserializeSeed<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::DeserializeSeed<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
`DeserializeSeed` is the stateful form of the `Deserialize` trait. If you
|
||
|
|
ever find yourself looking for a way to pass data into a `Deserialize` impl,
|
||
|
|
this trait is the way to do it.
|
||
|
|
|
||
|
|
As one example of stateful deserialization consider deserializing a JSON
|
||
|
|
array into an existing buffer. Using the `Deserialize` trait we could
|
||
|
|
deserialize a JSON array into a `Vec<T>` but it would be a freshly allocated
|
||
|
|
`Vec<T>`; there is no way for `Deserialize` to reuse a previously allocated
|
||
|
|
buffer. Using `DeserializeSeed` instead makes this possible as in the
|
||
|
|
example code below.
|
||
|
|
|
||
|
|
The canonical API for stateless deserialization looks like this:
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::Deserialize;
|
||
|
|
#
|
||
|
|
# enum Error {}
|
||
|
|
#
|
||
|
|
fn func<'de, T: Deserialize<'de>>() -> Result<T, Error>
|
||
|
|
# {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
Adjusting an API like this to support stateful deserialization is a matter
|
||
|
|
of accepting a seed as input:
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::de::DeserializeSeed;
|
||
|
|
#
|
||
|
|
# enum Error {}
|
||
|
|
#
|
||
|
|
fn func_seed<'de, T: DeserializeSeed<'de>>(seed: T) -> Result<T::Value, Error>
|
||
|
|
# {
|
||
|
|
# let _ = seed;
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
In practice the majority of deserialization is stateless. An API expecting a
|
||
|
|
seed can be appeased by passing `std::marker::PhantomData` as a seed in the
|
||
|
|
case of stateless deserialization.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed by `Self::Value` when deserialized. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example
|
||
|
|
|
||
|
|
Suppose we have JSON that looks like `[[1, 2], [3, 4, 5], [6]]` and we need
|
||
|
|
to deserialize it into a flat representation like `vec![1, 2, 3, 4, 5, 6]`.
|
||
|
|
Allocating a brand new `Vec<T>` for each subarray would be slow. Instead we
|
||
|
|
would like to allocate a single `Vec<T>` and then deserialize each subarray
|
||
|
|
into it. This requires stateful deserialization using the `DeserializeSeed`
|
||
|
|
trait.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::de::{Deserialize, DeserializeSeed, Deserializer, SeqAccess, Visitor};
|
||
|
|
use std::fmt;
|
||
|
|
use std::marker::PhantomData;
|
||
|
|
|
||
|
|
// A DeserializeSeed implementation that uses stateful deserialization to
|
||
|
|
// append array elements onto the end of an existing vector. The preexisting
|
||
|
|
// state ("seed") in this case is the Vec<T>. The `deserialize` method of
|
||
|
|
// `ExtendVec` will be traversing the inner arrays of the JSON input and
|
||
|
|
// appending each integer into the existing Vec.
|
||
|
|
struct ExtendVec<'a, T: 'a>(&'a mut Vec<T>);
|
||
|
|
|
||
|
|
impl<'de, 'a, T> DeserializeSeed<'de> for ExtendVec<'a, T>
|
||
|
|
where
|
||
|
|
T: Deserialize<'de>,
|
||
|
|
{
|
||
|
|
// The return type of the `deserialize` method. This implementation
|
||
|
|
// appends onto an existing vector but does not create any new data
|
||
|
|
// structure, so the return type is ().
|
||
|
|
type Value = ();
|
||
|
|
|
||
|
|
fn deserialize<D>(self, deserializer: D) -> Result<Self::Value, D::Error>
|
||
|
|
where
|
||
|
|
D: Deserializer<'de>,
|
||
|
|
{
|
||
|
|
// Visitor implementation that will walk an inner array of the JSON
|
||
|
|
// input.
|
||
|
|
struct ExtendVecVisitor<'a, T: 'a>(&'a mut Vec<T>);
|
||
|
|
|
||
|
|
impl<'de, 'a, T> Visitor<'de> for ExtendVecVisitor<'a, T>
|
||
|
|
where
|
||
|
|
T: Deserialize<'de>,
|
||
|
|
{
|
||
|
|
type Value = ();
|
||
|
|
|
||
|
|
fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
|
||
|
|
write!(formatter, "an array of integers")
|
||
|
|
}
|
||
|
|
|
||
|
|
fn visit_seq<A>(self, mut seq: A) -> Result<(), A::Error>
|
||
|
|
where
|
||
|
|
A: SeqAccess<'de>,
|
||
|
|
{
|
||
|
|
// Decrease the number of reallocations if there are many elements
|
||
|
|
if let Some(size_hint) = seq.size_hint() {
|
||
|
|
self.0.reserve(size_hint);
|
||
|
|
}
|
||
|
|
|
||
|
|
// Visit each element in the inner array and push it onto
|
||
|
|
// the existing vector.
|
||
|
|
while let Some(elem) = seq.next_element()? {
|
||
|
|
self.0.push(elem);
|
||
|
|
}
|
||
|
|
Ok(())
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
deserializer.deserialize_seq(ExtendVecVisitor(self.0))
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
// Visitor implementation that will walk the outer array of the JSON input.
|
||
|
|
struct FlattenedVecVisitor<T>(PhantomData<T>);
|
||
|
|
|
||
|
|
impl<'de, T> Visitor<'de> for FlattenedVecVisitor<T>
|
||
|
|
where
|
||
|
|
T: Deserialize<'de>,
|
||
|
|
{
|
||
|
|
// This Visitor constructs a single Vec<T> to hold the flattened
|
||
|
|
// contents of the inner arrays.
|
||
|
|
type Value = Vec<T>;
|
||
|
|
|
||
|
|
fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
|
||
|
|
write!(formatter, "an array of arrays")
|
||
|
|
}
|
||
|
|
|
||
|
|
fn visit_seq<A>(self, mut seq: A) -> Result<Vec<T>, A::Error>
|
||
|
|
where
|
||
|
|
A: SeqAccess<'de>,
|
||
|
|
{
|
||
|
|
// Create a single Vec to hold the flattened contents.
|
||
|
|
let mut vec = Vec::new();
|
||
|
|
|
||
|
|
// Each iteration through this loop is one inner array.
|
||
|
|
while let Some(()) = seq.next_element_seed(ExtendVec(&mut vec))? {
|
||
|
|
// Nothing to do; inner array has been appended into `vec`.
|
||
|
|
}
|
||
|
|
|
||
|
|
// Return the finished vec.
|
||
|
|
Ok(vec)
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
# fn example<'de, D>(deserializer: D) -> Result<(), D::Error>
|
||
|
|
# where
|
||
|
|
# D: Deserializer<'de>,
|
||
|
|
# {
|
||
|
|
let visitor = FlattenedVecVisitor(PhantomData);
|
||
|
|
let flattened: Vec<u64> = deserializer.deserialize_seq(visitor)?;
|
||
|
|
# Ok(())
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait DeserializeSeed<''de>: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Value`: The type produced by using this seed.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `deserialize`: Equivalent to the more common `Deserialize::deserialize` method, except
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `PhantomData<T>` with <''de, T>
|
||
|
|
|
||
|
|
#### Trait `Deserializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Deserializer<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Deserializer<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
A **data format** that can deserialize any data structure supported by
|
||
|
|
Serde.
|
||
|
|
|
||
|
|
The role of this trait is to define the deserialization half of the [Serde
|
||
|
|
data model], which is a way to categorize every Rust data type into one of
|
||
|
|
29 possible types. Each method of the `Deserializer` trait corresponds to one
|
||
|
|
of the types of the data model.
|
||
|
|
|
||
|
|
Implementations of `Deserialize` map themselves into this data model by
|
||
|
|
passing to the `Deserializer` a `Visitor` implementation that can receive
|
||
|
|
these various types.
|
||
|
|
|
||
|
|
The types that make up the Serde data model are:
|
||
|
|
|
||
|
|
- **14 primitive types**
|
||
|
|
- bool
|
||
|
|
- i8, i16, i32, i64, i128
|
||
|
|
- u8, u16, u32, u64, u128
|
||
|
|
- f32, f64
|
||
|
|
- char
|
||
|
|
- **string**
|
||
|
|
- UTF-8 bytes with a length and no null terminator.
|
||
|
|
- When serializing, all strings are handled equally. When deserializing,
|
||
|
|
there are three flavors of strings: transient, owned, and borrowed.
|
||
|
|
- **byte array** - \[u8\]
|
||
|
|
- Similar to strings, during deserialization byte arrays can be
|
||
|
|
transient, owned, or borrowed.
|
||
|
|
- **option**
|
||
|
|
- Either none or some value.
|
||
|
|
- **unit**
|
||
|
|
- The type of `()` in Rust. It represents an anonymous value containing
|
||
|
|
no data.
|
||
|
|
- **unit_struct**
|
||
|
|
- For example `struct Unit` or `PhantomData<T>`. It represents a named
|
||
|
|
value containing no data.
|
||
|
|
- **unit_variant**
|
||
|
|
- For example the `E::A` and `E::B` in `enum E { A, B }`.
|
||
|
|
- **newtype_struct**
|
||
|
|
- For example `struct Millimeters(u8)`.
|
||
|
|
- **newtype_variant**
|
||
|
|
- For example the `E::N` in `enum E { N(u8) }`.
|
||
|
|
- **seq**
|
||
|
|
- A variably sized heterogeneous sequence of values, for example `Vec<T>`
|
||
|
|
or `HashSet<T>`. When serializing, the length may or may not be known
|
||
|
|
before iterating through all the data. When deserializing, the length
|
||
|
|
is determined by looking at the serialized data.
|
||
|
|
- **tuple**
|
||
|
|
- A statically sized heterogeneous sequence of values for which the
|
||
|
|
length will be known at deserialization time without looking at the
|
||
|
|
serialized data, for example `(u8,)` or `(String, u64, Vec<T>)` or
|
||
|
|
`[u64; 10]`.
|
||
|
|
- **tuple_struct**
|
||
|
|
- A named tuple, for example `struct Rgb(u8, u8, u8)`.
|
||
|
|
- **tuple_variant**
|
||
|
|
- For example the `E::T` in `enum E { T(u8, u8) }`.
|
||
|
|
- **map**
|
||
|
|
- A heterogeneous key-value pairing, for example `BTreeMap<K, V>`.
|
||
|
|
- **struct**
|
||
|
|
- A heterogeneous key-value pairing in which the keys are strings and
|
||
|
|
will be known at deserialization time without looking at the serialized
|
||
|
|
data, for example `struct S { r: u8, g: u8, b: u8 }`.
|
||
|
|
- **struct_variant**
|
||
|
|
- For example the `E::S` in `enum E { S { r: u8, g: u8, b: u8 } }`.
|
||
|
|
|
||
|
|
The `Deserializer` trait supports two entry point styles which enables
|
||
|
|
different kinds of deserialization.
|
||
|
|
|
||
|
|
1. The `deserialize_any` method. Self-describing data formats like JSON are
|
||
|
|
able to look at the serialized data and tell what it represents. For
|
||
|
|
example the JSON deserializer may see an opening curly brace (`{`) and
|
||
|
|
know that it is seeing a map. If the data format supports
|
||
|
|
`Deserializer::deserialize_any`, it will drive the Visitor using whatever
|
||
|
|
type it sees in the input. JSON uses this approach when deserializing
|
||
|
|
`serde_json::Value` which is an enum that can represent any JSON
|
||
|
|
document. Without knowing what is in a JSON document, we can deserialize
|
||
|
|
it to `serde_json::Value` by going through
|
||
|
|
`Deserializer::deserialize_any`.
|
||
|
|
|
||
|
|
2. The various `deserialize_*` methods. Non-self-describing formats like
|
||
|
|
Postcard need to be told what is in the input in order to deserialize it.
|
||
|
|
The `deserialize_*` methods are hints to the deserializer for how to
|
||
|
|
interpret the next piece of input. Non-self-describing formats are not
|
||
|
|
able to deserialize something like `serde_json::Value` which relies on
|
||
|
|
`Deserializer::deserialize_any`.
|
||
|
|
|
||
|
|
When implementing `Deserialize`, you should avoid relying on
|
||
|
|
`Deserializer::deserialize_any` unless you need to be told by the
|
||
|
|
Deserializer what type is in the input. Know that relying on
|
||
|
|
`Deserializer::deserialize_any` means your data type will be able to
|
||
|
|
deserialize from self-describing formats only, ruling out Postcard and many
|
||
|
|
others.
|
||
|
|
|
||
|
|
[Serde data model]: https://serde.rs/data-model.html
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed from the input when deserializing. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website contains example code for
|
||
|
|
a basic JSON `Deserializer`.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Deserializer<''de>: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Error`: The error type that can be returned if some error occurs during
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `deserialize_any`: Require the `Deserializer` to figure out how to drive the visitor based
|
||
|
|
- `deserialize_bool`: Hint that the `Deserialize` type is expecting a `bool` value.
|
||
|
|
- `deserialize_i8`: Hint that the `Deserialize` type is expecting an `i8` value.
|
||
|
|
- `deserialize_i16`: Hint that the `Deserialize` type is expecting an `i16` value.
|
||
|
|
- `deserialize_i32`: Hint that the `Deserialize` type is expecting an `i32` value.
|
||
|
|
- `deserialize_i64`: Hint that the `Deserialize` type is expecting an `i64` value.
|
||
|
|
- `deserialize_u8`: Hint that the `Deserialize` type is expecting a `u8` value.
|
||
|
|
- `deserialize_u16`: Hint that the `Deserialize` type is expecting a `u16` value.
|
||
|
|
- `deserialize_u32`: Hint that the `Deserialize` type is expecting a `u32` value.
|
||
|
|
- `deserialize_u64`: Hint that the `Deserialize` type is expecting a `u64` value.
|
||
|
|
- `deserialize_f32`: Hint that the `Deserialize` type is expecting a `f32` value.
|
||
|
|
- `deserialize_f64`: Hint that the `Deserialize` type is expecting a `f64` value.
|
||
|
|
- `deserialize_char`: Hint that the `Deserialize` type is expecting a `char` value.
|
||
|
|
- `deserialize_str`: Hint that the `Deserialize` type is expecting a string value and does
|
||
|
|
- `deserialize_string`: Hint that the `Deserialize` type is expecting a string value and would
|
||
|
|
- `deserialize_bytes`: Hint that the `Deserialize` type is expecting a byte array and does not
|
||
|
|
- `deserialize_byte_buf`: Hint that the `Deserialize` type is expecting a byte array and would
|
||
|
|
- `deserialize_option`: Hint that the `Deserialize` type is expecting an optional value.
|
||
|
|
- `deserialize_unit`: Hint that the `Deserialize` type is expecting a unit value.
|
||
|
|
- `deserialize_unit_struct`: Hint that the `Deserialize` type is expecting a unit struct with a
|
||
|
|
- `deserialize_newtype_struct`: Hint that the `Deserialize` type is expecting a newtype struct with a
|
||
|
|
- `deserialize_seq`: Hint that the `Deserialize` type is expecting a sequence of values.
|
||
|
|
- `deserialize_tuple`: Hint that the `Deserialize` type is expecting a sequence of values and
|
||
|
|
- `deserialize_tuple_struct`: Hint that the `Deserialize` type is expecting a tuple struct with a
|
||
|
|
- `deserialize_map`: Hint that the `Deserialize` type is expecting a map of key-value pairs.
|
||
|
|
- `deserialize_struct`: Hint that the `Deserialize` type is expecting a struct with a particular
|
||
|
|
- `deserialize_enum`: Hint that the `Deserialize` type is expecting an enum value with a
|
||
|
|
- `deserialize_identifier`: Hint that the `Deserialize` type is expecting the name of a struct
|
||
|
|
- `deserialize_ignored_any`: Hint that the `Deserialize` type needs to deserialize a value whose type
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_i128<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
Hint that the `Deserialize` type is expecting an `i128` value.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn deserialize_u128<V>(self: Self, visitor: V) -> Result<<V as >::Value, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: Visitor<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
Hint that the `Deserialize` type is expecting an `u128` value.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn is_human_readable(self: &Self) -> bool { /* ... */ }
|
||
|
|
```
|
||
|
|
Determine whether `Deserialize` implementations should expect to
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `UnitDeserializer<E>` with <''de, E>
|
||
|
|
- `NeverDeserializer<E>` with <''de, E>
|
||
|
|
- `BoolDeserializer<E>` with <''de, E>
|
||
|
|
- `I8Deserializer<E>` with <''de, E>
|
||
|
|
- `I16Deserializer<E>` with <''de, E>
|
||
|
|
- `I32Deserializer<E>` with <''de, E>
|
||
|
|
- `I64Deserializer<E>` with <''de, E>
|
||
|
|
- `I128Deserializer<E>` with <''de, E>
|
||
|
|
- `IsizeDeserializer<E>` with <''de, E>
|
||
|
|
- `U8Deserializer<E>` with <''de, E>
|
||
|
|
- `U16Deserializer<E>` with <''de, E>
|
||
|
|
- `U64Deserializer<E>` with <''de, E>
|
||
|
|
- `U128Deserializer<E>` with <''de, E>
|
||
|
|
- `UsizeDeserializer<E>` with <''de, E>
|
||
|
|
- `F32Deserializer<E>` with <''de, E>
|
||
|
|
- `F64Deserializer<E>` with <''de, E>
|
||
|
|
- `CharDeserializer<E>` with <''de, E>
|
||
|
|
- `U32Deserializer<E>` with <''de, E>
|
||
|
|
- `StrDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `BorrowedStrDeserializer<''de, E>` with <''de, E>
|
||
|
|
- `StringDeserializer<E>` with <''de, E>
|
||
|
|
- `CowStrDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `BytesDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `BorrowedBytesDeserializer<''de, E>` with <''de, E>
|
||
|
|
- `SeqDeserializer<I, E>` with <''de, I, T, E>
|
||
|
|
- `SeqAccessDeserializer<A>` with <''de, A>
|
||
|
|
- `MapDeserializer<''de, I, E>` with <''de, I, E>
|
||
|
|
- `MapAccessDeserializer<A>` with <''de, A>
|
||
|
|
- `EnumAccessDeserializer<A>` with <''de, A>
|
||
|
|
|
||
|
|
#### Trait `Visitor`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Visitor<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::Visitor<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
This trait represents a visitor that walks through a deserializer.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the requirement for lifetime of data
|
||
|
|
that may be borrowed by `Self::Value`. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::de::{self, Unexpected, Visitor};
|
||
|
|
# use std::fmt;
|
||
|
|
#
|
||
|
|
/// A visitor that deserializes a long string - a string containing at least
|
||
|
|
/// some minimum number of bytes.
|
||
|
|
struct LongString {
|
||
|
|
min: usize,
|
||
|
|
}
|
||
|
|
|
||
|
|
impl<'de> Visitor<'de> for LongString {
|
||
|
|
type Value = String;
|
||
|
|
|
||
|
|
fn expecting(&self, formatter: &mut fmt::Formatter) -> fmt::Result {
|
||
|
|
write!(formatter, "a string containing at least {} bytes", self.min)
|
||
|
|
}
|
||
|
|
|
||
|
|
fn visit_str<E>(self, s: &str) -> Result<Self::Value, E>
|
||
|
|
where
|
||
|
|
E: de::Error,
|
||
|
|
{
|
||
|
|
if s.len() >= self.min {
|
||
|
|
Ok(s.to_owned())
|
||
|
|
} else {
|
||
|
|
Err(de::Error::invalid_value(Unexpected::Str(s), &self))
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Visitor<''de>: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Value`: The value produced by this visitor.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `expecting`: Format a message stating what data this Visitor expects to receive.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_bool<E>(self: Self, v: bool) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a boolean.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_i8<E>(self: Self, v: i8) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an `i8`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_i16<E>(self: Self, v: i16) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an `i16`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_i32<E>(self: Self, v: i32) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an `i32`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_i64<E>(self: Self, v: i64) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an `i64`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_i128<E>(self: Self, v: i128) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `i128`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_u8<E>(self: Self, v: u8) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `u8`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_u16<E>(self: Self, v: u16) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `u16`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_u32<E>(self: Self, v: u32) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `u32`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_u64<E>(self: Self, v: u64) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `u64`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_u128<E>(self: Self, v: u128) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `u128`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_f32<E>(self: Self, v: f32) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an `f32`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_f64<E>(self: Self, v: f64) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an `f64`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_char<E>(self: Self, v: char) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a `char`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_str<E>(self: Self, v: &str) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a string. The lifetime of the string is ephemeral and
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_borrowed_str<E>(self: Self, v: &''de str) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a string that lives at least as long as the
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_string<E>(self: Self, v: String) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a string and ownership of the string is being given
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_bytes<E>(self: Self, v: &[u8]) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a byte array. The lifetime of the byte array is
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_borrowed_bytes<E>(self: Self, v: &''de [u8]) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a byte array that lives at least as long as the
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_byte_buf<E>(self: Self, v: Vec<u8>) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a byte array and ownership of the byte array is being
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_none<E>(self: Self) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an optional that is absent.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_some<D>(self: Self, deserializer: D) -> Result<<Self as >::Value, <D as >::Error>
|
||
|
|
where
|
||
|
|
D: Deserializer<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an optional that is present.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_unit<E>(self: Self) -> Result<<Self as >::Value, E>
|
||
|
|
where
|
||
|
|
E: Error { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a unit `()`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_newtype_struct<D>(self: Self, deserializer: D) -> Result<<Self as >::Value, <D as >::Error>
|
||
|
|
where
|
||
|
|
D: Deserializer<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a newtype struct.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_seq<A>(self: Self, seq: A) -> Result<<Self as >::Value, <A as >::Error>
|
||
|
|
where
|
||
|
|
A: SeqAccess<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a sequence of elements.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_map<A>(self: Self, map: A) -> Result<<Self as >::Value, <A as >::Error>
|
||
|
|
where
|
||
|
|
A: MapAccess<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains a key-value map.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn visit_enum<A>(self: Self, data: A) -> Result<<Self as >::Value, <A as >::Error>
|
||
|
|
where
|
||
|
|
A: EnumAccess<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
The input contains an enum.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `IgnoredAny` with <''de>
|
||
|
|
|
||
|
|
#### Trait `SeqAccess`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::SeqAccess<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::SeqAccess<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Provides a `Visitor` access to each element of a sequence in the input.
|
||
|
|
|
||
|
|
This is a trait that a `Deserializer` passes to a `Visitor` implementation,
|
||
|
|
which deserializes each item in a sequence.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed by deserialized sequence elements. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SeqAccess` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SeqAccess<''de> {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Error`: The error type that can be returned if some error occurs during
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `next_element_seed`: This returns `Ok(Some(value))` for the next value in the sequence, or
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_element<T>(self: &mut Self) -> Result<Option<T>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: Deserialize<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
This returns `Ok(Some(value))` for the next value in the sequence, or
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn size_hint(self: &Self) -> Option<usize> { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the number of elements remaining in the sequence, if known.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `SeqDeserializer<I, E>` with <''de, I, T, E>
|
||
|
|
- `MapDeserializer<''de, I, E>` with <''de, I, E>
|
||
|
|
- `&mut A` with <''de, A>
|
||
|
|
|
||
|
|
#### Trait `MapAccess`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::MapAccess<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::MapAccess<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Provides a `Visitor` access to each entry of a map in the input.
|
||
|
|
|
||
|
|
This is a trait that a `Deserializer` passes to a `Visitor` implementation.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed by deserialized map entries. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `MapAccess` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait MapAccess<''de> {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Error`: The error type that can be returned if some error occurs during
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `next_key_seed`: This returns `Ok(Some(key))` for the next key in the map, or `Ok(None)`
|
||
|
|
- `next_value_seed`: This returns a `Ok(value)` for the next value in the map.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_entry_seed<K, V>(self: &mut Self, kseed: K, vseed: V) -> Result<Option<(<K as >::Value, <V as >::Value)>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
K: DeserializeSeed<''de>,
|
||
|
|
V: DeserializeSeed<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
This returns `Ok(Some((key, value)))` for the next (key-value) pair in
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_key<K>(self: &mut Self) -> Result<Option<K>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
K: Deserialize<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
This returns `Ok(Some(key))` for the next key in the map, or `Ok(None)`
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_value<V>(self: &mut Self) -> Result<V, <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: Deserialize<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
This returns a `Ok(value)` for the next value in the map.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn next_entry<K, V>(self: &mut Self) -> Result<Option<(K, V)>, <Self as >::Error>
|
||
|
|
where
|
||
|
|
K: Deserialize<''de>,
|
||
|
|
V: Deserialize<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
This returns `Ok(Some((key, value)))` for the next (key-value) pair in
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn size_hint(self: &Self) -> Option<usize> { /* ... */ }
|
||
|
|
```
|
||
|
|
Returns the number of entries remaining in the map, if known.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `MapDeserializer<''de, I, E>` with <''de, I, E>
|
||
|
|
- `&mut A` with <''de, A>
|
||
|
|
|
||
|
|
#### Trait `EnumAccess`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::EnumAccess<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::EnumAccess<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Provides a `Visitor` access to the data of an enum in the input.
|
||
|
|
|
||
|
|
`EnumAccess` is created by the `Deserializer` and passed to the
|
||
|
|
`Visitor` in order to identify which variant of an enum to deserialize.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed by the deserialized enum variant. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `EnumAccess` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait EnumAccess<''de>: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Error`: The error type that can be returned if some error occurs during
|
||
|
|
- `Variant`: The `Visitor` that will be used to deserialize the content of the enum
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `variant_seed`: `variant` is called to identify which variant to deserialize.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn variant<V>(self: Self) -> Result<(V, <Self as >::Variant), <Self as >::Error>
|
||
|
|
where
|
||
|
|
V: Deserialize<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
`variant` is called to identify which variant to deserialize.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `U32Deserializer<E>` with <''de, E>
|
||
|
|
- `StrDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `BorrowedStrDeserializer<''de, E>` with <''de, E>
|
||
|
|
- `StringDeserializer<E>` with <''de, E>
|
||
|
|
- `CowStrDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `MapAccessDeserializer<A>` with <''de, A>
|
||
|
|
|
||
|
|
#### Trait `VariantAccess`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::VariantAccess<'de>` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::de::VariantAccess<'de>` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
`VariantAccess` is a visitor that is created by the `Deserializer` and
|
||
|
|
passed to the `Deserialize` to deserialize the content of a particular enum
|
||
|
|
variant.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed by the deserialized enum variant. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `VariantAccess` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait VariantAccess<''de>: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Error`: The error type that can be returned if some error occurs during
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `unit_variant`: Called when deserializing a variant with no values.
|
||
|
|
- `newtype_variant_seed`: Called when deserializing a variant with a single value.
|
||
|
|
- `tuple_variant`: Called when deserializing a tuple-like variant.
|
||
|
|
- `struct_variant`: Called when deserializing a struct-like variant.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn newtype_variant<T>(self: Self) -> Result<T, <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: Deserialize<''de> { /* ... */ }
|
||
|
|
```
|
||
|
|
Called when deserializing a variant with a single value.
|
||
|
|
|
||
|
|
#### Trait `IntoDeserializer`
|
||
|
|
|
||
|
|
Converts an existing value into a `Deserializer` from which other values can
|
||
|
|
be deserialized.
|
||
|
|
|
||
|
|
# Lifetime
|
||
|
|
|
||
|
|
The `'de` lifetime of this trait is the lifetime of data that may be
|
||
|
|
borrowed from the resulting `Deserializer`. See the page [Understanding
|
||
|
|
deserializer lifetimes] for a more detailed explanation of these lifetimes.
|
||
|
|
|
||
|
|
[Understanding deserializer lifetimes]: https://serde.rs/lifetimes.html
|
||
|
|
|
||
|
|
# Example
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::de::{value, Deserialize, IntoDeserializer};
|
||
|
|
use serde_derive::Deserialize;
|
||
|
|
use std::str::FromStr;
|
||
|
|
|
||
|
|
#[derive(Deserialize)]
|
||
|
|
enum Setting {
|
||
|
|
On,
|
||
|
|
Off,
|
||
|
|
}
|
||
|
|
|
||
|
|
impl FromStr for Setting {
|
||
|
|
type Err = value::Error;
|
||
|
|
|
||
|
|
fn from_str(s: &str) -> Result<Self, Self::Err> {
|
||
|
|
Self::deserialize(s.into_deserializer())
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait IntoDeserializer<''de, E: Error = value::Error> {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Deserializer`: The type of the deserializer being converted into.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `into_deserializer`: Convert this value into a deserializer.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `()` with <''de, E>
|
||
|
|
- `UnitDeserializer<E>` with <''de, E>
|
||
|
|
- `never` with <''de, E>
|
||
|
|
- `NeverDeserializer<E>` with <''de, E>
|
||
|
|
- `bool` with <''de, E>
|
||
|
|
- `BoolDeserializer<E>` with <''de, E>
|
||
|
|
- `i8` with <''de, E>
|
||
|
|
- `I8Deserializer<E>` with <''de, E>
|
||
|
|
- `i16` with <''de, E>
|
||
|
|
- `I16Deserializer<E>` with <''de, E>
|
||
|
|
- `i32` with <''de, E>
|
||
|
|
- `I32Deserializer<E>` with <''de, E>
|
||
|
|
- `i64` with <''de, E>
|
||
|
|
- `I64Deserializer<E>` with <''de, E>
|
||
|
|
- `i128` with <''de, E>
|
||
|
|
- `I128Deserializer<E>` with <''de, E>
|
||
|
|
- `isize` with <''de, E>
|
||
|
|
- `IsizeDeserializer<E>` with <''de, E>
|
||
|
|
- `u8` with <''de, E>
|
||
|
|
- `U8Deserializer<E>` with <''de, E>
|
||
|
|
- `u16` with <''de, E>
|
||
|
|
- `U16Deserializer<E>` with <''de, E>
|
||
|
|
- `u64` with <''de, E>
|
||
|
|
- `U64Deserializer<E>` with <''de, E>
|
||
|
|
- `u128` with <''de, E>
|
||
|
|
- `U128Deserializer<E>` with <''de, E>
|
||
|
|
- `usize` with <''de, E>
|
||
|
|
- `UsizeDeserializer<E>` with <''de, E>
|
||
|
|
- `f32` with <''de, E>
|
||
|
|
- `F32Deserializer<E>` with <''de, E>
|
||
|
|
- `f64` with <''de, E>
|
||
|
|
- `F64Deserializer<E>` with <''de, E>
|
||
|
|
- `char` with <''de, E>
|
||
|
|
- `CharDeserializer<E>` with <''de, E>
|
||
|
|
- `u32` with <''de, E>
|
||
|
|
- `U32Deserializer<E>` with <''de, E>
|
||
|
|
- `&''a str` with <''de, ''a, E>
|
||
|
|
- `StrDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `BorrowedStrDeserializer<''de, E>` with <''de, E>
|
||
|
|
- `String` with <''de, E>
|
||
|
|
- `StringDeserializer<E>` with <''de, E>
|
||
|
|
- `Cow<''a, str>` with <''de, ''a, E>
|
||
|
|
- `CowStrDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `&''a [u8]` with <''de, ''a, E>
|
||
|
|
- `BytesDeserializer<''a, E>` with <''de, ''a, E>
|
||
|
|
- `BorrowedBytesDeserializer<''de, E>` with <''de, E>
|
||
|
|
- `SeqDeserializer<I, E>` with <''de, I, T, E>
|
||
|
|
- `Vec<T>` with <''de, T, E>
|
||
|
|
- `BTreeSet<T>` with <''de, T, E>
|
||
|
|
- `HashSet<T, S>` with <''de, T, S, E>
|
||
|
|
- `SeqAccessDeserializer<A>` with <''de, A>
|
||
|
|
- `MapDeserializer<''de, I, E>` with <''de, I, E>
|
||
|
|
- `BTreeMap<K, V>` with <''de, K, V, E>
|
||
|
|
- `HashMap<K, V, S>` with <''de, K, V, S, E>
|
||
|
|
- `MapAccessDeserializer<A>` with <''de, A>
|
||
|
|
- `EnumAccessDeserializer<A>` with <''de, A>
|
||
|
|
|
||
|
|
### Re-exports
|
||
|
|
|
||
|
|
#### Re-export `IgnoredAny`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use self::ignored_any::IgnoredAny;
|
||
|
|
```
|
||
|
|
|
||
|
|
#### Re-export `Error`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(feature = \"std\")]")`
|
||
|
|
- `Other("#[doc(no_inline)]")`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use std::error::Error as StdError;
|
||
|
|
```
|
||
|
|
|
||
|
|
## Module `ser`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(all(docsrs, if_docsrs_then_no_serde_core), path =\n\"core/ser/mod.rs\")]")`
|
||
|
|
- `Other("#[attr = Path(\"core/ser/mod.rs\")]")`
|
||
|
|
|
||
|
|
Generic data structure serialization framework.
|
||
|
|
|
||
|
|
The two most important traits in this module are [`Serialize`] and
|
||
|
|
[`Serializer`].
|
||
|
|
|
||
|
|
- **A type that implements `Serialize` is a data structure** that can be
|
||
|
|
serialized to any data format supported by Serde, and conversely
|
||
|
|
- **A type that implements `Serializer` is a data format** that can
|
||
|
|
serialize any data structure supported by Serde.
|
||
|
|
|
||
|
|
# The Serialize trait
|
||
|
|
|
||
|
|
Serde provides [`Serialize`] implementations for many Rust primitive and
|
||
|
|
standard library types. The complete list is below. All of these can be
|
||
|
|
serialized using Serde out of the box.
|
||
|
|
|
||
|
|
Additionally, Serde provides a procedural macro called [`serde_derive`] to
|
||
|
|
automatically generate [`Serialize`] implementations for structs and enums
|
||
|
|
in your program. See the [derive section of the manual] for how to use this.
|
||
|
|
|
||
|
|
In rare cases it may be necessary to implement [`Serialize`] manually for
|
||
|
|
some type in your program. See the [Implementing `Serialize`] section of the
|
||
|
|
manual for more about this.
|
||
|
|
|
||
|
|
Third-party crates may provide [`Serialize`] implementations for types that
|
||
|
|
they expose. For example the [`linked-hash-map`] crate provides a
|
||
|
|
[`LinkedHashMap<K, V>`] type that is serializable by Serde because the crate
|
||
|
|
provides an implementation of [`Serialize`] for it.
|
||
|
|
|
||
|
|
# The Serializer trait
|
||
|
|
|
||
|
|
[`Serializer`] implementations are provided by third-party crates, for
|
||
|
|
example [`serde_json`], [`serde_yaml`] and [`postcard`].
|
||
|
|
|
||
|
|
A partial list of well-maintained formats is given on the [Serde
|
||
|
|
website][data formats].
|
||
|
|
|
||
|
|
# Implementations of Serialize provided by Serde
|
||
|
|
|
||
|
|
- **Primitive types**:
|
||
|
|
- bool
|
||
|
|
- i8, i16, i32, i64, i128, isize
|
||
|
|
- u8, u16, u32, u64, u128, usize
|
||
|
|
- f32, f64
|
||
|
|
- char
|
||
|
|
- str
|
||
|
|
- &T and &mut T
|
||
|
|
- **Compound types**:
|
||
|
|
- \[T\]
|
||
|
|
- \[T; 0\] through \[T; 32\]
|
||
|
|
- tuples up to size 16
|
||
|
|
- **Common standard library types**:
|
||
|
|
- String
|
||
|
|
- Option\<T\>
|
||
|
|
- Result\<T, E\>
|
||
|
|
- PhantomData\<T\>
|
||
|
|
- **Wrapper types**:
|
||
|
|
- Box\<T\>
|
||
|
|
- Cow\<'a, T\>
|
||
|
|
- Cell\<T\>
|
||
|
|
- RefCell\<T\>
|
||
|
|
- Mutex\<T\>
|
||
|
|
- RwLock\<T\>
|
||
|
|
- Rc\<T\> *(if* features = \["rc"\] *is enabled)*
|
||
|
|
- Arc\<T\> *(if* features = \["rc"\] *is enabled)*
|
||
|
|
- **Collection types**:
|
||
|
|
- BTreeMap\<K, V\>
|
||
|
|
- BTreeSet\<T\>
|
||
|
|
- BinaryHeap\<T\>
|
||
|
|
- HashMap\<K, V, H\>
|
||
|
|
- HashSet\<T, H\>
|
||
|
|
- LinkedList\<T\>
|
||
|
|
- VecDeque\<T\>
|
||
|
|
- Vec\<T\>
|
||
|
|
- **FFI types**:
|
||
|
|
- CStr
|
||
|
|
- CString
|
||
|
|
- OsStr
|
||
|
|
- OsString
|
||
|
|
- **Miscellaneous standard library types**:
|
||
|
|
- Duration
|
||
|
|
- SystemTime
|
||
|
|
- Path
|
||
|
|
- PathBuf
|
||
|
|
- Range\<T\>
|
||
|
|
- RangeInclusive\<T\>
|
||
|
|
- Bound\<T\>
|
||
|
|
- num::NonZero*
|
||
|
|
- `!` *(unstable)*
|
||
|
|
- **Net types**:
|
||
|
|
- IpAddr
|
||
|
|
- Ipv4Addr
|
||
|
|
- Ipv6Addr
|
||
|
|
- SocketAddr
|
||
|
|
- SocketAddrV4
|
||
|
|
- SocketAddrV6
|
||
|
|
|
||
|
|
[Implementing `Serialize`]: https://serde.rs/impl-serialize.html
|
||
|
|
[`LinkedHashMap<K, V>`]: https://docs.rs/linked-hash-map/*/linked_hash_map/struct.LinkedHashMap.html
|
||
|
|
[`Serialize`]: crate::Serialize
|
||
|
|
[`Serializer`]: crate::Serializer
|
||
|
|
[`postcard`]: https://github.com/jamesmunns/postcard
|
||
|
|
[`linked-hash-map`]: https://crates.io/crates/linked-hash-map
|
||
|
|
[`serde_derive`]: https://crates.io/crates/serde_derive
|
||
|
|
[`serde_json`]: https://github.com/serde-rs/json
|
||
|
|
[`serde_yaml`]: https://github.com/dtolnay/serde-yaml
|
||
|
|
[derive section of the manual]: https://serde.rs/derive.html
|
||
|
|
[data formats]: https://serde.rs/#data-formats
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub mod ser { /* ... */ }
|
||
|
|
```
|
||
|
|
|
||
|
|
### Traits
|
||
|
|
|
||
|
|
#### Trait `Error`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace), diagnostic ::\non_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::Error` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::Error` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Trait used by `Serialize` implementations to generically construct
|
||
|
|
errors belonging to the `Serializer` against which they are
|
||
|
|
currently running.
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website shows an error
|
||
|
|
type appropriate for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Error: Sized + StdError {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `custom`: Used when a [`Serialize`] implementation encounters any error
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Error`
|
||
|
|
- `fmt::Error`
|
||
|
|
|
||
|
|
#### Trait `Serialize`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::Serialize` is not satisfied\", note =\n\"for local types consider adding `#[derive(serde::Serialize)]` to your `{Self}` type\",\nnote =\n\"for types from other crates check whether the crate offers a `serde` feature flag\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::Serialize` is not satisfied\", note =\n\"for local types consider adding `#[derive(serde::Serialize)]` to your `{Self}` type\",\nnote =\n\"for types from other crates check whether the crate offers a `serde` feature flag\",)]")`
|
||
|
|
|
||
|
|
A **data structure** that can be serialized into any data format supported
|
||
|
|
by Serde.
|
||
|
|
|
||
|
|
Serde provides `Serialize` implementations for many Rust primitive and
|
||
|
|
standard library types. The complete list is [here][crate::ser]. All of
|
||
|
|
these can be serialized using Serde out of the box.
|
||
|
|
|
||
|
|
Additionally, Serde provides a procedural macro called [`serde_derive`] to
|
||
|
|
automatically generate `Serialize` implementations for structs and enums in
|
||
|
|
your program. See the [derive section of the manual] for how to use this.
|
||
|
|
|
||
|
|
In rare cases it may be necessary to implement `Serialize` manually for some
|
||
|
|
type in your program. See the [Implementing `Serialize`] section of the
|
||
|
|
manual for more about this.
|
||
|
|
|
||
|
|
Third-party crates may provide `Serialize` implementations for types that
|
||
|
|
they expose. For example the [`linked-hash-map`] crate provides a
|
||
|
|
[`LinkedHashMap<K, V>`] type that is serializable by Serde because the crate
|
||
|
|
provides an implementation of `Serialize` for it.
|
||
|
|
|
||
|
|
[Implementing `Serialize`]: https://serde.rs/impl-serialize.html
|
||
|
|
[`LinkedHashMap<K, V>`]: https://docs.rs/linked-hash-map/*/linked_hash_map/struct.LinkedHashMap.html
|
||
|
|
[`linked-hash-map`]: https://crates.io/crates/linked-hash-map
|
||
|
|
[`serde_derive`]: https://crates.io/crates/serde_derive
|
||
|
|
[derive section of the manual]: https://serde.rs/derive.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Serialize {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize`: Serialize this value into the given Serde serializer.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `bool`
|
||
|
|
- `isize`
|
||
|
|
- `i8`
|
||
|
|
- `i16`
|
||
|
|
- `i32`
|
||
|
|
- `i64`
|
||
|
|
- `i128`
|
||
|
|
- `usize`
|
||
|
|
- `u8`
|
||
|
|
- `u16`
|
||
|
|
- `u32`
|
||
|
|
- `u64`
|
||
|
|
- `u128`
|
||
|
|
- `f32`
|
||
|
|
- `f64`
|
||
|
|
- `char`
|
||
|
|
- `str`
|
||
|
|
- `String`
|
||
|
|
- `fmt::Arguments<''a>` with <''a>
|
||
|
|
- `CStr`
|
||
|
|
- `CString`
|
||
|
|
- `Option<T>` with <T>
|
||
|
|
- `PhantomData<T>` with <T>
|
||
|
|
- `[T; 0]` with <T>
|
||
|
|
- `[T; 1]` with <T>
|
||
|
|
- `[T; 2]` with <T>
|
||
|
|
- `[T; 3]` with <T>
|
||
|
|
- `[T; 4]` with <T>
|
||
|
|
- `[T; 5]` with <T>
|
||
|
|
- `[T; 6]` with <T>
|
||
|
|
- `[T; 7]` with <T>
|
||
|
|
- `[T; 8]` with <T>
|
||
|
|
- `[T; 9]` with <T>
|
||
|
|
- `[T; 10]` with <T>
|
||
|
|
- `[T; 11]` with <T>
|
||
|
|
- `[T; 12]` with <T>
|
||
|
|
- `[T; 13]` with <T>
|
||
|
|
- `[T; 14]` with <T>
|
||
|
|
- `[T; 15]` with <T>
|
||
|
|
- `[T; 16]` with <T>
|
||
|
|
- `[T; 17]` with <T>
|
||
|
|
- `[T; 18]` with <T>
|
||
|
|
- `[T; 19]` with <T>
|
||
|
|
- `[T; 20]` with <T>
|
||
|
|
- `[T; 21]` with <T>
|
||
|
|
- `[T; 22]` with <T>
|
||
|
|
- `[T; 23]` with <T>
|
||
|
|
- `[T; 24]` with <T>
|
||
|
|
- `[T; 25]` with <T>
|
||
|
|
- `[T; 26]` with <T>
|
||
|
|
- `[T; 27]` with <T>
|
||
|
|
- `[T; 28]` with <T>
|
||
|
|
- `[T; 29]` with <T>
|
||
|
|
- `[T; 30]` with <T>
|
||
|
|
- `[T; 31]` with <T>
|
||
|
|
- `[T; 32]` with <T>
|
||
|
|
- `[T]` with <T>
|
||
|
|
- `BinaryHeap<T>` with <T>
|
||
|
|
- `BTreeSet<T>` with <T>
|
||
|
|
- `HashSet<T, H>` with <T, H>
|
||
|
|
- `LinkedList<T>` with <T>
|
||
|
|
- `Vec<T>` with <T>
|
||
|
|
- `VecDeque<T>` with <T>
|
||
|
|
- `Range<Idx>` with <Idx>
|
||
|
|
- `RangeFrom<Idx>` with <Idx>
|
||
|
|
- `RangeInclusive<Idx>` with <Idx>
|
||
|
|
- `RangeTo<Idx>` with <Idx>
|
||
|
|
- `Bound<T>` with <T>
|
||
|
|
- `()`
|
||
|
|
- `never`
|
||
|
|
- `(T)` with <T>
|
||
|
|
- `BTreeMap<K, V>` with <K, V>
|
||
|
|
- `HashMap<K, V, H>` with <K, V, H>
|
||
|
|
- `&''a T` with <''a, T>
|
||
|
|
- `&''a mut T` with <''a, T>
|
||
|
|
- `Box<T>` with <T>
|
||
|
|
- `Rc<T>` with <T>
|
||
|
|
- `Arc<T>` with <T>
|
||
|
|
- `Cow<''a, T>` with <''a, T>
|
||
|
|
- `RcWeak<T>` with <T>
|
||
|
|
- `ArcWeak<T>` with <T>
|
||
|
|
- `num::NonZeroI8`
|
||
|
|
- `num::NonZeroI16`
|
||
|
|
- `num::NonZeroI32`
|
||
|
|
- `num::NonZeroI64`
|
||
|
|
- `num::NonZeroI128`
|
||
|
|
- `num::NonZeroIsize`
|
||
|
|
- `num::NonZeroU8`
|
||
|
|
- `num::NonZeroU16`
|
||
|
|
- `num::NonZeroU32`
|
||
|
|
- `num::NonZeroU64`
|
||
|
|
- `num::NonZeroU128`
|
||
|
|
- `num::NonZeroUsize`
|
||
|
|
- `Cell<T>` with <T>
|
||
|
|
- `RefCell<T>` with <T>
|
||
|
|
- `Mutex<T>` with <T>
|
||
|
|
- `RwLock<T>` with <T>
|
||
|
|
- `Duration`
|
||
|
|
- `SystemTime`
|
||
|
|
- `net::IpAddr`
|
||
|
|
- `net::Ipv4Addr`
|
||
|
|
- `net::Ipv6Addr`
|
||
|
|
- `net::SocketAddr`
|
||
|
|
- `net::SocketAddrV4`
|
||
|
|
- `net::SocketAddrV6`
|
||
|
|
- `Path`
|
||
|
|
- `PathBuf`
|
||
|
|
- `OsStr`
|
||
|
|
- `OsString`
|
||
|
|
- `Wrapping<T>` with <T>
|
||
|
|
- `Saturating<T>` with <T>
|
||
|
|
- `Reverse<T>` with <T>
|
||
|
|
- `AtomicBool`
|
||
|
|
- `AtomicI8`
|
||
|
|
- `AtomicI16`
|
||
|
|
- `AtomicI32`
|
||
|
|
- `AtomicIsize`
|
||
|
|
- `AtomicU8`
|
||
|
|
- `AtomicU16`
|
||
|
|
- `AtomicU32`
|
||
|
|
- `AtomicUsize`
|
||
|
|
- `AtomicI64`
|
||
|
|
- `AtomicU64`
|
||
|
|
|
||
|
|
#### Trait `Serializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::Serializer` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::Serializer` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
A **data format** that can serialize any data structure supported by Serde.
|
||
|
|
|
||
|
|
The role of this trait is to define the serialization half of the [Serde
|
||
|
|
data model], which is a way to categorize every Rust data structure into one
|
||
|
|
of 29 possible types. Each method of the `Serializer` trait corresponds to
|
||
|
|
one of the types of the data model.
|
||
|
|
|
||
|
|
Implementations of `Serialize` map themselves into this data model by
|
||
|
|
invoking exactly one of the `Serializer` methods.
|
||
|
|
|
||
|
|
The types that make up the Serde data model are:
|
||
|
|
|
||
|
|
- **14 primitive types**
|
||
|
|
- bool
|
||
|
|
- i8, i16, i32, i64, i128
|
||
|
|
- u8, u16, u32, u64, u128
|
||
|
|
- f32, f64
|
||
|
|
- char
|
||
|
|
- **string**
|
||
|
|
- UTF-8 bytes with a length and no null terminator.
|
||
|
|
- When serializing, all strings are handled equally. When deserializing,
|
||
|
|
there are three flavors of strings: transient, owned, and borrowed.
|
||
|
|
- **byte array** - \[u8\]
|
||
|
|
- Similar to strings, during deserialization byte arrays can be
|
||
|
|
transient, owned, or borrowed.
|
||
|
|
- **option**
|
||
|
|
- Either none or some value.
|
||
|
|
- **unit**
|
||
|
|
- The type of `()` in Rust. It represents an anonymous value containing
|
||
|
|
no data.
|
||
|
|
- **unit_struct**
|
||
|
|
- For example `struct Unit` or `PhantomData<T>`. It represents a named
|
||
|
|
value containing no data.
|
||
|
|
- **unit_variant**
|
||
|
|
- For example the `E::A` and `E::B` in `enum E { A, B }`.
|
||
|
|
- **newtype_struct**
|
||
|
|
- For example `struct Millimeters(u8)`.
|
||
|
|
- **newtype_variant**
|
||
|
|
- For example the `E::N` in `enum E { N(u8) }`.
|
||
|
|
- **seq**
|
||
|
|
- A variably sized heterogeneous sequence of values, for example
|
||
|
|
`Vec<T>` or `HashSet<T>`. When serializing, the length may or may not
|
||
|
|
be known before iterating through all the data. When deserializing,
|
||
|
|
the length is determined by looking at the serialized data.
|
||
|
|
- **tuple**
|
||
|
|
- A statically sized heterogeneous sequence of values for which the
|
||
|
|
length will be known at deserialization time without looking at the
|
||
|
|
serialized data, for example `(u8,)` or `(String, u64, Vec<T>)` or
|
||
|
|
`[u64; 10]`.
|
||
|
|
- **tuple_struct**
|
||
|
|
- A named tuple, for example `struct Rgb(u8, u8, u8)`.
|
||
|
|
- **tuple_variant**
|
||
|
|
- For example the `E::T` in `enum E { T(u8, u8) }`.
|
||
|
|
- **map**
|
||
|
|
- A heterogeneous key-value pairing, for example `BTreeMap<K, V>`.
|
||
|
|
- **struct**
|
||
|
|
- A heterogeneous key-value pairing in which the keys are strings and
|
||
|
|
will be known at deserialization time without looking at the
|
||
|
|
serialized data, for example `struct S { r: u8, g: u8, b: u8 }`.
|
||
|
|
- **struct_variant**
|
||
|
|
- For example the `E::S` in `enum E { S { r: u8, g: u8, b: u8 } }`.
|
||
|
|
|
||
|
|
Many Serde serializers produce text or binary data as output, for example
|
||
|
|
JSON or Postcard. This is not a requirement of the `Serializer` trait, and
|
||
|
|
there are serializers that do not produce text or binary output. One example
|
||
|
|
is the `serde_json::value::Serializer` (distinct from the main `serde_json`
|
||
|
|
serializer) that produces a `serde_json::Value` data structure in memory as
|
||
|
|
output.
|
||
|
|
|
||
|
|
[Serde data model]: https://serde.rs/data-model.html
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website contains example code for
|
||
|
|
a basic JSON `Serializer`.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait Serializer: Sized {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: The output type produced by this `Serializer` during successful
|
||
|
|
- `Error`: The error type when some error occurs during serialization.
|
||
|
|
- `SerializeSeq`: Type returned from [`serialize_seq`] for serializing the content of the
|
||
|
|
- `SerializeTuple`: Type returned from [`serialize_tuple`] for serializing the content of
|
||
|
|
- `SerializeTupleStruct`: Type returned from [`serialize_tuple_struct`] for serializing the
|
||
|
|
- `SerializeTupleVariant`: Type returned from [`serialize_tuple_variant`] for serializing the
|
||
|
|
- `SerializeMap`: Type returned from [`serialize_map`] for serializing the content of the
|
||
|
|
- `SerializeStruct`: Type returned from [`serialize_struct`] for serializing the content of
|
||
|
|
- `SerializeStructVariant`: Type returned from [`serialize_struct_variant`] for serializing the
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_bool`: Serialize a `bool` value.
|
||
|
|
- `serialize_i8`: Serialize an `i8` value.
|
||
|
|
- `serialize_i16`: Serialize an `i16` value.
|
||
|
|
- `serialize_i32`: Serialize an `i32` value.
|
||
|
|
- `serialize_i64`: Serialize an `i64` value.
|
||
|
|
- `serialize_u8`: Serialize a `u8` value.
|
||
|
|
- `serialize_u16`: Serialize a `u16` value.
|
||
|
|
- `serialize_u32`: Serialize a `u32` value.
|
||
|
|
- `serialize_u64`: Serialize a `u64` value.
|
||
|
|
- `serialize_f32`: Serialize an `f32` value.
|
||
|
|
- `serialize_f64`: Serialize an `f64` value.
|
||
|
|
- `serialize_char`: Serialize a character.
|
||
|
|
- `serialize_str`: Serialize a `&str`.
|
||
|
|
- `serialize_bytes`: Serialize a chunk of raw byte data.
|
||
|
|
- `serialize_none`: Serialize a [`None`] value.
|
||
|
|
- `serialize_some`: Serialize a [`Some(T)`] value.
|
||
|
|
- `serialize_unit`: Serialize a `()` value.
|
||
|
|
- `serialize_unit_struct`: Serialize a unit struct like `struct Unit` or `PhantomData<T>`.
|
||
|
|
- `serialize_unit_variant`: Serialize a unit variant like `E::A` in `enum E { A, B }`.
|
||
|
|
- `serialize_newtype_struct`: Serialize a newtype struct like `struct Millimeters(u8)`.
|
||
|
|
- `serialize_newtype_variant`: Serialize a newtype variant like `E::N` in `enum E { N(u8) }`.
|
||
|
|
- `serialize_seq`: Begin to serialize a variably sized sequence. This call must be
|
||
|
|
- `serialize_tuple`: Begin to serialize a statically sized sequence whose length will be
|
||
|
|
- `serialize_tuple_struct`: Begin to serialize a tuple struct like `struct Rgb(u8, u8, u8)`. This
|
||
|
|
- `serialize_tuple_variant`: Begin to serialize a tuple variant like `E::T` in `enum E { T(u8, u8)
|
||
|
|
- `serialize_map`: Begin to serialize a map. This call must be followed by zero or more
|
||
|
|
- `serialize_struct`: Begin to serialize a struct like `struct Rgb { r: u8, g: u8, b: u8 }`.
|
||
|
|
- `serialize_struct_variant`: Begin to serialize a struct variant like `E::S` in `enum E { S { r: u8,
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn serialize_i128(self: Self, v: i128) -> Result<<Self as >::Ok, <Self as >::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
Serialize an `i128` value.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn serialize_u128(self: Self, v: u128) -> Result<<Self as >::Ok, <Self as >::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
Serialize a `u128` value.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn collect_seq<I>(self: Self, iter: I) -> Result<<Self as >::Ok, <Self as >::Error>
|
||
|
|
where
|
||
|
|
I: IntoIterator,
|
||
|
|
<I as IntoIterator>::Item: Serialize { /* ... */ }
|
||
|
|
```
|
||
|
|
Collect an iterator as a sequence.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn collect_map<K, V, I>(self: Self, iter: I) -> Result<<Self as >::Ok, <Self as >::Error>
|
||
|
|
where
|
||
|
|
K: Serialize,
|
||
|
|
V: Serialize,
|
||
|
|
I: IntoIterator<Item = (K, V)> { /* ... */ }
|
||
|
|
```
|
||
|
|
Collect an iterator as a map.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn collect_str<T>(self: Self, value: &T) -> Result<<Self as >::Ok, <Self as >::Error>
|
||
|
|
where
|
||
|
|
T: ?Sized + Display { /* ... */ }
|
||
|
|
```
|
||
|
|
Serialize a string produced by an implementation of `Display`.
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn is_human_readable(self: &Self) -> bool { /* ... */ }
|
||
|
|
```
|
||
|
|
Determine whether `Serialize` implementations should serialize in
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `&mut fmt::Formatter<''a>` with <''a>
|
||
|
|
|
||
|
|
#### Trait `SerializeSeq`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeSeq` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeSeq` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_seq`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use std::marker::PhantomData;
|
||
|
|
#
|
||
|
|
# struct Vec<T>(PhantomData<T>);
|
||
|
|
#
|
||
|
|
# impl<T> Vec<T> {
|
||
|
|
# fn len(&self) -> usize {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
# impl<'a, T> IntoIterator for &'a Vec<T> {
|
||
|
|
# type Item = &'a T;
|
||
|
|
# type IntoIter = Box<dyn Iterator<Item = &'a T>>;
|
||
|
|
# fn into_iter(self) -> Self::IntoIter {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
use serde::ser::{Serialize, SerializeSeq, Serializer};
|
||
|
|
|
||
|
|
impl<T> Serialize for Vec<T>
|
||
|
|
where
|
||
|
|
T: Serialize,
|
||
|
|
{
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
let mut seq = serializer.serialize_seq(Some(self.len()))?;
|
||
|
|
for element in self {
|
||
|
|
seq.serialize_element(element)?;
|
||
|
|
}
|
||
|
|
seq.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeSeq` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeSeq {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_element`: Serialize a sequence element.
|
||
|
|
- `end`: Finish serializing a sequence.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
#### Trait `SerializeTuple`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeTuple` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeTuple` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_tuple`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::ser::{Serialize, SerializeTuple, Serializer};
|
||
|
|
|
||
|
|
# mod fool {
|
||
|
|
# trait Serialize {}
|
||
|
|
impl<A, B, C> Serialize for (A, B, C)
|
||
|
|
# {}
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
# struct Tuple3<A, B, C>(A, B, C);
|
||
|
|
#
|
||
|
|
# impl<A, B, C> Serialize for Tuple3<A, B, C>
|
||
|
|
where
|
||
|
|
A: Serialize,
|
||
|
|
B: Serialize,
|
||
|
|
C: Serialize,
|
||
|
|
{
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
let mut tup = serializer.serialize_tuple(3)?;
|
||
|
|
tup.serialize_element(&self.0)?;
|
||
|
|
tup.serialize_element(&self.1)?;
|
||
|
|
tup.serialize_element(&self.2)?;
|
||
|
|
tup.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use std::marker::PhantomData;
|
||
|
|
#
|
||
|
|
# struct Array<T>(PhantomData<T>);
|
||
|
|
#
|
||
|
|
# impl<T> Array<T> {
|
||
|
|
# fn len(&self) -> usize {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
# impl<'a, T> IntoIterator for &'a Array<T> {
|
||
|
|
# type Item = &'a T;
|
||
|
|
# type IntoIter = Box<dyn Iterator<Item = &'a T>>;
|
||
|
|
# fn into_iter(self) -> Self::IntoIter {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
use serde::ser::{Serialize, SerializeTuple, Serializer};
|
||
|
|
|
||
|
|
# mod fool {
|
||
|
|
# trait Serialize {}
|
||
|
|
impl<T> Serialize for [T; 16]
|
||
|
|
# {}
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
# impl<T> Serialize for Array<T>
|
||
|
|
where
|
||
|
|
T: Serialize,
|
||
|
|
{
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
let mut seq = serializer.serialize_tuple(16)?;
|
||
|
|
for element in self {
|
||
|
|
seq.serialize_element(element)?;
|
||
|
|
}
|
||
|
|
seq.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeTuple` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeTuple {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_element`: Serialize a tuple element.
|
||
|
|
- `end`: Finish serializing a tuple.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
#### Trait `SerializeTupleStruct`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeTupleStruct` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeTupleStruct` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_tuple_struct`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::ser::{Serialize, SerializeTupleStruct, Serializer};
|
||
|
|
|
||
|
|
struct Rgb(u8, u8, u8);
|
||
|
|
|
||
|
|
impl Serialize for Rgb {
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
let mut ts = serializer.serialize_tuple_struct("Rgb", 3)?;
|
||
|
|
ts.serialize_field(&self.0)?;
|
||
|
|
ts.serialize_field(&self.1)?;
|
||
|
|
ts.serialize_field(&self.2)?;
|
||
|
|
ts.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeTupleStruct` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeTupleStruct {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_field`: Serialize a tuple struct field.
|
||
|
|
- `end`: Finish serializing a tuple struct.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
#### Trait `SerializeTupleVariant`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeTupleVariant` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeTupleVariant` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_tuple_variant`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::ser::{Serialize, SerializeTupleVariant, Serializer};
|
||
|
|
|
||
|
|
enum E {
|
||
|
|
T(u8, u8),
|
||
|
|
U(String, u32, u32),
|
||
|
|
}
|
||
|
|
|
||
|
|
impl Serialize for E {
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
match *self {
|
||
|
|
E::T(ref a, ref b) => {
|
||
|
|
let mut tv = serializer.serialize_tuple_variant("E", 0, "T", 2)?;
|
||
|
|
tv.serialize_field(a)?;
|
||
|
|
tv.serialize_field(b)?;
|
||
|
|
tv.end()
|
||
|
|
}
|
||
|
|
E::U(ref a, ref b, ref c) => {
|
||
|
|
let mut tv = serializer.serialize_tuple_variant("E", 1, "U", 3)?;
|
||
|
|
tv.serialize_field(a)?;
|
||
|
|
tv.serialize_field(b)?;
|
||
|
|
tv.serialize_field(c)?;
|
||
|
|
tv.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeTupleVariant` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeTupleVariant {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_field`: Serialize a tuple variant field.
|
||
|
|
- `end`: Finish serializing a tuple variant.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
#### Trait `SerializeMap`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeMap` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeMap` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_map`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use std::marker::PhantomData;
|
||
|
|
#
|
||
|
|
# struct HashMap<K, V>(PhantomData<K>, PhantomData<V>);
|
||
|
|
#
|
||
|
|
# impl<K, V> HashMap<K, V> {
|
||
|
|
# fn len(&self) -> usize {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
# impl<'a, K, V> IntoIterator for &'a HashMap<K, V> {
|
||
|
|
# type Item = (&'a K, &'a V);
|
||
|
|
# type IntoIter = Box<dyn Iterator<Item = (&'a K, &'a V)>>;
|
||
|
|
#
|
||
|
|
# fn into_iter(self) -> Self::IntoIter {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
use serde::ser::{Serialize, SerializeMap, Serializer};
|
||
|
|
|
||
|
|
impl<K, V> Serialize for HashMap<K, V>
|
||
|
|
where
|
||
|
|
K: Serialize,
|
||
|
|
V: Serialize,
|
||
|
|
{
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
let mut map = serializer.serialize_map(Some(self.len()))?;
|
||
|
|
for (k, v) in self {
|
||
|
|
map.serialize_entry(k, v)?;
|
||
|
|
}
|
||
|
|
map.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeMap` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeMap {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_key`: Serialize a map key.
|
||
|
|
- `serialize_value`: Serialize a map value.
|
||
|
|
- `end`: Finish serializing a map.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn serialize_entry<K, V>(self: &mut Self, key: &K, value: &V) -> Result<(), <Self as >::Error>
|
||
|
|
where
|
||
|
|
K: ?Sized + Serialize,
|
||
|
|
V: ?Sized + Serialize { /* ... */ }
|
||
|
|
```
|
||
|
|
Serialize a map entry consisting of a key and a value.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
#### Trait `SerializeStruct`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeStruct` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeStruct` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_struct`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::ser::{Serialize, SerializeStruct, Serializer};
|
||
|
|
|
||
|
|
struct Rgb {
|
||
|
|
r: u8,
|
||
|
|
g: u8,
|
||
|
|
b: u8,
|
||
|
|
}
|
||
|
|
|
||
|
|
impl Serialize for Rgb {
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
let mut rgb = serializer.serialize_struct("Rgb", 3)?;
|
||
|
|
rgb.serialize_field("r", &self.r)?;
|
||
|
|
rgb.serialize_field("g", &self.g)?;
|
||
|
|
rgb.serialize_field("b", &self.b)?;
|
||
|
|
rgb.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeStruct` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeStruct {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_field`: Serialize a struct field.
|
||
|
|
- `end`: Finish serializing a struct.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn skip_field(self: &mut Self, key: &''static str) -> Result<(), <Self as >::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
Indicate that a struct field has been skipped.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
#### Trait `SerializeStructVariant`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg_attr>(not(no_diagnostic_namespace),\ndiagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeStructVariant` is not satisfied\",))]")`
|
||
|
|
- `Other("#[diagnostic::on_unimplemented(message =\n\"the trait bound `{Self}: serde::ser::SerializeStructVariant` is not satisfied\",)]")`
|
||
|
|
|
||
|
|
Returned from `Serializer::serialize_struct_variant`.
|
||
|
|
|
||
|
|
# Example use
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
use serde::ser::{Serialize, SerializeStructVariant, Serializer};
|
||
|
|
|
||
|
|
enum E {
|
||
|
|
S { r: u8, g: u8, b: u8 },
|
||
|
|
}
|
||
|
|
|
||
|
|
impl Serialize for E {
|
||
|
|
fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
|
||
|
|
where
|
||
|
|
S: Serializer,
|
||
|
|
{
|
||
|
|
match *self {
|
||
|
|
E::S {
|
||
|
|
ref r,
|
||
|
|
ref g,
|
||
|
|
ref b,
|
||
|
|
} => {
|
||
|
|
let mut sv = serializer.serialize_struct_variant("E", 0, "S", 3)?;
|
||
|
|
sv.serialize_field("r", r)?;
|
||
|
|
sv.serialize_field("g", g)?;
|
||
|
|
sv.serialize_field("b", b)?;
|
||
|
|
sv.end()
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
# Example implementation
|
||
|
|
|
||
|
|
The [example data format] presented on the website demonstrates an
|
||
|
|
implementation of `SerializeStructVariant` for a basic JSON data format.
|
||
|
|
|
||
|
|
[example data format]: https://serde.rs/data-format.html
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub trait SerializeStructVariant {
|
||
|
|
/* Associated items */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
> This trait is not object-safe and cannot be used in dynamic trait objects.
|
||
|
|
|
||
|
|
##### Required Items
|
||
|
|
|
||
|
|
###### Associated Types
|
||
|
|
|
||
|
|
- `Ok`: Must match the `Ok` type of our `Serializer`.
|
||
|
|
- `Error`: Must match the `Error` type of our `Serializer`.
|
||
|
|
|
||
|
|
###### Required Methods
|
||
|
|
|
||
|
|
- `serialize_field`: Serialize a struct variant field.
|
||
|
|
- `end`: Finish serializing a struct variant.
|
||
|
|
|
||
|
|
##### Provided Methods
|
||
|
|
|
||
|
|
- ```rust
|
||
|
|
fn skip_field(self: &mut Self, key: &''static str) -> Result<(), <Self as >::Error> { /* ... */ }
|
||
|
|
```
|
||
|
|
Indicate that a struct variant field has been skipped.
|
||
|
|
|
||
|
|
##### Implementations
|
||
|
|
|
||
|
|
This trait is implemented for the following types:
|
||
|
|
|
||
|
|
- `Impossible<Ok, Error>` with <Ok, Error>
|
||
|
|
|
||
|
|
### Re-exports
|
||
|
|
|
||
|
|
#### Re-export `Impossible`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use self::impossible::Impossible;
|
||
|
|
```
|
||
|
|
|
||
|
|
#### Re-export `Error`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(feature = \"std\")]")`
|
||
|
|
- `Other("#[doc(no_inline)]")`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use std::error::Error as StdError;
|
||
|
|
```
|
||
|
|
|
||
|
|
## Macros
|
||
|
|
|
||
|
|
### Macro `forward_to_deserialize_any`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `MacroExport`
|
||
|
|
|
||
|
|
Helper macro when implementing the `Deserializer` part of a new data format
|
||
|
|
for Serde.
|
||
|
|
|
||
|
|
Some [`Deserializer`] implementations for self-describing formats do not
|
||
|
|
care what hint the [`Visitor`] gives them, they just want to blindly call
|
||
|
|
the [`Visitor`] method corresponding to the data they can tell is in the
|
||
|
|
input. This requires repetitive implementations of all the [`Deserializer`]
|
||
|
|
trait methods.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::forward_to_deserialize_any;
|
||
|
|
# use serde::de::{value, Deserializer, Visitor};
|
||
|
|
#
|
||
|
|
# struct MyDeserializer;
|
||
|
|
#
|
||
|
|
# impl<'de> Deserializer<'de> for MyDeserializer {
|
||
|
|
# type Error = value::Error;
|
||
|
|
#
|
||
|
|
# fn deserialize_any<V>(self, _: V) -> Result<V::Value, Self::Error>
|
||
|
|
# where
|
||
|
|
# V: Visitor<'de>,
|
||
|
|
# {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
#[inline]
|
||
|
|
fn deserialize_bool<V>(self, visitor: V) -> Result<V::Value, Self::Error>
|
||
|
|
where
|
||
|
|
V: Visitor<'de>,
|
||
|
|
{
|
||
|
|
self.deserialize_any(visitor)
|
||
|
|
}
|
||
|
|
#
|
||
|
|
# forward_to_deserialize_any! {
|
||
|
|
# i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string
|
||
|
|
# bytes byte_buf option unit unit_struct newtype_struct seq tuple
|
||
|
|
# tuple_struct map struct enum identifier ignored_any
|
||
|
|
# }
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
The `forward_to_deserialize_any!` macro implements these simple forwarding
|
||
|
|
methods so that they forward directly to [`Deserializer::deserialize_any`].
|
||
|
|
You can choose which methods to forward.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::forward_to_deserialize_any;
|
||
|
|
# use serde::de::{value, Deserializer, Visitor};
|
||
|
|
#
|
||
|
|
# struct MyDeserializer;
|
||
|
|
#
|
||
|
|
impl<'de> Deserializer<'de> for MyDeserializer {
|
||
|
|
# type Error = value::Error;
|
||
|
|
#
|
||
|
|
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value, Self::Error>
|
||
|
|
where
|
||
|
|
V: Visitor<'de>,
|
||
|
|
{
|
||
|
|
/* ... */
|
||
|
|
# let _ = visitor;
|
||
|
|
# unimplemented!()
|
||
|
|
}
|
||
|
|
|
||
|
|
forward_to_deserialize_any! {
|
||
|
|
bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string
|
||
|
|
bytes byte_buf option unit unit_struct newtype_struct seq tuple
|
||
|
|
tuple_struct map struct enum identifier ignored_any
|
||
|
|
}
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
The macro assumes the convention that your `Deserializer` lifetime parameter
|
||
|
|
is called `'de` and that the `Visitor` type parameters on each method are
|
||
|
|
called `V`. A different type parameter and a different lifetime can be
|
||
|
|
specified explicitly if necessary.
|
||
|
|
|
||
|
|
```edition2021
|
||
|
|
# use serde::forward_to_deserialize_any;
|
||
|
|
# use serde::de::{value, Deserializer, Visitor};
|
||
|
|
# use std::marker::PhantomData;
|
||
|
|
#
|
||
|
|
# struct MyDeserializer<V>(PhantomData<V>);
|
||
|
|
#
|
||
|
|
# impl<'q, V> Deserializer<'q> for MyDeserializer<V> {
|
||
|
|
# type Error = value::Error;
|
||
|
|
#
|
||
|
|
# fn deserialize_any<W>(self, visitor: W) -> Result<W::Value, Self::Error>
|
||
|
|
# where
|
||
|
|
# W: Visitor<'q>,
|
||
|
|
# {
|
||
|
|
# unimplemented!()
|
||
|
|
# }
|
||
|
|
#
|
||
|
|
forward_to_deserialize_any! {
|
||
|
|
<W: Visitor<'q>>
|
||
|
|
bool i8 i16 i32 i64 i128 u8 u16 u32 u64 u128 f32 f64 char str string
|
||
|
|
bytes byte_buf option unit unit_struct newtype_struct seq tuple
|
||
|
|
tuple_struct map struct enum identifier ignored_any
|
||
|
|
}
|
||
|
|
# }
|
||
|
|
```
|
||
|
|
|
||
|
|
[`Deserializer`]: crate::Deserializer
|
||
|
|
[`Visitor`]: crate::de::Visitor
|
||
|
|
[`Deserializer::deserialize_any`]: crate::Deserializer::deserialize_any
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub macro_rules! forward_to_deserialize_any {
|
||
|
|
/* macro_rules! forward_to_deserialize_any {
|
||
|
|
(<$visitor:ident: Visitor<$lifetime:tt>> $($func:ident)*) => { ... };
|
||
|
|
($($func:ident)*) => { ... };
|
||
|
|
} */
|
||
|
|
}
|
||
|
|
```
|
||
|
|
|
||
|
|
## Re-exports
|
||
|
|
|
||
|
|
### Re-export `Deserialize`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[doc(inline)]")`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use crate::de::Deserialize;
|
||
|
|
```
|
||
|
|
|
||
|
|
### Re-export `Deserializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[doc(inline)]")`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use crate::de::Deserializer;
|
||
|
|
```
|
||
|
|
|
||
|
|
### Re-export `Serialize`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[doc(inline)]")`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use crate::ser::Serialize;
|
||
|
|
```
|
||
|
|
|
||
|
|
### Re-export `Serializer`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[doc(inline)]")`
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use crate::ser::Serializer;
|
||
|
|
```
|
||
|
|
|
||
|
|
### Re-export `Deserialize`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(feature = \"serde_derive\")]")`
|
||
|
|
- `Other("#[<cfg_attr>(docsrs, doc(cfg(feature = \"derive\")))]")`
|
||
|
|
- `Other("#[doc(cfg(feature = \"derive\"))]")`
|
||
|
|
|
||
|
|
Derive macro available if serde is built with `features = ["derive"]`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use serde_derive::Deserialize;
|
||
|
|
```
|
||
|
|
|
||
|
|
### Re-export `Serialize`
|
||
|
|
|
||
|
|
**Attributes:**
|
||
|
|
|
||
|
|
- `Other("#[<cfg>(feature = \"serde_derive\")]")`
|
||
|
|
- `Other("#[<cfg_attr>(docsrs, doc(cfg(feature = \"derive\")))]")`
|
||
|
|
- `Other("#[doc(cfg(feature = \"derive\"))]")`
|
||
|
|
|
||
|
|
Derive macro available if serde is built with `features = ["derive"]`.
|
||
|
|
|
||
|
|
```rust
|
||
|
|
pub use serde_derive::Serialize;
|
||
|
|
```
|
||
|
|
|