Macro rustc_errors::diagnostic_builder::forward
source · [−]macro_rules! forward {
(
$(#[$attrs:meta])*
pub fn $n:ident(&mut self, $($name:ident: $ty:ty),* $(,)?) -> &mut Self
) => { ... };
}Expand description
In general, the DiagnosticBuilder uses deref to allow access to
the fields and methods of the embedded diagnostic in a
transparent way. However, many of the methods are intended to
be used in a chained way, and hence ought to return self. In
that case, we can’t just naively forward to the method on the
diagnostic, because the return type would be a &Diagnostic
instead of a &DiagnosticBuilder<'a>. This forward! macro makes
it easy to declare such methods on the builder.