Module diagnostics

Module diagnostics 

Source
Expand description

Diagnostics implementation.

Modified from rustc_errors.

Structs§

BugAbort
Marker type which enables implementation of create_bug and emit_bug functions for bug diagnostics.
CodeSuggestion
A structured suggestion for code changes. Based on rustc’s CodeSuggestion structure.
Diag
A compiler diagnostic.
DiagBuilder
Used for emitting structured error messages and other diagnostic information.
DiagCtxt
A handler that deals with errors and other compiler output.
DiagCtxtFlags
Flags that control the behaviour of a DiagCtxt.
DiagId
Diag ID.
DiagMsg
EmittedDiagnostics
Represents all the diagnostics emitted up to a certain point.
ErrorGuaranteed
Useful type to use with Result indicate that an error has already been reported to the user, so no need to continue checking.
ExplicitBug
Signifies that the compiler died with an explicit call to .bug rather than a failed assertion, etc.
FatalAbort
Marker type which enables implementation of fatal diagnostics.
HumanBufferEmitter
Diagnostic emitter that emits diagnostics in human-readable format to a local buffer.
HumanEmitter
Diagnostic emitter that emits to an arbitrary io::Write writer in human-readable format.
InMemoryEmitter
An in-memory diagnostics emitter.
JsonEmitterjson
Diagnostic emitter that emits diagnostics as JSON.
LocalEmitter
Diagnostic emitter that only stores emitted diagnostics.
MultiSpan
A collection of Spans.
SilentEmitter
Diagnostic emitter.
SpanLabel
A span together with some additional data.
SubDiagnostic
A “sub”-diagnostic attached to a parent diagnostic. For example, a note attached to an error.
Substitution
A substitution represents a single alternative fix consisting of multiple parts.
SubstitutionPart
A single part of a substitution, indicating a specific span to replace with a snippet.

Enums§

Applicability
Indicates the confidence in the correctness of a suggestion.
Level
Diag level.
Style
SuggestionStyle
Suggestions
Represents the help messages seen on a diagnostic.

Traits§

EmissionGuarantee
Trait for types that DiagBuilder::emit can return as a “guarantee” (or “proof”) token that the emission happened.
Emitter
Diagnostic emitter.

Type Aliases§

DynEmitter
Dynamic diagnostic emitter. See Emitter.