| root = true | |
| [*] | |
| indent_style = space | |
| indent_size = 2 | |
| tab_width = 2 | |
| insert_final_newline = true | |
| end_of_line = lf | |
| trim_trailing_whitespace = true | |
| charset = utf-8 | |
| resharper_enforce_line_ending_style = true | |
| resharper_apply_auto_detected_rules = false | |
| resharper_use_indent_from_vs = false | |
| [*.{cs, csx, cake, vb, vbx}] | |
| # Enforce go/csstyle | |
| # Naming rules | |
| # IDE1006 must be treated as an error for any of the following naming rules to affect builds | |
| dotnet_diagnostic.IDE1006.severity = error | |
| # this. preferences | |
| dotnet_style_qualification_for_field = false:error | |
| dotnet_style_qualification_for_property = false:error | |
| dotnet_style_qualification_for_method = false:error | |
| dotnet_style_qualification_for_event = false:error | |
| # Pascal case style | |
| dotnet_naming_style.pascal.capitalization = pascal_case | |
| # Interface style | |
| dotnet_naming_style.interface.capitalization = pascal_case | |
| dotnet_naming_style.interface.required_prefix = I | |
| # Camel-case style | |
| dotnet_naming_style.camel.capitalization = camel_case | |
| # Camel-case beginning with underscore style | |
| dotnet_naming_style.underscore_camel.capitalization = camel_case | |
| dotnet_naming_style.underscore_camel.required_prefix = _ | |
| # Symbols for namespaces | |
| dotnet_naming_symbols.namespaces.applicable_kinds = namespace | |
| dotnet_naming_symbols.namespaces.applicable_accessibilities = * | |
| # Symbols for types | |
| dotnet_naming_symbols.types.applicable_kinds = class, struct, delegate, type_parameter | |
| dotnet_naming_symbols.types.applicable_accessibilities = * | |
| # Symbols for interfaces | |
| dotnet_naming_symbols.interfaces.applicable_kinds = interface | |
| dotnet_naming_symbols.interfaces.applicable_accessibilities = * | |
| # Symbols for enums | |
| dotnet_naming_symbols.enums.applicable_kinds = enum | |
| dotnet_naming_symbols.enums.applicable_accessibilities = * | |
| # Symbols for public fields and properties | |
| dotnet_naming_symbols.public_fields_properties.applicable_kinds = field, property | |
| dotnet_naming_symbols.public_fields_properties.applicable_accessibilities = public | |
| # Symbols for non-public fields and properties - Unenforced | |
| dotnet_naming_symbols.non_public_fields_properties.applicable_kinds = field, property | |
| dotnet_naming_symbols.non_public_fields_properties.applicable_accessibilities = internal, private, protected, protected_internal | |
| # Symbols for non-public constants | |
| dotnet_naming_symbols.private_constants.applicable_kinds = field | |
| dotnet_naming_symbols.private_constants.applicable_accessibilities = private, protected, internal, protected_internal | |
| dotnet_naming_symbols.private_constants.required_modifiers = const | |
| # Symbols for public constants | |
| dotnet_naming_symbols.public_constants.applicable_kinds = field | |
| dotnet_naming_symbols.public_constants.applicable_accessibilities = public | |
| dotnet_naming_symbols.public_constants.required_modifiers = const | |
| # Symbols for non-public static readonly fields and properties | |
| dotnet_naming_symbols.private_static_readonly.applicable_kinds = field, property | |
| dotnet_naming_symbols.private_static_readonly.applicable_accessibilities = private, protected, internal, protected_internal | |
| dotnet_naming_symbols.private_static_readonly.required_modifiers = static, readonly | |
| # Symbols for public static readonly fields and properties | |
| dotnet_naming_symbols.public_static_readonly.applicable_kinds = field, property | |
| dotnet_naming_symbols.public_static_readonly.applicable_accessibilities = public | |
| dotnet_naming_symbols.public_static_readonly.required_modifiers = static, readonly | |
| # Symbols for methods and events | |
| dotnet_naming_symbols.methods.applicable_kinds = method, event, local_function | |
| dotnet_naming_symbols.methods.applicable_accessibilities = * | |
| # Symbols for local variables and parameters | |
| dotnet_naming_symbols.local_variables.applicable_kinds = local, parameter | |
| dotnet_naming_symbols.local_variables.applicable_accessibilities = * | |
| # Rule for namespaces | |
| dotnet_naming_rule.namespace_rule.symbols = namespaces | |
| dotnet_naming_rule.namespace_rule.style = pascal | |
| dotnet_naming_rule.namespace_rule.severity = error | |
| # Rule for types | |
| dotnet_naming_rule.type_rule.symbols = types | |
| dotnet_naming_rule.type_rule.style = pascal | |
| dotnet_naming_rule.type_rule.severity = error | |
| # Rule for interfaces | |
| dotnet_naming_rule.interface_rule.symbols = interfaces | |
| dotnet_naming_rule.interface_rule.style = interface | |
| dotnet_naming_rule.interface_rule.severity = error | |
| # Rule for enums - For now, do not enforce due to serialization | |
| dotnet_naming_rule.enum_rule.symbols = enums | |
| dotnet_naming_rule.enum_rule.style = pascal | |
| dotnet_naming_rule.enum_rule.severity = none | |
| # Rule for public fields and properties - For now, do not enforce due to serialization | |
| dotnet_naming_rule.public_field_property_rule.symbols = public_fields_properties | |
| dotnet_naming_rule.public_field_property_rule.style = pascal | |
| dotnet_naming_rule.public_field_property_rule.severity = none | |
| # Rule for non-public fields and properties - Not enforced | |
| dotnet_naming_rule.non_public_field_property_rule.symbols = non_public_fields_properties | |
| dotnet_naming_rule.non_public_field_property_rule.style = underscore_camel | |
| dotnet_naming_rule.non_public_field_property_rule.severity = none | |
| # Rule for non-public constants | |
| dotnet_naming_rule.private_constant_rule.symbols = private_constants | |
| dotnet_naming_rule.private_constant_rule.style = underscore_camel | |
| dotnet_naming_rule.private_constant_rule.severity = error | |
| # Rule for public constants | |
| dotnet_naming_rule.public_constant_rule.symbols = public_constants | |
| dotnet_naming_rule.public_constant_rule.style = pascal | |
| dotnet_naming_rule.public_constant_rule.severity = error | |
| # Rule for non-public static readonly fields and properties | |
| dotnet_naming_rule.private_static_readonly_rule.symbols = private_static_readonly | |
| dotnet_naming_rule.private_static_readonly_rule.style = underscore_camel | |
| dotnet_naming_rule.private_static_readonly_rule.severity = error | |
| # Rule for public static readonly fields and properties | |
| dotnet_naming_rule.private_static_readonly_rule.symbols = public_static_readonly | |
| dotnet_naming_rule.private_static_readonly_rule.style = pascal | |
| dotnet_naming_rule.private_static_readonly_rule.severity = error | |
| # Rule for methods and events | |
| dotnet_naming_rule.method_rule.symbols = methods | |
| dotnet_naming_rule.method_rule.style = pascal | |
| dotnet_naming_rule.method_rule.severity = error | |
| # Rule for local variables and parameters | |
| dotnet_naming_rule.variable_rule.symbols = local_variables | |
| dotnet_naming_rule.variable_rule.style = camel | |
| dotnet_naming_rule.variable_rule.severity = error | |
| # Organization | |
| dotnet_style_require_accessibility_modifiers = for_non_interface_members:suggestion | |
| dotnet_sort_system_directives_first = true | |
| resharper_sort_usings_with_system_first = true | |
| csharp_preserve_single_line_statements = false | |
| # Single-line blocks can be things like auto properties | |
| csharp_preserve_single_line_blocks = true | |
| csharp_using_directive_placement = outside_namespace | |
| csharp_trailing_comma_in_multiline_lists = true | |
| csharp_trailing_comma_in_singleline_lists = false | |
| resharper_arrange_trailing_comma_in_multiline_lists_highlighting = warning | |
| resharper_arrange_trailing_comma_in_singleline_lists_highlighting = warning | |
| dotnet_style_predefined_type_for_member_access = true:warning | |
| dotnet_style_predefined_type_for_locals_parameters_members = true:warning | |
| resharper_arrange_static_member_qualifier_highlighting = warning | |
| # Whitespace | |
| max_line_length = 100 | |
| csharp_max_line_length = 100 | |
| resharper_csharp_max_line_length = 100 | |
| resharper_wrap_lines = true | |
| resharper_continuous_indent_multiplier = 2 | |
| resharper_align_multiline_binary_expressions_chain = false | |
| resharper_align_multiline_statement_conditions = false | |
| csharp_new_line_before_open_brace = none | |
| csharp_new_line_before_else = false | |
| csharp_new_line_before_catch = false | |
| csharp_new_line_before_finally = false | |
| csharp_new_line_before_members_in_object_initializers = false | |
| csharp_new_line_before_members_in_anonymous_types = false | |
| csharp_new_line_between_query_expression_clauses = true | |
| resharper_blank_lines_after_block_statements = 0 | |
| resharper_blank_lines_around_single_line_auto_property = 1 | |
| resharper_blank_lines_around_single_line_property = 1 | |
| resharper_csharp_blank_lines_around_field = 0 | |
| resharper_csharp_blank_lines_around_single_line_invocable = 1 | |
| resharper_csharp_blank_lines_inside_region = 0 | |
| resharper_csharp_keep_blank_lines_in_code = 1 | |
| resharper_csharp_keep_blank_lines_in_declarations = 1 | |
| resharper_csharp_wrap_after_declaration_lpar = true | |
| resharper_csharp_wrap_after_invocation_lpar = true | |
| resharper_csharp_wrap_arguments_style = chop_if_long | |
| resharper_csharp_wrap_extends_list_style = chop_if_long | |
| resharper_csharp_wrap_parameters_style = chop_if_long | |
| resharper_keep_existing_declaration_parens_arrangement = false | |
| resharper_keep_existing_embedded_arrangement = false | |
| resharper_keep_existing_invocation_parens_arrangement = false | |
| resharper_keep_existing_property_patterns_arrangement = false | |
| resharper_keep_existing_switch_expression_arrangement = false | |
| resharper_max_array_initializer_elements_on_line = 3 | |
| resharper_max_initializer_elements_on_line = 3 | |
| resharper_place_accessorholder_attribute_on_same_line = false | |
| resharper_place_field_attribute_on_same_line = false | |
| resharper_place_simple_embedded_statement_on_same_line = false | |
| resharper_wrap_array_initializer_style = chop_if_long | |
| resharper_wrap_chained_method_calls = chop_if_long | |
| resharper_wrap_verbatim_interpolated_strings = wrap_if_long | |
| # Braces | |
| csharp_prefer_braces = true:silent | |
| resharper_braces_redundant = true | |
| resharper_csharp_empty_block_style = together_same_line | |
| resharper_enforce_do_while_statement_braces_highlighting = warning | |
| resharper_enforce_fixed_statement_braces_highlighting = warning | |
| resharper_enforce_foreach_statement_braces_highlighting = warning | |
| resharper_enforce_for_statement_braces_highlighting = warning | |
| resharper_enforce_if_statement_braces_highlighting = warning | |
| resharper_enforce_lock_statement_braces_highlighting = warning | |
| resharper_enforce_using_statement_braces_highlighting = warning | |
| resharper_enforce_while_statement_braces_highlighting = warning | |
| csharp_indent_case_contents = true | |
| csharp_indent_switch_labels = true | |
| csharp_indent_block_contents = true | |
| csharp_indent_braces = false | |
| csharp_indent_case_contents_when_block = false | |
| csharp_space_after_cast = false | |
| resharper_space_after_cast = false | |
| resharper_space_within_single_line_array_initializer_braces = true | |
| resharper_space_within_empty_braces = false | |
| csharp_space_before_comma = false | |
| csharp_space_after_comma = true | |
| csharp_space_after_dot = false | |
| csharp_space_after_keywords_in_control_flow_statements = true | |
| csharp_space_between_method_call_parameter_list_parentheses = false | |
| csharp_space_between_method_declaration_parameter_list_parentheses = false | |
| csharp_space_between_method_declaration_empty_parameter_list_parentheses = false | |
| csharp_space_before_colon_in_inheritance_clause = true | |
| csharp_space_after_colon_in_inheritance_clause = true | |
| csharp_space_around_binary_operators = before_and_after | |
| csharp_space_between_method_call_name_and_opening_parenthesis = false | |
| csharp_space_between_method_call_empty_parameter_list_parentheses = false | |
| csharp_space_after_semicolon_in_for_statement = true | |
| csharp_space_before_semicolon_in_for_statement = false | |
| csharp_space_around_declaration_statements = false | |
| csharp_space_before_open_square_brackets = false | |
| csharp_space_between_empty_square_brackets = false | |
| csharp_space_between_square_brackets = false | |
| csharp_place_attribute_on_same_line = false | |
| resharper_place_attribute_on_same_line = false | |
| resharper_arrange_attributes_highlighting = warning | |
| csharp_force_attribute_style = Separate | |
| # Braces required even when optional | |
| csharp_braces_for_ifelse = required | |
| csharp_braces_for_for = required | |
| csharp_braces_for_foreach = required | |
| csharp_braces_for_while = required | |
| csharp_braces_for_dowhile = required | |
| csharp_braces_for_lock = required | |
| csharp_braces_for_fixed = required | |
| resharper_braces_for_for = required | |
| resharper_braces_for_foreach = required | |
| resharper_braces_for_ifelse = required | |
| resharper_braces_for_while = required | |
| resharper_braces_redundant = false | |
| resharper_keep_existing_declaration_block_arrangement = true | |
| resharper_keep_existing_embedded_block_arrangement = true | |
| # Async/await rules. These don't seem to fail the build in Rider even though they show up as errors | |
| # in the "Problems" box and in the code, but at least they are visually marked as errors. | |
| resharper_async_void_lambda_highlighting = error | |
| resharper_async_void_method_highlighting = error | |
| dotnet_diagnostic.AsyncFixer01.severity = none | |
| dotnet_diagnostic.AsyncFixer02.severity = error | |
| dotnet_diagnostic.AsyncFixer03.severity = error | |
| dotnet_diagnostic.AsyncFixer04.severity = error | |
| dotnet_diagnostic.AsyncFixer05.severity = error | |
| resharper_keep_existing_enum_arrangement = true |