diff options
| author | bors <bors@rust-lang.org> | 2023-05-10 07:39:31 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2023-05-10 07:39:31 +0000 |
| commit | 7a41eacf170ed234e059608515115e94fbe721fe (patch) | |
| tree | bba0f53fa3cae672594193a410b19c864c12cc5f /compiler/rustc_errors/src | |
| parent | 7fb4332ce452875b0f86dd62be0b1356e6d9537d (diff) | |
| parent | 68c7d2083f315a349caf3202a5495b1c99a38461 (diff) | |
| download | rust-7a41eacf170ed234e059608515115e94fbe721fe.tar.gz rust-7a41eacf170ed234e059608515115e94fbe721fe.zip | |
Auto merge of #2885 - RalfJung:rustup, r=RalfJung
Rustup
Diffstat (limited to 'compiler/rustc_errors/src')
| -rw-r--r-- | compiler/rustc_errors/src/diagnostic_builder.rs | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/compiler/rustc_errors/src/diagnostic_builder.rs b/compiler/rustc_errors/src/diagnostic_builder.rs index ef528d87cb2..db97d96fccd 100644 --- a/compiler/rustc_errors/src/diagnostic_builder.rs +++ b/compiler/rustc_errors/src/diagnostic_builder.rs @@ -571,6 +571,14 @@ impl<'a, G: EmissionGuarantee> DiagnosticBuilder<'a, G> { Some((diagnostic, handler)) } + /// Retrieves the [`Handler`] if available + pub fn handler(&self) -> Option<&Handler> { + match self.inner.state { + DiagnosticBuilderState::Emittable(handler) => Some(handler), + DiagnosticBuilderState::AlreadyEmittedOrDuringCancellation => None, + } + } + /// Buffers the diagnostic for later emission, /// unless handler has disabled such buffering. pub fn buffer(self, buffered_diagnostics: &mut Vec<Diagnostic>) { |
