pub fn series<C: Collection<Item = O>, I: Input, O, F, W>( input: &mut I, prefix_needed: bool, seperator: I::Token, whitespace: W, item: F) -> Result<C, I>where F: FnMut(&mut I) -> Result<O, I>, W: FnMut(I::Token) -> bool + Copy,