Skip to content

Commit 8127d9b

Browse files
authored
Merge pull request #4404 from tamasvajk/feature/cleanup-2
C# extractor code cleanup
2 parents b49aa67 + ce9624e commit 8127d9b

File tree

225 files changed

+3222
-3186
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

225 files changed

+3222
-3186
lines changed

csharp/.editorconfig

Lines changed: 96 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
# Taken as is from https://docs.microsoft.com/en-us/visualstudio/ide/editorconfig-code-style-settings-reference?view=vs-2019
2+
# Naming rules are removed.
23
# Customizations are added at the bottom of the file.
34

45
# Remove the line below if you want to inherit .editorconfig settings from higher directories
@@ -15,14 +16,14 @@ indent_style = space
1516
tab_width = 4
1617

1718
# New line preferences
18-
end_of_line = crlf
19-
insert_final_newline = false
19+
end_of_line = {cr|lf|crlf} # we should use what git uses
20+
insert_final_newline = true
2021

2122
#### .NET Coding Conventions ####
2223

23-
# Organize usings
24-
dotnet_separate_import_directive_groups = false
25-
dotnet_sort_system_directives_first = false
24+
# Organize usings - not specified
25+
# dotnet_separate_import_directive_groups = false
26+
# dotnet_sort_system_directives_first = false
2627

2728
# this. and Me. preferences
2829
dotnet_style_qualification_for_event = false:silent
@@ -158,56 +159,115 @@ csharp_space_between_square_brackets = false
158159
csharp_preserve_single_line_blocks = true
159160
csharp_preserve_single_line_statements = true
160161

161-
#### Naming styles ####
162162

163-
# Naming rules
163+
#### Naming rules ####
164+
165+
dotnet_naming_style.camel_case_style.capitalization = camel_case
166+
167+
# Private fields are camelCase
168+
dotnet_naming_rule.private_fields_should_be_pascal_case.severity = suggestion
169+
dotnet_naming_rule.private_fields_should_be_pascal_case.symbols = private_fields
170+
dotnet_naming_rule.private_fields_should_be_pascal_case.style = camel_case_style
171+
172+
dotnet_naming_symbols.private_fields.applicable_kinds = field
173+
dotnet_naming_symbols.private_fields.applicable_accessibilities = private
174+
175+
# Locals and parameters are camelCase
176+
dotnet_naming_rule.locals_should_be_camel_case.severity = suggestion
177+
dotnet_naming_rule.locals_should_be_camel_case.symbols = locals_and_parameters
178+
dotnet_naming_rule.locals_should_be_camel_case.style = camel_case_style
179+
180+
dotnet_naming_symbols.locals_and_parameters.applicable_kinds = parameter, local
181+
182+
# Interfaces are PascalCase, prefixed with I
164183

165184
dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
166185
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = interface
167186
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_i
168187

169-
dotnet_naming_rule.types_should_be_pascal_case.severity = suggestion
170-
dotnet_naming_rule.types_should_be_pascal_case.symbols = types
171-
dotnet_naming_rule.types_should_be_pascal_case.style = pascal_case
188+
dotnet_naming_symbols.interface.applicable_kinds = interface
189+
dotnet_naming_symbols.interface.applicable_accessibilities = *
190+
191+
dotnet_naming_style.begins_with_i.required_prefix = I
192+
dotnet_naming_style.begins_with_i.capitalization = pascal_case
193+
194+
# Type parameters are PascalCase, prefixed with T
172195

173-
dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = suggestion
174-
dotnet_naming_rule.non_field_members_should_be_pascal_case.symbols = non_field_members
175-
dotnet_naming_rule.non_field_members_should_be_pascal_case.style = pascal_case
196+
dotnet_naming_rule.interface_should_be_begins_with_i.severity = suggestion
197+
dotnet_naming_rule.interface_should_be_begins_with_i.symbols = type_parameter
198+
dotnet_naming_rule.interface_should_be_begins_with_i.style = begins_with_t
176199

177-
# Symbol specifications
200+
dotnet_naming_symbols.type_parameter.applicable_kinds = type_parameter
201+
dotnet_naming_symbols.type_parameter.applicable_accessibilities = *
178202

179-
dotnet_naming_symbols.interface.applicable_kinds = interface
180-
dotnet_naming_symbols.interface.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
181-
dotnet_naming_symbols.interface.required_modifiers =
203+
dotnet_naming_style.begins_with_t.required_prefix = T
204+
dotnet_naming_style.begins_with_t.capitalization = pascal_case
182205

183-
dotnet_naming_symbols.types.applicable_kinds = class, struct, interface, enum
184-
dotnet_naming_symbols.types.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
185-
dotnet_naming_symbols.types.required_modifiers =
206+
# By default, name items with PascalCase
207+
dotnet_naming_rule.members_should_be_pascal_case.severity = suggestion
208+
dotnet_naming_rule.members_should_be_pascal_case.symbols = all_members
209+
dotnet_naming_rule.members_should_be_pascal_case.style = pascal_case_style
186210

187-
dotnet_naming_symbols.non_field_members.applicable_kinds = property, event, method
188-
dotnet_naming_symbols.non_field_members.applicable_accessibilities = public, internal, private, protected, protected_internal, private_protected
189-
dotnet_naming_symbols.non_field_members.required_modifiers =
211+
dotnet_naming_symbols.all_members.applicable_kinds = *
190212

191-
# Naming styles
213+
dotnet_naming_style.pascal_case_style.capitalization = pascal_case
192214

193-
dotnet_naming_style.pascal_case.required_prefix =
194-
dotnet_naming_style.pascal_case.required_suffix =
195-
dotnet_naming_style.pascal_case.word_separator =
196-
dotnet_naming_style.pascal_case.capitalization = pascal_case
215+
#### End naming rules ####
197216

198-
dotnet_naming_style.begins_with_i.required_prefix = I
199-
dotnet_naming_style.begins_with_i.required_suffix =
200-
dotnet_naming_style.begins_with_i.word_separator =
201-
dotnet_naming_style.begins_with_i.capitalization = pascal_case
202217

203-
#
204-
# Customizations
205-
#
218+
219+
## The below are taken from Roslyn: https://github.com/dotnet/roslyn/blob/master/.editorconfig
206220

207221
# IDE0055: Fix formatting
208222
dotnet_diagnostic.IDE0055.severity = warning
209223

224+
# IDE0011: Add braces
225+
csharp_prefer_braces = when_multiline:warning
226+
# NOTE: We need the below severity entry for Add Braces due to https://github.com/dotnet/roslyn/issues/44201
227+
dotnet_diagnostic.IDE0011.severity = warning
228+
229+
# IDE0040: Add accessibility modifiers
230+
dotnet_diagnostic.IDE0040.severity = warning
231+
232+
# CONSIDER: Are IDE0051 and IDE0052 too noisy to be warnings for IDE editing scenarios? Should they be made build-only warnings?
233+
# IDE0051: Remove unused private member
234+
dotnet_diagnostic.IDE0051.severity = warning
235+
236+
# IDE0052: Remove unread private member
237+
dotnet_diagnostic.IDE0052.severity = warning
238+
239+
# IDE0059: Unnecessary assignment to a value
240+
dotnet_diagnostic.IDE0059.severity = warning
241+
242+
# IDE0060: Remove unused parameter
243+
dotnet_diagnostic.IDE0060.severity = warning
244+
245+
# CA1822: Make member static
246+
dotnet_diagnostic.CA1822.severity = warning
247+
248+
# IDE0035: Remove unreachable code
249+
dotnet_diagnostic.IDE0035.severity = warning
250+
251+
# IDE0036: Order modifiers
252+
dotnet_diagnostic.IDE0036.severity = warning
253+
254+
# IDE0043: Format string contains invalid placeholder
255+
dotnet_diagnostic.IDE0043.severity = warning
256+
257+
# IDE0044: Make field readonly
258+
dotnet_diagnostic.IDE0044.severity = warning
259+
260+
# Prefer "var" everywhere
261+
dotnet_diagnostic.IDE0007.severity = suggestion
262+
csharp_style_var_for_built_in_types = true:suggestion
263+
csharp_style_var_when_type_is_apparent = true:suggestion
264+
csharp_style_var_elsewhere = true:suggestion
265+
266+
#
267+
# Customizations
268+
#
269+
210270
[extractor/Semmle.Extraction/Tuples.cs,
211271
extractor/Semmle.Extraction.CSharp/Tuples.cs,
212272
extractor/Semmle.Extraction.CIL/Tuples.cs]
213-
dotnet_naming_rule.non_field_members_should_be_pascal_case.severity = none
273+
dotnet_naming_rule.members_should_be_pascal_case.severity = none

csharp/.vscode/settings.json

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,10 @@
22
"dotnet-test-explorer.enableTelemetry": false,
33
"dotnet-test-explorer.testProjectPath": "**/*Tests.@(csproj|vbproj|fsproj)",
44
"dotnet-test-explorer.testArguments": "/property:GenerateTargetFrameworkAttribute=false",
5-
"csharp.supressBuildAssetsNotification": true,
65
"csharp.suppressDotnetRestoreNotification": true,
76
"[csharp]": {
87
"editor.defaultFormatter": "ms-dotnettools.csharp"
98
},
10-
"omnisharp.enableMsBuildLoadProjectsOnDemand": true,
119
"omnisharp.enableEditorConfigSupport": true,
12-
"omnisharp.enableRoslynAnalyzers": true,
10+
"omnisharp.enableRoslynAnalyzers": true
1311
}

0 commit comments

Comments
 (0)