pub fn NewDocumentEnvironment<'a, Pa: ParseSource<'a>, T: FromLaTeXToken<'a, Pa::Pos, Pa::Str>, Err: FnMut(String, SourceRange<Pa::Pos>, DiagnosticLevel), State: ParserState<'a, Pa, T, Err>>(
NewDocumentEnvironment: Macro<'a, Pa::Pos, Pa::Str>,
p: &mut LaTeXParser<'a, Pa, T, Err, State>,
) -> MacroResult<'a, Pa::Pos, Pa::Str, T>