pub(crate) fn consume_statement<'a>( s: &mut Stream<'a>, rules: &mut Vec<Rule<'a>>, ) -> Result<(), Error>