MapVisitor::end and SeqVisitor::end were mostly never called

This commit is contained in:
Oliver Schneider
2015-03-16 13:20:34 +01:00
parent f4f8194f46
commit f21cbb71e2
4 changed files with 22 additions and 10 deletions
+6
View File
@@ -629,6 +629,8 @@ impl<T> Visitor for VecVisitor<T> where T: Deserialize {
values.push(value);
}
try!(visitor.end());
Ok(values)
}
}
@@ -735,6 +737,8 @@ impl<K, V> Visitor for HashMapVisitor<K, V>
values.insert(key, value);
}
try!(visitor.end());
Ok(values)
}
}
@@ -781,6 +785,8 @@ impl<K, V> Visitor for BTreeMapVisitor<K, V>
values.insert(key, value);
}
try!(visitor.end());
Ok(values)
}
}
+2 -4
View File
@@ -466,7 +466,6 @@ impl<'a, Iter> de::SeqVisitor for SeqVisitor<'a, Iter>
self.de.parse_whitespace();
if self.de.ch_is(b']') {
self.de.bump();
return Ok(None);
}
@@ -525,7 +524,6 @@ impl<'a, Iter> de::MapVisitor for MapVisitor<'a, Iter>
self.de.parse_whitespace();
if self.de.ch_is(b'}') {
self.de.bump();
return Ok(None);
}
@@ -565,11 +563,11 @@ impl<'a, Iter> de::MapVisitor for MapVisitor<'a, Iter>
fn end(&mut self) -> Result<(), Error> {
self.de.parse_whitespace();
if self.de.ch_is(b']') {
if self.de.ch_is(b'}') {
self.de.bump();
Ok(())
} else if self.de.eof() {
Err(self.de.error(ErrorCode::EOFWhileParsingList))
Err(self.de.error(ErrorCode::EOFWhileParsingObject))
} else {
Err(self.de.error(ErrorCode::TrailingCharacters))
}