Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

librustc_errors: Add some more documentation #61686

merged 2 commits into from Jun 12, 2019
Changes from all commits
File filter

Filter by extension

Filter by extension

Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
@@ -227,13 +227,17 @@ impl OutputType {

/// The type of diagnostics output to generate.
#[derive(Clone, Copy, Debug, PartialEq, Eq)]
pub enum ErrorOutputType {
/// Output meant for the consumption of humans.
/// Output that's consumed by other tools such as `rustfix` or the `RLS`.
Json {
/// Render the json in a human readable way (with indents and newlines)
/// Render the JSON in a human readable way (with indents and newlines).
pretty: bool,
/// The way the `rendered` field is created
/// The JSON output includes a `rendered` field that includes the rendered
/// human output.
json_rendered: HumanReadableErrorType,
@@ -348,7 +348,7 @@ impl<'a> DiagnosticBuilder<'a> {

/// Convenience function for internal use, clients should use one of the
/// struct_* methods on Handler.
pub fn new_with_code(handler: &'a Handler,
crate fn new_with_code(handler: &'a Handler,
level: Level,
code: Option<DiagnosticId>,
message: &str)
@@ -1,3 +1,12 @@
//! The current rustc diagnostics emitter.
//! An `Emitter` takes care of generating the output from a `DiagnosticBuilder` struct.
//! There are various `Emitter` implementations that generate different output formats such as
//! JSON and human readable output.
//! The output types are defined in `librustc::session::config::ErrorOutputType`.

use Destination::*;

use syntax_pos::{SourceFile, Span, MultiSpan};
@@ -1,5 +1,10 @@
//! Diagnostics creation and emission for `rustc`.
//! This module contains the code for creating and emitting diagnostics.

#![doc(html_root_url = "")]

#![cfg_attr(unix, feature(libc))]