mirror of
https://github.com/pezkuwichain/serde.git
synced 2026-06-13 11:21:01 +00:00
Mild renaming
This commit is contained in:
+20
-34
@@ -154,20 +154,21 @@ struct MySeqVisitor {
|
|||||||
impl<
|
impl<
|
||||||
Iter: Iterator<Token>,
|
Iter: Iterator<Token>,
|
||||||
> de2::SeqVisitor<MyDeserializer<Iter>, Error> for MySeqVisitor {
|
> de2::SeqVisitor<MyDeserializer<Iter>, Error> for MySeqVisitor {
|
||||||
fn next<
|
fn visit<
|
||||||
T: Deserialize<MyDeserializer<Iter>, Error>
|
T: Deserialize<MyDeserializer<Iter>, Error>
|
||||||
>(&mut self, d: &mut MyDeserializer<Iter>) -> option::Option<Result<T, Error>> {
|
>(&mut self, d: &mut MyDeserializer<Iter>) -> Result<option::Option<T>, Error> {
|
||||||
match d.peek() {
|
match d.peek() {
|
||||||
Some(&End) => {
|
Some(&End) => {
|
||||||
d.next();
|
d.next();
|
||||||
None
|
Ok(None)
|
||||||
}
|
}
|
||||||
Some(_) => {
|
Some(_) => {
|
||||||
self.len -= 1;
|
self.len -= 1;
|
||||||
Some(Deserialize::deserialize(d))
|
let value = try!(Deserialize::deserialize(d));
|
||||||
|
Ok(Some(value))
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
Some(Err(d.syntax_error()))
|
Err(d.syntax_error())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -192,32 +193,25 @@ struct MyMapVisitor {
|
|||||||
impl<
|
impl<
|
||||||
Iter: Iterator<Token>,
|
Iter: Iterator<Token>,
|
||||||
> de2::MapVisitor<MyDeserializer<Iter>, Error> for MyMapVisitor {
|
> de2::MapVisitor<MyDeserializer<Iter>, Error> for MyMapVisitor {
|
||||||
fn next<
|
fn visit<
|
||||||
K: Deserialize<MyDeserializer<Iter>, Error>,
|
K: Deserialize<MyDeserializer<Iter>, Error>,
|
||||||
V: Deserialize<MyDeserializer<Iter>, Error>,
|
V: Deserialize<MyDeserializer<Iter>, Error>,
|
||||||
>(&mut self, d: &mut MyDeserializer<Iter>) -> option::Option<Result<(K, V), Error>> {
|
>(&mut self, d: &mut MyDeserializer<Iter>) -> Result<option::Option<(K, V)>, Error> {
|
||||||
match d.peek() {
|
match d.peek() {
|
||||||
Some(&End) => {
|
Some(&End) => {
|
||||||
d.next();
|
d.next();
|
||||||
None
|
Ok(None)
|
||||||
}
|
}
|
||||||
Some(_) => {
|
Some(_) => {
|
||||||
self.len -= 1;
|
self.len -= 1;
|
||||||
|
|
||||||
let key = match Deserialize::deserialize(d) {
|
let key = try!(Deserialize::deserialize(d));
|
||||||
Ok(key) => key,
|
let value = try!(Deserialize::deserialize(d));
|
||||||
Err(err) => { return Some(Err(err)); }
|
|
||||||
};
|
|
||||||
|
|
||||||
let value = match Deserialize::deserialize(d) {
|
Ok(Some((key, value)))
|
||||||
Ok(value) => value,
|
|
||||||
Err(err) => { return Some(Err(err)); }
|
|
||||||
};
|
|
||||||
|
|
||||||
Some(Ok((key, value)))
|
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
Some(Err(d.syntax_error()))
|
Err(d.syntax_error())
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -238,7 +232,7 @@ impl<
|
|||||||
///////////////////////////////////////////////////////////////////////////////
|
///////////////////////////////////////////////////////////////////////////////
|
||||||
|
|
||||||
mod json {
|
mod json {
|
||||||
//use std::collections::TreeMap;
|
use std::collections::TreeMap;
|
||||||
use serde2::de2;
|
use serde2::de2;
|
||||||
|
|
||||||
#[deriving(Show)]
|
#[deriving(Show)]
|
||||||
@@ -248,7 +242,7 @@ mod json {
|
|||||||
Int(int),
|
Int(int),
|
||||||
//String(String),
|
//String(String),
|
||||||
List(Vec<Value>),
|
List(Vec<Value>),
|
||||||
//Map(TreeMap<String, Value>),
|
Map(TreeMap<String, Value>),
|
||||||
}
|
}
|
||||||
|
|
||||||
impl<
|
impl<
|
||||||
@@ -292,9 +286,9 @@ mod json {
|
|||||||
let mut values = Vec::with_capacity(len);
|
let mut values = Vec::with_capacity(len);
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
match visitor.next(d) {
|
match try!(visitor.visit(d)) {
|
||||||
Some(value) => {
|
Some(value) => {
|
||||||
values.push(try!(value));
|
values.push(value);
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
break;
|
break;
|
||||||
@@ -305,21 +299,16 @@ mod json {
|
|||||||
Ok(List(values))
|
Ok(List(values))
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
fn visit_map<
|
fn visit_map<
|
||||||
Visitor: ::MapVisitor<D, E>,
|
Visitor: de2::MapVisitor<D, E>,
|
||||||
>(&mut self, d: &mut D, mut visitor: Visitor) -> Result<Value, E> {
|
>(&mut self, d: &mut D, mut visitor: Visitor) -> Result<Value, E> {
|
||||||
let mut values = TreeMap::new();
|
let mut values = TreeMap::new();
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
let kv: Option<Result<(String, Value), E>> = visitor.next(d);
|
match try!(visitor.visit(d)) {
|
||||||
match kv {
|
Some((key, value)) => {
|
||||||
Some(Ok((key, value))) => {
|
|
||||||
values.insert(key, value);
|
values.insert(key, value);
|
||||||
}
|
}
|
||||||
Some(Err(err)) => {
|
|
||||||
return Err(err);
|
|
||||||
}
|
|
||||||
None => {
|
None => {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -328,7 +317,6 @@ mod json {
|
|||||||
|
|
||||||
Ok(Map(values))
|
Ok(Map(values))
|
||||||
}
|
}
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
d.visit(&mut Visitor)
|
d.visit(&mut Visitor)
|
||||||
@@ -473,7 +461,6 @@ fn main() {
|
|||||||
let v: Result<HashMap<string::String, int>, Error> = Deserialize::deserialize(&mut state);
|
let v: Result<HashMap<string::String, int>, Error> = Deserialize::deserialize(&mut state);
|
||||||
println!("{}", v);
|
println!("{}", v);
|
||||||
|
|
||||||
/*
|
|
||||||
////
|
////
|
||||||
|
|
||||||
let tokens = vec!(
|
let tokens = vec!(
|
||||||
@@ -488,7 +475,6 @@ fn main() {
|
|||||||
|
|
||||||
let v: Result<json::Value, Error> = Deserialize::deserialize(&mut state);
|
let v: Result<json::Value, Error> = Deserialize::deserialize(&mut state);
|
||||||
println!("{}", v);
|
println!("{}", v);
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
+14
-20
@@ -68,9 +68,9 @@ pub trait OptionVisitor<D, E> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub trait SeqVisitor<D, E> {
|
pub trait SeqVisitor<D, E> {
|
||||||
fn next<
|
fn visit<
|
||||||
T: Deserialize<D, E>,
|
T: Deserialize<D, E>,
|
||||||
>(&mut self, d: &mut D) -> Option<Result<T, E>>;
|
>(&mut self, d: &mut D) -> Result<Option<T>, E>;
|
||||||
|
|
||||||
fn end(&mut self, d: &mut D) -> Result<(), E>;
|
fn end(&mut self, d: &mut D) -> Result<(), E>;
|
||||||
|
|
||||||
@@ -81,10 +81,10 @@ pub trait SeqVisitor<D, E> {
|
|||||||
}
|
}
|
||||||
|
|
||||||
pub trait MapVisitor<D, E> {
|
pub trait MapVisitor<D, E> {
|
||||||
fn next<
|
fn visit<
|
||||||
K: Deserialize<D, E>,
|
K: Deserialize<D, E>,
|
||||||
V: Deserialize<D, E>,
|
V: Deserialize<D, E>,
|
||||||
>(&mut self, d: &mut D) -> Option<Result<(K, V), E>>;
|
>(&mut self, d: &mut D) -> Result<Option<(K, V)>, E>;
|
||||||
|
|
||||||
fn end(&mut self, d: &mut D) -> Result<(), E>;
|
fn end(&mut self, d: &mut D) -> Result<(), E>;
|
||||||
|
|
||||||
@@ -199,9 +199,9 @@ impl<
|
|||||||
let mut values = Vec::with_capacity(len);
|
let mut values = Vec::with_capacity(len);
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
match visitor.next(d) {
|
match try!(visitor.visit(d)) {
|
||||||
Some(value) => {
|
Some(value) => {
|
||||||
values.push(try!(value));
|
values.push(value);
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
break;
|
break;
|
||||||
@@ -243,9 +243,9 @@ impl<
|
|||||||
match state {
|
match state {
|
||||||
0 => {
|
0 => {
|
||||||
state += 1;
|
state += 1;
|
||||||
match visitor.next(d) {
|
match try!(visitor.visit(d)) {
|
||||||
Some(value) => {
|
Some(value) => {
|
||||||
t0 = Some(try!(value));
|
t0 = Some(value);
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
return Err(d.end_of_stream_error());
|
return Err(d.end_of_stream_error());
|
||||||
@@ -254,9 +254,9 @@ impl<
|
|||||||
}
|
}
|
||||||
1 => {
|
1 => {
|
||||||
state += 1;
|
state += 1;
|
||||||
match visitor.next(d) {
|
match try!(visitor.visit(d)) {
|
||||||
Some(value) => {
|
Some(value) => {
|
||||||
t1 = Some(try!(value));
|
t1 = Some(value);
|
||||||
}
|
}
|
||||||
None => {
|
None => {
|
||||||
return Err(d.end_of_stream_error());
|
return Err(d.end_of_stream_error());
|
||||||
@@ -301,13 +301,10 @@ impl<
|
|||||||
let mut values = HashMap::with_capacity(len);
|
let mut values = HashMap::with_capacity(len);
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
match visitor.next(d) {
|
match try!(visitor.visit(d)) {
|
||||||
Some(Ok((key, value))) => {
|
Some((key, value)) => {
|
||||||
values.insert(key, value);
|
values.insert(key, value);
|
||||||
}
|
}
|
||||||
Some(Err(err)) => {
|
|
||||||
return Err(err);
|
|
||||||
}
|
|
||||||
None => {
|
None => {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
@@ -343,13 +340,10 @@ impl<
|
|||||||
let mut values = TreeMap::new();
|
let mut values = TreeMap::new();
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
match visitor.next(d) {
|
match try!(visitor.visit(d)) {
|
||||||
Some(Ok((key, value))) => {
|
Some((key, value)) => {
|
||||||
values.insert(key, value);
|
values.insert(key, value);
|
||||||
}
|
}
|
||||||
Some(Err(err)) => {
|
|
||||||
return Err(err);
|
|
||||||
}
|
|
||||||
None => {
|
None => {
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user