[−][src]Struct serde_wasm_bindgen::Deserializer
A newtype that allows using any JsValue
as a serde::Deserializer
.
Trait Implementations
impl From<JsValue> for Deserializer
[src]
impl<'de> Deserializer<'de> for Deserializer
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization. Read more
fn deserialize_any<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_unit<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_unit_struct<V: Visitor<'de>>(
self,
_name: &'static str,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
_name: &'static str,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_bool<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_f32<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_f64<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_identifier<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_str<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_string<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_i8<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_i16<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_i32<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_i128<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_u8<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_u16<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_u32<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_u128<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_i64<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_u64<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
fn deserialize_char<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
Converts a JavaScript string to a Rust char.
By default we don't perform detection of single chars because it's pretty complicated,
but if we get a hint that they're expected, this methods allows to avoid heap allocations
of an intermediate String
by directly converting numeric codepoints instead.
fn deserialize_option<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
fn deserialize_newtype_struct<V: Visitor<'de>>(
self,
_name: &'static str,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
_name: &'static str,
visitor: V
) -> Result<V::Value, Error>
Simply calls visit_newtype_struct
.
fn deserialize_seq<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
Supported inputs:
- JS iterable (an object with
[Symbol.iterator]
). Supported outputs: - Any Rust sequence from Serde point of view (
Vec
,HashSet
, etc.)
fn deserialize_tuple<V: Visitor<'de>>(
self,
_len: usize,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
_len: usize,
visitor: V
) -> Result<V::Value, Error>
Forwards to Self::deserialize_seq
.
fn deserialize_tuple_struct<V: Visitor<'de>>(
self,
_name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
_name: &'static str,
len: usize,
visitor: V
) -> Result<V::Value, Error>
Forwards to Self::deserialize_tuple
.
fn deserialize_map<V: Visitor<'de>>(self, visitor: V) -> Result<V::Value, Error>
[src]
Supported inputs:
- A JS iterable that is expected to return
[key, value]
pairs. - A JS object, which will be iterated using
Object.entries
. Supported outputs: - A Rust key-value map (
HashMap
,BTreeMap
, etc.). - A typed Rust structure with
#[derive(Deserialize)]
.
fn deserialize_struct<V: Visitor<'de>>(
self,
_name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error>
[src]
self,
_name: &'static str,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error>
Supports same input/output types as Self::deserialize_map
.
fn deserialize_enum<V: Visitor<'de>>(
self,
_name: &'static str,
_variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error>
[src]
self,
_name: &'static str,
_variants: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error>
Here we try to be compatible with serde-json
, which means supporting:
"Variant"
- gets converted to a unit variantMyEnum::Variant
{ Variant: ...payload... }
- gets converted to aMyEnum::Variant { ...payload... }
.
fn deserialize_ignored_any<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
Ignores any value without calling to the JS side even to check its type.
fn deserialize_bytes<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
We can't take references to JS memory, so forwards to an owned Self::deserialize_byte_buf
.
fn deserialize_byte_buf<V: Visitor<'de>>(
self,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
visitor: V
) -> Result<V::Value, Error>
Serde expects visit_byte_buf
to be called only in response to an explicit deserialize_bytes
,
so we provide conversions here.
Supported inputs:
ArrayBuffer
- converted to anUint8Array
view first.Uint8Array
- copied to a newly createdVec<u8>
on the Rust side.
fn is_human_readable(&self) -> bool
[src]
impl<'de> VariantAccess<'de> for Deserializer
[src]
type Error = Error
The error type that can be returned if some error occurs during deserialization. Must match the error type of our EnumAccess
. Read more
fn unit_variant(self) -> Result<(), Error>
[src]
fn newtype_variant_seed<T: DeserializeSeed<'de>>(
self,
seed: T
) -> Result<T::Value, Error>
[src]
self,
seed: T
) -> Result<T::Value, Error>
fn tuple_variant<V: Visitor<'de>>(
self,
len: usize,
visitor: V
) -> Result<V::Value, Error>
[src]
self,
len: usize,
visitor: V
) -> Result<V::Value, Error>
fn struct_variant<V: Visitor<'de>>(
self,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error>
[src]
self,
fields: &'static [&'static str],
visitor: V
) -> Result<V::Value, Error>
fn newtype_variant<T>(self) -> Result<T, Self::Error> where
T: Deserialize<'de>,
[src]
T: Deserialize<'de>,
Called when deserializing a variant with a single value. Read more
Auto Trait Implementations
impl !Send for Deserializer
impl !Sync for Deserializer
Blanket Implementations
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,