Struct rustc_errors::emitter::EmitterWriter[−][src]

pub struct EmitterWriter {
    dst: Destination,
    sm: Option<Lrc<SourceMap>>,
    short_message: bool,
    teach: bool,
    ui_testing: bool,
    terminal_width: Option<usize>,
    macro_backtrace: bool,
}
Expand description

Handles the writing of HumanReadableErrorType::Default and HumanReadableErrorType::Short

Fields

dst: Destinationsm: Option<Lrc<SourceMap>>short_message: boolteach: boolui_testing: boolterminal_width: Option<usize>macro_backtrace: bool

Implementations

impl EmitterWriter[src]

pub fn stderr(
    color_config: ColorConfig,
    source_map: Option<Lrc<SourceMap>>,
    short_message: bool,
    teach: bool,
    terminal_width: Option<usize>,
    macro_backtrace: bool
) -> EmitterWriter
[src]

pub fn new(
    dst: Box<dyn Write + Send>,
    source_map: Option<Lrc<SourceMap>>,
    short_message: bool,
    teach: bool,
    colored: bool,
    terminal_width: Option<usize>,
    macro_backtrace: bool
) -> EmitterWriter
[src]

pub fn ui_testing(self, ui_testing: bool) -> Self[src]

fn maybe_anonymized(&self, line_num: usize) -> String[src]

fn draw_line(
    &self,
    buffer: &mut StyledBuffer,
    source_string: &str,
    line_index: usize,
    line_offset: usize,
    width_offset: usize,
    code_offset: usize,
    margin: Margin
)
[src]

fn render_source_line(
    &self,
    buffer: &mut StyledBuffer,
    file: Lrc<SourceFile>,
    line: &Line,
    width_offset: usize,
    code_offset: usize,
    margin: Margin
) -> Vec<(usize, Style)>
[src]

fn get_multispan_max_line_num(&mut self, msp: &MultiSpan) -> usize[src]

fn get_max_line_num(
    &mut self,
    span: &MultiSpan,
    children: &[SubDiagnostic]
) -> usize
[src]

fn msg_to_buffer(
    &self,
    buffer: &mut StyledBuffer,
    msg: &[(String, Style)],
    padding: usize,
    label: &str,
    override_style: Option<Style>
)
[src]

Adds a left margin to every line but the first, given a padding length and the label being displayed, keeping the provided highlighting.

fn emit_message_default(
    &mut self,
    msp: &MultiSpan,
    msg: &[(String, Style)],
    code: &Option<DiagnosticId>,
    level: &Level,
    max_line_num_len: usize,
    is_secondary: bool
) -> Result<()>
[src]

fn emit_suggestion_default(
    &mut self,
    suggestion: &CodeSuggestion,
    level: &Level,
    max_line_num_len: usize
) -> Result<()>
[src]

fn emit_messages_default(
    &mut self,
    level: &Level,
    message: &[(String, Style)],
    code: &Option<DiagnosticId>,
    span: &MultiSpan,
    children: &[SubDiagnostic],
    suggestions: &[CodeSuggestion]
)
[src]

Trait Implementations

impl Emitter for EmitterWriter[src]

fn source_map(&self) -> Option<&Lrc<SourceMap>>[src]

fn emit_diagnostic(&mut self, diag: &Diagnostic)[src]

Emit a structured diagnostic.

fn should_show_explain(&self) -> bool[src]

Checks if should show explanations about “rustc –explain”

fn supports_color(&self) -> bool[src]

Checks if we can use colors in the current output stream.

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

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. Read more

fn emit_future_breakage_report(
    &mut self,
    _diags: Vec<(FutureBreakage, Diagnostic)>
)
[src]

fn emit_unused_externs(&mut self, _lint_level: &str, _unused_externs: &[&str])[src]

Emit list of unused externs

fn primary_span_formatted<'a>(
    &mut self,
    diag: &'a Diagnostic
) -> (MultiSpan, &'a [CodeSuggestion])
[src]

Formats the substitutions of the primary_span Read more

fn fix_multispans_in_extern_macros_and_render_macro_backtrace(
    &self,
    source_map: &Option<Lrc<SourceMap>>,
    span: &mut MultiSpan,
    children: &mut Vec<SubDiagnostic>,
    level: &Level,
    backtrace: bool
)
[src]

fn render_multispans_macro_backtrace(
    &self,
    span: &mut MultiSpan,
    children: &mut Vec<SubDiagnostic>,
    backtrace: bool
)
[src]

fn render_multispan_macro_backtrace(
    &self,
    span: &mut MultiSpan,
    always_backtrace: bool
)
[src]

fn fix_multispans_in_extern_macros(
    &self,
    source_map: &Option<Lrc<SourceMap>>,
    span: &mut MultiSpan,
    children: &mut Vec<SubDiagnostic>
)
[src]

fn fix_multispan_in_extern_macros(
    &self,
    source_map: &Lrc<SourceMap>,
    span: &mut MultiSpan
)
[src]

Auto Trait Implementations

impl !RefUnwindSafe for EmitterWriter

impl !Send for EmitterWriter

impl !Sync for EmitterWriter

impl Unpin for EmitterWriter

impl !UnwindSafe for EmitterWriter

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized, 
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized, 
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized, 
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>[src]

Performs the conversion.