diff --git a/src/libserialize/json.rs b/src/libserialize/json.rs index a87044bb3b3..83badb0c57c 100644 --- a/src/libserialize/json.rs +++ b/src/libserialize/json.rs @@ -1324,7 +1324,9 @@ pub struct Parser { state: ParserState, } -impl> Iterator for Parser { +impl> Iterator for Parser { + type Item = JsonEvent; + fn next(&mut self) -> Option { if self.state == ParseFinished { return None; @@ -1345,7 +1347,7 @@ impl> Iterator for Parser { } } -impl> Parser { +impl> Parser { /// Creates the JSON parser. pub fn new(rdr: T) -> Parser { let mut p = Parser { @@ -1867,7 +1869,7 @@ pub struct Builder { token: Option, } -impl> Builder { +impl> Builder { /// Create a JSON Builder. pub fn new(src: T) -> Builder { Builder { parser: Parser::new(src), token: None, } diff --git a/src/libserialize/lib.rs b/src/libserialize/lib.rs index 4a2bbbeec03..1ec6a2af309 100644 --- a/src/libserialize/lib.rs +++ b/src/libserialize/lib.rs @@ -25,6 +25,7 @@ Core encoding and decoding interfaces. #![allow(unknown_features)] #![feature(macro_rules, default_type_params, phase, slicing_syntax, globs)] #![feature(unboxed_closures)] +#![feature(associated_types)] // test harness access #[cfg(test)]