Expose variant index to Serializer

This commit is contained in:
Erick Tryzelaar
2015-07-19 13:12:42 -04:00
parent 10f23dddfe
commit affa9382be
6 changed files with 54 additions and 13 deletions
+10 -2
View File
@@ -85,7 +85,10 @@ impl<'a> Serializer for AssertSerializer<'a> {
Ok(())
}
fn visit_enum_unit(&mut self, name: &str, variant: &str) -> Result<(), ()> {
fn visit_enum_unit(&mut self,
name: &str,
_variant_index: usize,
variant: &str) -> Result<(), ()> {
assert_eq!(self.iter.next().unwrap(), Token::EnumUnit(name, variant));
Ok(())
}
@@ -200,6 +203,7 @@ impl<'a> Serializer for AssertSerializer<'a> {
fn visit_enum_seq<V>(&mut self,
name: &str,
_variant_index: usize,
variant: &str,
visitor: V) -> Result<(), ()>
where V: SeqVisitor
@@ -238,7 +242,11 @@ impl<'a> Serializer for AssertSerializer<'a> {
self.visit_mapping(visitor)
}
fn visit_enum_map<V>(&mut self, name: &str, variant: &str, visitor: V) -> Result<(), ()>
fn visit_enum_map<V>(&mut self,
name: &str,
_variant_index: usize,
variant: &str,
visitor: V) -> Result<(), ()>
where V: MapVisitor
{
let len = visitor.len();