[][src]Trait rustc_errors::emitter::Emitter

pub trait Emitter {
    fn emit_diagnostic(&mut self, db: &DiagnosticBuilder);

    fn emit_artifact_notification(&mut self, _path: &Path, _artifact_type: &str) { ... }
fn should_show_explain(&self) -> bool { ... }
fn primary_span_formatted<'a>(
        &mut self,
        db: &'a DiagnosticBuilder
    ) -> (MultiSpan, &'a [CodeSuggestion]) { ... } }

Emitter trait for emitting errors.

Required methods

fn emit_diagnostic(&mut self, db: &DiagnosticBuilder)

Emit a structured diagnostic.

Loading content...

Provided methods

fn emit_artifact_notification(&mut self, _path: &Path, _artifact_type: &str)

Emit a notification that an artifact has been output. This is currently only supported for the JSON format, other formats can, and will, simply ignore it.

fn should_show_explain(&self) -> bool

Checks if should show explanations about "rustc --explain"

fn primary_span_formatted<'a>(
    &mut self,
    db: &'a DiagnosticBuilder
) -> (MultiSpan, &'a [CodeSuggestion])

Formats the substitutions of the primary_span

The are a lot of conditions to this method, but in short:

  • If the current Diagnostic has only one visible CodeSuggestion, we format the help suggestion depending on the content of the substitutions. In that case, we return the modified span only.

  • If the current Diagnostic has multiple suggestions, we return the original primary_span and the original suggestions.

Loading content...

Implementors

impl Emitter for AnnotateSnippetEmitterWriter[src]

fn emit_diagnostic(&mut self, db: &DiagnosticBuilder)[src]

The entry point for the diagnostics generation

impl Emitter for EmitterWriter[src]

Loading content...