pub fn read<T, E>( readers: &Readers<T, E>, input: &mut dyn Input, state: &mut State) -> Option<Result<T, E>>