summaryrefslogtreecommitdiff
path: root/src/de
diff options
context:
space:
mode:
authorSam Scott <sam.scott89@gmail.com>2017-05-21 11:47:00 +0100
committerSam Scott <sam.scott89@gmail.com>2017-05-21 11:47:00 +0100
commitba5e0b32b71f7f79915d671e64d19bf9f2bcf422 (patch)
tree012ba94bdfc7f4e934301851364beadae47d567b /src/de
parent661cc9697a1c31abe786e45e43072800b6641871 (diff)
Updates to documentation.
Diffstat (limited to 'src/de')
-rw-r--r--src/de/mod.rs26
-rw-r--r--src/de/parse.rs8
2 files changed, 17 insertions, 17 deletions
diff --git a/src/de/mod.rs b/src/de/mod.rs
index 267b4cb..94c66e1 100644
--- a/src/de/mod.rs
+++ b/src/de/mod.rs
@@ -5,11 +5,9 @@ mod parse;
pub use de::parse::Config;
use data_encoding;
-use data_encoding::base64;
use serde::de;
use serde::de::IntoDeserializer;
-use serde::de::value::MapDeserializer;
use url::percent_encoding;
@@ -118,7 +116,7 @@ pub fn from_reader<'de, T, R>(mut reader: R) -> Result<T>
/// A deserializer for the querystring format.
///
/// Supported top-level outputs are structs and maps.
-pub struct Deserializer {
+pub struct QsDeserializer {
iter: IntoIter<String, Level>,
value: Option<Level>,
}
@@ -131,15 +129,15 @@ pub enum Level {
Invalid(&'static str),
}
-impl Deserializer {
+impl QsDeserializer {
fn with_map(map: BTreeMap<String, Level>) -> Self {
- Deserializer {
+ QsDeserializer {
iter: map.into_iter(),
value: None,
}
}
- /// Returns a new `Deserializer`.
+ /// Returns a new `QsDeserializer`.
fn with_config(config: &Config, input: &[u8]) -> Self {
let decoded = percent_encoding::percent_decode(input);
parse::Parser::new(decoded, vec![], None, config.max_depth()).to_deserializer()
@@ -147,7 +145,7 @@ impl Deserializer {
}
}
-impl<'de> de::Deserializer<'de> for Deserializer {
+impl<'de> de::Deserializer<'de> for QsDeserializer {
type Error = Error;
fn deserialize_any<V>(self, visitor: V) -> Result<V::Value>
@@ -266,7 +264,7 @@ impl<'de> de::Deserializer<'de> for Deserializer {
// use serde::de::IntoDeserializer;
// use serde::de::value::SeqDeserializer;
-impl<'de> de::MapAccess<'de> for Deserializer {
+impl<'de> de::MapAccess<'de> for QsDeserializer {
type Error = Error;
@@ -292,7 +290,7 @@ impl<'de> de::MapAccess<'de> for Deserializer {
}
}
-impl<'de> de::EnumAccess<'de> for Deserializer {
+impl<'de> de::EnumAccess<'de> for QsDeserializer {
type Error = Error;
type Variant = LevelDeserializer;
@@ -406,16 +404,16 @@ macro_rules! deserialize_primitive {
}
impl LevelDeserializer {
- fn to_deserializer(self) -> Result<Deserializer> {
+ fn to_deserializer(self) -> Result<QsDeserializer> {
match self.0 {
Level::Nested(map) => {
- Ok(Deserializer::with_map(map))
+ Ok(QsDeserializer::with_map(map))
},
Level::Invalid(e) => {
Err(de::Error::custom(e))
}
l => {
- Err(de::Error::custom(format!("could not convert {:?} to Deserializer", l)))
+ Err(de::Error::custom(format!("could not convert {:?} to QsDeserializer", l)))
},
}
}
@@ -429,7 +427,7 @@ impl<'de> de::Deserializer<'de> for LevelDeserializer {
{
match self.0 {
Level::Nested(_) => {
- // Deserializer::with_map(map).deserialize_map(visitor)
+ // QsDeserializer::with_map(map).deserialize_map(visitor)
self.deserialize_map(visitor)
},
Level::Sequence(_) => {
@@ -487,7 +485,7 @@ impl<'de> de::Deserializer<'de> for LevelDeserializer {
{
match self.0 {
Level::Nested(map) => {
- Deserializer::with_map(map).deserialize_enum(name, variants, visitor)
+ QsDeserializer::with_map(map).deserialize_enum(name, variants, visitor)
},
Level::Flat(_) => {
visitor.visit_enum(self)
diff --git a/src/de/parse.rs b/src/de/parse.rs
index 7a647db..1f91f07 100644
--- a/src/de/parse.rs
+++ b/src/de/parse.rs
@@ -10,6 +10,8 @@ use super::*;
/// to prevent denial of service attacks by providing incredibly deeply nested
/// inputs.
///
+/// The default value for `max_depth` is 5.
+///
/// ```
/// use serde_qs::de::Config;
/// use std::collections::HashMap;
@@ -53,7 +55,7 @@ impl Config {
pub fn deserialize_bytes<'de, T: de::Deserialize<'de>>(&self,
input: &[u8])
-> Result<T> {
- T::deserialize(Deserializer::with_config(self, input))
+ T::deserialize(QsDeserializer::with_config(self, input))
}
pub fn deserialize_str<'de, T: de::Deserialize<'de>>(&self,
@@ -129,7 +131,7 @@ impl<I: Iterator<Item = u8>> Parser<I> {
}
}
- pub fn to_deserializer(mut self) -> Deserializer {
+ pub fn to_deserializer(mut self) -> QsDeserializer {
let map = BTreeMap::default();
let mut root = Level::Nested(map);
while let Ok(x) = self.parse(&mut root) {
@@ -141,7 +143,7 @@ impl<I: Iterator<Item = u8>> Parser<I> {
Level::Nested(map) => map.into_iter(),
_ => panic!(""),
};
- Deserializer {
+ QsDeserializer {
iter: iter,
value: None,
}