X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=Configurations.md;h=3eb8cbd780f28e1a31cf0214d83fa63d7692cfe0;hb=b8a133d432fc5af0eee5bb30d05b1e07875aea72;hp=ab91f11be04ea200e75ac0daf91a29474840913a;hpb=df2e8bb5940a9bca7bc455189f4ea5e70a071fb8;p=rust.git diff --git a/Configurations.md b/Configurations.md index ab91f11be04..3eb8cbd780f 100644 --- a/Configurations.md +++ b/Configurations.md @@ -236,7 +236,7 @@ fn main() { ```rust fn main() { let lorem = Lorem { ipsum: dolor, - sit: amet, }; + sit: amet }; } ``` @@ -885,6 +885,53 @@ impl Lorem { See also [`brace_style`](#brace_style), [`control_brace_style`](#control_brace_style). +## `enum_discrim_align_threshold` + +The maximum length of enum variant having discriminant, that gets vertically aligned with others. +Variants without discriminants would be ignored for the purpose of alignment. + +Note that this is not how much whitespace is inserted, but instead the longest variant name that +doesn't get ignored when aligning. + +- **Default value** : 0 +- **Possible values**: any positive integer +- **Stable**: No + +#### `0` (default): + +```rust +enum Bar { + A = 0, + Bb = 1, + RandomLongVariantGoesHere = 10, + Ccc = 71, +} + +enum Bar { + VeryLongVariantNameHereA = 0, + VeryLongVariantNameHereBb = 1, + VeryLongVariantNameHereCcc = 2, +} +``` + +#### `20`: + +```rust +enum Foo { + A = 0, + Bb = 1, + RandomLongVariantGoesHere = 10, + Ccc = 2, +} + +enum Bar { + VeryLongVariantNameHereA = 0, + VeryLongVariantNameHereBb = 1, + VeryLongVariantNameHereCcc = 2, +} +``` + + ## `fn_single_line` Put single-expression functions on a single line @@ -1303,7 +1350,7 @@ fn main() { }); match lorem { - None => if ipsum { + None => |ipsum| { println!("Hello World"); }, Some(dolor) => foo(), @@ -1324,7 +1371,7 @@ fn main() { match lorem { None => { - if ipsum { + |ipsum| { println!("Hello World"); } } @@ -1932,6 +1979,56 @@ fn main() { } ``` +## `format_doc_comments` + +Format doc comments. + +- **Default value**: `false` +- **Possible values**: `true`, `false` +- **Stable**: No + +#### `false` (default): + +```rust +/// Adds one to the number given. +/// +/// # Examples +/// +/// ```rust +/// let five=5; +/// +/// assert_eq!( +/// 6, +/// add_one(5) +/// ); +/// # fn add_one(x: i32) -> i32 { +/// # x + 1 +/// # } +/// ``` +fn add_one(x: i32) -> i32 { + x + 1 +} +``` + +#### `true` + +```rust +/// Adds one to the number given. +/// +/// # Examples +/// +/// ```rust +/// let five = 5; +/// +/// assert_eq!(6, add_one(5)); +/// # fn add_one(x: i32) -> i32 { +/// # x + 1 +/// # } +/// ``` +fn add_one(x: i32) -> i32 { + x + 1 +} +``` ## `wrap_comments` @@ -2176,16 +2273,42 @@ ignore = [ Specifies which edition is used by the parser. -- **Default value**: `Edition2015` -- **Possible values**: `Edition2015`, `Edition2018` -- **Stable**: No +- **Default value**: `2015` +- **Possible values**: `2015`, `2018` +- **Stable**: Yes ### Example If you want to format code that requires edition 2018, add the following to your config file: ```toml -edition = "Edition2018" +edition = "2018" +``` + +## `normalize_doc_attributes` + +Convert `#![doc]` and `#[doc]` attributes to `//!` and `///` doc comments. + +- **Default value**: `false` +- **Possible values**: `true`, `false` +- **Stable**: No + +#### `false` (default): + +```rust +#![doc = "Example documentation"] + +#[doc = "Example item documentation"] +pub enum Foo {} +``` + +#### `true`: + +```rust +//! Example documentation + +/// Example item documentation +pub enum Foo {} ``` ## `emit_mode`