Skip to content
This repository was archived by the owner on Apr 4, 2024. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
286 changes: 286 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,286 @@
root = true

[*.cs]
# SA1633: File should have header
dotnet_diagnostic.SA1633.severity = error

# SA1633: File should be documented
dotnet_diagnostic.SA1600.severity = error

# IDE0003: Remove qualification
dotnet_diagnostic.IDE0003.severity = none

# CS8629: Nullable value type may be null.
dotnet_diagnostic.CS8629.severity = error

# CS8762: Parameter must have a non-null value when exiting in some condition.
dotnet_diagnostic.CS8762.severity = error

# CS8602: Dereference of a possibly null reference.
dotnet_diagnostic.CS8602.severity = error

# CS8600: Converting null literal or possible null value to non-nullable type.
dotnet_diagnostic.CS8600.severity = error

# CS8603: Possible null reference return.
dotnet_diagnostic.CS8603.severity = error

# CS8601: Possible null reference assignment.
dotnet_diagnostic.CS8601.severity = error

# CS8775: Member must have a non-null value when exiting in some condition.
dotnet_diagnostic.CS8775.severity = error

# CS8620: Argument cannot be used for parameter due to differences in the nullability of reference types.
dotnet_diagnostic.CS8620.severity = error

# CS8777: Parameter must have a non-null value when exiting.
dotnet_diagnostic.CS8777.severity = error

# SA1507: Code should not contain multiple blank lines in a row
dotnet_diagnostic.SA1507.severity = warning

# CS8618: Non-nullable field must contain a non-null value when exiting constructor. Consider declaring as nullable.
dotnet_diagnostic.CS8618.severity = error

# CS8776: Member cannot be used in this attribute.
dotnet_diagnostic.CS8776.severity = error

resharper_redundant_name_qualifier_highlighting = none

csharp_using_directive_placement = inside_namespace:warning
csharp_prefer_simple_using_statement = true:warning
# csharp_prefer_braces = true:suggestion
csharp_style_namespace_declarations = file_scoped:warning
csharp_style_prefer_method_group_conversion = true:warning
csharp_style_prefer_top_level_statements = false:warning
csharp_style_expression_bodied_methods = false:silent
csharp_style_expression_bodied_constructors = false:silent
csharp_style_expression_bodied_operators = true:silent
csharp_style_expression_bodied_properties = true:silent
csharp_style_expression_bodied_indexers = true:silent
csharp_style_expression_bodied_accessors = true:silent
csharp_style_expression_bodied_lambdas = true:silent
csharp_style_expression_bodied_local_functions = true:silent
csharp_indent_labels = one_less_than_current
csharp_style_throw_expression = true:warning
csharp_style_prefer_null_check_over_type_check = true:warning
csharp_prefer_simple_default_expression = true:warning
csharp_style_prefer_local_over_anonymous_function = true:warning
csharp_style_prefer_tuple_swap = true:warning
csharp_style_implicit_object_creation_when_type_is_apparent = false:warning
csharp_style_prefer_range_operator = true:suggestion
csharp_style_prefer_index_operator = true:suggestion
csharp_style_prefer_utf8_string_literals = true:suggestion
csharp_style_prefer_readonly_struct = true:suggestion
csharp_prefer_static_local_function = true:suggestion
csharp_style_prefer_readonly_struct_member = true:suggestion
csharp_style_unused_value_expression_statement_preference = unused_local_variable:none
csharp_style_unused_value_assignment_preference = unused_local_variable:warning
csharp_style_deconstructed_variable_declaration = true:warning
csharp_style_inlined_variable_declaration = true:warning
csharp_style_prefer_extended_property_pattern = true:suggestion
csharp_style_prefer_not_pattern = true:suggestion
csharp_style_pattern_matching_over_as_with_null_check = true:suggestion
csharp_style_pattern_matching_over_is_with_cast_check = true:suggestion
csharp_style_prefer_pattern_matching = true:silent
csharp_style_prefer_switch_expression = true:suggestion
csharp_style_conditional_delegate_call = true:suggestion
csharp_style_allow_blank_line_after_token_in_arrow_expression_clause_experimental = true:silent
csharp_style_allow_blank_line_after_token_in_conditional_expression_experimental = true:silent
csharp_style_allow_blank_line_after_colon_in_constructor_initializer_experimental = true:silent
csharp_style_allow_blank_lines_between_consecutive_braces_experimental = true:silent
csharp_style_allow_embedded_statements_on_same_line_experimental = true:silent
csharp_style_var_elsewhere = false:warning
csharp_style_var_when_type_is_apparent = false:warning
csharp_style_var_for_built_in_types = false:warning

# SA1000: Keywords should be spaced correctly
dotnet_diagnostic.SA1000.severity = none

# IDE0058: Expression value is never used
dotnet_diagnostic.IDE0058.severity = none

# IDE0280: Use 'nameof'
dotnet_diagnostic.IDE0280.severity = warning

# CS0436: Type conflicts with imported type
dotnet_diagnostic.CS0436.severity = suggestion

# SA1010: Opening square brackets should be spaced correctly
dotnet_diagnostic.SA1010.severity = silent

[LethalAPI.Core/Events/Interfaces/*.cs]
resharper_unassigned_get_only_auto_property_highlighting=none

[LethalAPI.Core/Patches/{Fixes,Events}/{*,Player/*,Server/*}.cs]
# SA1202: Internal members before private members. - Patches should always come before helper methods.
dotnet_diagnostic.SA1202.severity = none

# SA1313:
dotnet_diagnostic.SA1313.severity = none

# SA1649: Filename should match class name.
dotnet_diagnostic.SA1649.severity = none

# SA1402: Only one class should be in a file.
dotnet_diagnostic.SA1402.severity = none

resharper_unused_parameter_local_highlighting=none
resharper_unused_member_local_highlighting=none
resharper_string_literal_typo_highlighting=none
resharper_identifier_typo_highlighting=none
resharper_comment_typo_highlighting=none

[LethalAPI.Core/System/*.cs]
# SA1633: File should have header
dotnet_diagnostic.SA1633.severity = none

dotnet_diagnostic.SA1636.severity = none

# SA1641: File should have copyright
dotnet_diagnostic.SA1641.severity = none

[LethalAPI.Core/Events/EventArgs/*/*.cs]
# CS0649: Property never assigned.
dotnet_diagnostic.CS0649.severity=error
resharper_unused_auto_property_accessor_global_highlighting=none
resharper_class_never_instantiated_global_highlighting=none
resharper_unassigned_get_only_auto_property_highlighting=error

[LethalAPI.Core/Safety/SafeEnumerator\{T\}.cs]
# SA1633: File should have header.
dotnet_diagnostic.SA1633.severity = none

[LethalAPI.Core/Patches/HarmonyTools/{SafetyPatch,TranspilerHelper}.cs]
# SA1633: File should have header.
dotnet_diagnostic.SA1633.severity = none

[LethalAPI.Core/MEC/Timing.cs]
# SA1633: File should have header.
dotnet_diagnostic.SA1633.severity = none


[*.{cs,vb}]
#### Naming styles ####

# Naming rules
resharper_inconsistent_naming_highlighting=none

dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i

dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion
dotnet_naming_rule.types_should_be_pascal_case.symbols = types
dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case

dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion
dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case

# Symbol specifications

dotnet_naming_symbols.interface.applicable_kinds = interface
dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
dotnet_naming_symbols.interface.required_modifiers =

dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
dotnet_naming_symbols.types.required_modifiers =

dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
dotnet_naming_symbols.non_field_members.required_modifiers =

# Naming styles

dotnet_naming_style.begins_with_i.required_prefix = I
dotnet_naming_style.begins_with_i.required_suffix =
dotnet_naming_style.begins_with_i.word_separator =
dotnet_naming_style.begins_with_i.capitalization = pascal_case

dotnet_naming_style.pascal_case.required_prefix =
dotnet_naming_style.pascal_case.required_suffix =
dotnet_naming_style.pascal_case.word_separator =
dotnet_naming_style.pascal_case.capitalization = pascal_case
dotnet_style_coalesce_expression = true:warning
dotnet_style_null_propagation = true:warning
dotnet_style_prefer_is_null_check_over_reference_equality_method = true:warning
dotnet_style_prefer_auto_properties = false:warning
dotnet_style_object_initializer = true:warning
dotnet_style_collection_initializer = true:warning
dotnet_style_prefer_simplified_boolean_expressions = true:warning
dotnet_style_prefer_conditional_expression_over_assignment = true:warning
dotnet_style_prefer_conditional_expression_over_return = true:warning
dotnet_style_operator_placement_when_wrapping = beginning_of_line
tab_width = 4
indent_size = 4
end_of_line = crlf
dotnet_style_explicit_tuple_names = true:warning
dotnet_style_prefer_inferred_anonymous_type_member_names = true:warning
dotnet_style_prefer_inferred_tuple_names = true:warning
dotnet_style_prefer_compound_assignment = true:warning
dotnet_style_prefer_simplified_interpolation = true:warning
dotnet_style_namespace_match_folder = true:warning
dotnet_style_require_accessibility_modifiers = for_non_interface_members:silent
dotnet_style_predefined_type_for_member_access = true:silent
dotnet_style_predefined_type_for_locals_parameters_members = true:silent
dotnet_style_readonly_field = true:suggestion
dotnet_style_qualification_for_field = false:silent
dotnet_style_parentheses_in_other_operators = never_if_unnecessary:silent
dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity:silent
dotnet_style_parentheses_in_other_binary_operators = always_for_clarity:silent
dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity:silent
dotnet_code_quality_unused_parameters = all:suggestion
dotnet_style_allow_statement_immediately_after_block_experimental = true:silent
dotnet_style_allow_multiple_blank_lines_experimental = true:silent
dotnet_style_qualification_for_property = false:silent
dotnet_style_qualification_for_method = false:silent
dotnet_style_qualification_for_event = false:silent



# Remove BepInEx auto-generated info files. (womp-womp)
[PluginInfo.cs]

# SA1310: Field should not contain an underscore
dotnet_diagnostic.SA1310.severity = none

# SA1600: Elements should be documented
dotnet_diagnostic.SA1600.severity = none

# CS1591: Missing XML comment for publicly visible type or member.
dotnet_diagnostic.CS1591.severity = none

# SA1633: File should have header
dotnet_diagnostic.SA1633.severity = none

[IgnoresAccessChecksToAttribute.cs]
# SA1600: Elements should be documented
dotnet_diagnostic.SA1600.severity = none

# CS1591: Missing XML comment for publicly visible type or member.
dotnet_diagnostic.CS1591.severity = none

# SA1633: File should have header
dotnet_diagnostic.SA1633.severity = none

[LethalAPI.Monsters/Patches/*.cs]
# SA1202: Internal members before private members. - Patches should always come before helper methods.
dotnet_diagnostic.SA1202.severity = none

# SA1313:
dotnet_diagnostic.SA1313.severity = none

# SA1649: Filename should match class name.
dotnet_diagnostic.SA1649.severity = none

# SA1402: Only one class should be in a file.
dotnet_diagnostic.SA1402.severity = none

resharper_unused_parameter_local_highlighting=none
resharper_unused_member_local_highlighting=none
resharper_string_literal_typo_highlighting=none
resharper_identifier_typo_highlighting=none
resharper_comment_typo_highlighting=none
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
*.user
*.userosscache
*.sln.docstates
/.idea/**

# User-specific files (MonoDevelop/Xamarin Studio)
*.userprefs
Expand Down
Loading