pub fn pretty_print<'a, I, T, A>( printer: &Printer<'a, I, A>, typ: &'a T) -> DocBuilder<'a, Arena<'a, A>, A>where I: AsRef<str> + 'a, T: Deref<Target = Type<I, T>> + HasSpan + Commented, A: Clone,