# https://rust-lang.github.io/rustfmt/
# https://github.com/rust-lang/rustfmt/blob/master/src/config/options.rs
# Maximum width of an array literal before falling back to vertical formatting.
# https://rust-lang.github.io/rustfmt/?version=master&search=#array_width
#
# Default value: is a percentage of `max_width` provided by `width_heuristics`
# Possible values: any positive integer that is less than or equal to the value specified for `max_width`
# Stable: Yes
#
# array_width = 60
# Maximum width of the args of a function-like attributes before falling back to vertical formatting.
# https://rust-lang.github.io/rustfmt/?version=master&search=#attr_fn_like_width
#
# Default value: is a percentage of `max_width` provided by `width_heuristics`
# Possible values: any positive integer that is less than or equal to the value specified for max_width
# Stable: Yes
# attr_fn_like_width = 70
# Where to put a binary operator when a binary expression goes multiline.
# https://rust-lang.github.io/rustfmt/?version=master&search=#binop_separator
#
# Default value: "Front"
# Possible values: "Front", "Back"
# Stable: Yes
= "Front"
# Minimum number of blank lines which must be put between statements
# https://rust-lang.github.io/rustfmt/?version=master&search=#blank_lines_lower_bound
#
# Default value: 0
# Possible values: unsigned integer
# Stable: No (tracking issue: #3382)
= 0
# Maximum number of blank lines which can be put between statements
# https://rust-lang.github.io/rustfmt/?version=master&search=#blank_lines_upper_bound
#
# Default value: 1
# Possible values: any non-negative integer
# Stable: No (tracking issue: #3381)
= 1
# Brace style for items
# https://rust-lang.github.io/rustfmt/?version=master&search=#brace_style
#
# Default value: "SameLineWhere"
# Possible values: "AlwaysNextLine", "PreferSameLine", "SameLineWhere"
# Stable: No (tracking issue: #3376)
= "AlwaysNextLine"
# Maximum width of a chain to fit on one line.
# https://rust-lang.github.io/rustfmt/?version=master&search=#chain_width
#
# Default value: is a percentage of `max_width` provided by `width_heuristics`
# Possible values: any positive integer that is less than or equal to the value specified for max_width
# Stable: Yes
= 80
# Combine control expressions with function calls.
# https://rust-lang.github.io/rustfmt/?version=master&search=#combine_control_expr
#
# Default value: true
# Possible values: true, false
# Stable: No (tracking issue: #3369)
= true
# Maximum length of comments. No effect unlesswrap_comments = true.
# https://rust-lang.github.io/rustfmt/?version=master&search=#comment_width
#
# Default value: 80
# Possible values: any positive integer
# Stable: No (tracking issue: #3349)
= 100
# Replace strings of _ wildcards by a single .. in tuple patterns
#
# Default value: false
# Possible values: true, false
# Stable: No (tracking issue: #3384)
= true
# Brace style for control flow constructs
# https://rust-lang.github.io/rustfmt/?version=master&search=#control_brace_style
#
# Default value: "AlwaysSameLine"
# Possible values: "AlwaysNextLine", "AlwaysSameLine", "ClosingNextLine"
# Stable: No (tracking issue: #3377)
= "AlwaysSameLine"
# Specifies which edition is used by the parser.
# https://rust-lang.github.io/rustfmt/?version=master&search=#edition
#
# Default value: "2015"
# Possible values: "2015", "2018"
# Stable: Yes
= "2018"
# Put empty-body functions and impls on a single line
# https://rust-lang.github.io/rustfmt/?version=master&search=#empty_item_single_line
#
# Default value: true
# Possible values: true, false
# Stable: No (tracking issue: #3356)
= true
# 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.
# https://rust-lang.github.io/rustfmt/?version=master&search=#enum_discrim_align_threshold
#
# Default value : 0
# Possible values: any positive integer
# Stable: No (tracking issue: #3372)
= 0
# Error if Rustfmt is unable to get all lines within max_width, except for comments and string literals.
# https://rust-lang.github.io/rustfmt/?version=master&search=#error_on_line_overflow
#
# Default value: false
# Possible values: true, false
# Stable: No (tracking issue: #3391)
= false
# Error if unable to get comments or string literals within max_width, or they are left with trailing whitespaces.
# https://rust-lang.github.io/rustfmt/?version=master&search=#error_on_unformatted
#
# Default value: false
# Possible values: true, false
# Stable: No (tracking issue: #3392)
= false
# Control the layout of parameters in a function signature
# https://rust-lang.github.io/rustfmt/?version=master&search=#fn_params_layout
#
# Default value: "Tall"
# Possible values: "Compressed", "Tall", "Vertical"
# Stable: Yes
= "Compressed"
# Maximum width of the args of a function call before falling back to vertical formatting.
# https://rust-lang.github.io/rustfmt/?version=master&search=#fn_call_width
#
# Default value: a percentage of `max_width` provided by `width_heuristics`
# Possible values: any positive integer that is less than or equal to the value specified for max_width
# Stable: Yes
#fn_call_width = 60
# Put single-expression functions on a single line
# https://rust-lang.github.io/rustfmt/?version=master&search=#fn_single_line
#
# Default value: false
# Possible values: true, false
# Stable: No (tracking issue: #3358)
= true
# Force multiline closure and match arm bodies to be wrapped in a block
# https://rust-lang.github.io/rustfmt/?version=master&search=#force_multiline_blocks
#
# Default value: false
# Possible values: false, true
# Stable: No (tracking issue: #3374)
= false
# TDB the rest
= false # Format the metavariable matching patterns in macros.
= false # Format the bodies of macros.
= false # Format string literals where necessary
= false # Use tab characters for indentation, spaces for alignment
= "Visual" # Indent style of imports
= "Mixed" # Item layout inside a imports block
= "Visual" # Indent on expressions or items.
= 100 # Write an item and its attribute on the same line if their combined width is below a threshold
= false # Wrap the body of arms in blocks when it does not fit on the same line with the pattern of arms
= false # Put a trailing comma after a block based match arm (non-block arms are not affected)
= 150 # Maximum width of each line
= true # Merge multiple derives into a single one.
= true # Merge multiple imports into a single nested import.
= false # Convert #![doc] and #[doc] attributes to //! and /// doc comments.
= true # When structs, slices, arrays, and block/array-like macros are used as the last argument in an expression list, allow overflow.
= false # Reorder impl items. type and const are put first, then macros and methods.
= true # Reorder import and extern crate statements alphabetically in groups (a group is separated by a newline).
= true # Reorder mod declarations alphabetically in group.
= false # Leave a space after the colon.
= false # Leave a space before the colon.
= false # Put spaces around the .., ..=, and ... range operators
= 0 # The maximum diff of width between struct fields to be aligned with each other.
= true # Put small struct literals on a single line
= 4 # Number of spaces per tab
= "Vertical" # How to handle trailing commas for lists
= "Max" # Whether to use different formatting for items and expressions if they satisfy a heuristic notion of 'small'.
= true # Forces the where clause to be laid out on a single line.
# No brainers
= "Wide" # Determines if + or = are wrapped in spaces in the punctuation of types
= true # Replace uses of the try! macro by the ? shorthand
= true # Break comments to fit on the line
= "Two" # Don't need to be backwards compatible with One
= []