Remove the T parameter from Deserializer
No idea how that ended up there.
This commit is contained in:
parent
6a21acd172
commit
b0794d23e3
22
src/de.rs
22
src/de.rs
@ -3,8 +3,7 @@
|
|||||||
use serde::de;
|
use serde::de;
|
||||||
use serde::de::value::MapDeserializer;
|
use serde::de::value::MapDeserializer;
|
||||||
use std::borrow::Cow;
|
use std::borrow::Cow;
|
||||||
use std::marker::PhantomData;
|
use url::form_urlencoded::Parse as UrlEncodedParse;
|
||||||
use url::form_urlencoded::Parse;
|
|
||||||
|
|
||||||
pub use serde::de::value::Error;
|
pub use serde::de::value::Error;
|
||||||
|
|
||||||
@ -17,12 +16,17 @@ pub use serde::de::value::Error;
|
|||||||
///
|
///
|
||||||
/// * Everything else but `deserialize_seq` and `deserialize_seq_fixed_size`
|
/// * Everything else but `deserialize_seq` and `deserialize_seq_fixed_size`
|
||||||
/// defers to `deserialize`.
|
/// defers to `deserialize`.
|
||||||
pub struct Deserializer<'a, T> {
|
pub struct Deserializer<'a>(
|
||||||
deserializer: MapDeserializer<Parse<'a>, Cow<'a, str>, Cow<'a, str>, Error>,
|
MapDeserializer<UrlEncodedParse<'a>, Cow<'a, str>, Cow<'a, str>, Error>);
|
||||||
marker: PhantomData<T>,
|
|
||||||
|
impl<'a> Deserializer<'a> {
|
||||||
|
/// Returns a new `Deserializer`.
|
||||||
|
pub fn new(parser: UrlEncodedParse<'a>) -> Self {
|
||||||
|
Deserializer(MapDeserializer::unbounded(parser))
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<'a, T> de::Deserializer for Deserializer<'a, T>
|
impl<'a> de::Deserializer for Deserializer<'a>
|
||||||
{
|
{
|
||||||
type Error = Error;
|
type Error = Error;
|
||||||
|
|
||||||
@ -39,7 +43,7 @@ impl<'a, T> de::Deserializer for Deserializer<'a, T>
|
|||||||
-> Result<V::Value, Self::Error>
|
-> Result<V::Value, Self::Error>
|
||||||
where V: de::Visitor,
|
where V: de::Visitor,
|
||||||
{
|
{
|
||||||
visitor.visit_map(&mut self.deserializer)
|
visitor.visit_map(&mut self.0)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn deserialize_seq<V>(
|
fn deserialize_seq<V>(
|
||||||
@ -47,7 +51,7 @@ impl<'a, T> de::Deserializer for Deserializer<'a, T>
|
|||||||
-> Result<V::Value, Self::Error>
|
-> Result<V::Value, Self::Error>
|
||||||
where V: de::Visitor,
|
where V: de::Visitor,
|
||||||
{
|
{
|
||||||
visitor.visit_seq(&mut self.deserializer)
|
visitor.visit_seq(&mut self.0)
|
||||||
}
|
}
|
||||||
|
|
||||||
fn deserialize_seq_fixed_size<V>(
|
fn deserialize_seq_fixed_size<V>(
|
||||||
@ -55,7 +59,7 @@ impl<'a, T> de::Deserializer for Deserializer<'a, T>
|
|||||||
-> Result<V::Value, Self::Error>
|
-> Result<V::Value, Self::Error>
|
||||||
where V: de::Visitor
|
where V: de::Visitor
|
||||||
{
|
{
|
||||||
visitor.visit_seq(&mut self.deserializer)
|
visitor.visit_seq(&mut self.0)
|
||||||
}
|
}
|
||||||
|
|
||||||
forward_to_deserialize! {
|
forward_to_deserialize! {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user