sherlock_io/patterns/dotnet.rs
1use regex::Regex;
2
3pub struct DotnetPatterns {
4 external_patterns: Vec<Regex>,
5 cache_patterns: Vec<Regex>,
6 extensions: Vec<String>,
7}
8
9impl DotnetPatterns {
10 pub fn new() -> Self {
11 let external_patterns = vec![
12 // Build outputs
13 Regex::new(r"bin/").unwrap(),
14 Regex::new(r"obj/").unwrap(),
15
16 // Compiled assemblies
17 Regex::new(r"\.dll$").unwrap(),
18 Regex::new(r"\.exe$").unwrap(),
19 Regex::new(r"\.pdb$").unwrap(),
20 Regex::new(r"\.lib$").unwrap(),
21 Regex::new(r"\.exp$").unwrap(),
22 Regex::new(r"\.ilk$").unwrap(),
23
24 // Package management
25 Regex::new(r"packages/").unwrap(),
26 Regex::new(r"\.nuget/").unwrap(),
27 Regex::new(r"\.nupkg$").unwrap(),
28 Regex::new(r"\.snupkg$").unwrap(),
29
30 // Testing outputs
31 Regex::new(r"TestResults/").unwrap(),
32 Regex::new(r"\.trx$").unwrap(),
33 Regex::new(r"\.coverage$").unwrap(),
34 Regex::new(r"\.coveragexml$").unwrap(),
35
36 // IDE generated files
37 Regex::new(r"\.vs/").unwrap(),
38 Regex::new(r"\.vscode/").unwrap(),
39 Regex::new(r"\.idea/").unwrap(),
40 Regex::new(r"\.suo$").unwrap(),
41 Regex::new(r"\.user$").unwrap(),
42 Regex::new(r"\.userosscache$").unwrap(),
43 Regex::new(r"\.sln\.docstates$").unwrap(),
44
45 // Publish outputs
46 Regex::new(r"publish/").unwrap(),
47 Regex::new(r"\.publish/").unwrap(),
48 Regex::new(r"PublishProfiles/").unwrap(),
49
50 // ASP.NET
51 Regex::new(r"wwwroot/").unwrap(),
52 Regex::new(r"\.publish\.xml$").unwrap(),
53
54 // Entity Framework
55 Regex::new(r"Migrations/").unwrap(),
56
57 // Xamarin
58 Regex::new(r"\.dSYM/").unwrap(),
59 Regex::new(r"\.app/").unwrap(),
60 Regex::new(r"\.ipa$").unwrap(),
61 Regex::new(r"\.apk$").unwrap(),
62
63 // Unity
64 Regex::new(r"Library/").unwrap(),
65 Regex::new(r"Temp/").unwrap(),
66 Regex::new(r"\.tmp$").unwrap(),
67
68 // Resharper
69 Regex::new(r"_ReSharper").unwrap(),
70 Regex::new(r"\.resharper").unwrap(),
71
72 // dotCover
73 Regex::new(r"\.dotCover$").unwrap(),
74
75 // NCrunch
76 Regex::new(r"\.ncrunch").unwrap(),
77 Regex::new(r"_NCrunch_").unwrap(),
78
79 // MightyMoose
80 Regex::new(r"\.mm\.").unwrap(),
81 Regex::new(r"AutoTest\.Net/").unwrap(),
82
83 // Web deploy package
84 Regex::new(r"\.zip$").unwrap(),
85
86 // Backup files
87 Regex::new(r"\.bak$").unwrap(),
88 Regex::new(r"\.cache$").unwrap(),
89
90 // StyleCop
91 Regex::new(r"StyleCopReport\.xml$").unwrap(),
92
93 // Files built by Visual Studio
94 Regex::new(r"\.pidb$").unwrap(),
95 Regex::new(r"\.svclog$").unwrap(),
96 Regex::new(r"\.scc$").unwrap(),
97
98 // Chutzpah Test files
99 Regex::new(r"_Chutzpah").unwrap(),
100
101 // Visual C++ cache files
102 Regex::new(r"ipch/").unwrap(),
103 Regex::new(r"\.aps$").unwrap(),
104 Regex::new(r"\.ncb$").unwrap(),
105 Regex::new(r"\.opendb$").unwrap(),
106 Regex::new(r"\.opensdf$").unwrap(),
107 Regex::new(r"\.sdf$").unwrap(),
108 Regex::new(r"\.cachefile$").unwrap(),
109 Regex::new(r"\.VC\.db$").unwrap(),
110 Regex::new(r"\.VC\.VC\.opendb$").unwrap(),
111
112 // Visual Studio profiler
113 Regex::new(r"\.psess$").unwrap(),
114 Regex::new(r"\.vsp$").unwrap(),
115 Regex::new(r"\.vspx$").unwrap(),
116 Regex::new(r"\.sap$").unwrap(),
117
118 // TFS 2012 Local Workspace
119 Regex::new(r"\$tf/").unwrap(),
120
121 // Guidance Automation Toolkit
122 Regex::new(r"\.gpState$").unwrap(),
123
124 // ReSharper is a .NET coding add-in
125 Regex::new(r"_ReSharper\.Caches/").unwrap(),
126
127 // TeamCity is a build add-in
128 Regex::new(r"\.teamcity/").unwrap(),
129
130 // DotCover is a Code Coverage Tool
131 Regex::new(r"\.dotCover$").unwrap(),
132
133 // Visual Studio code coverage results
134 Regex::new(r"\.coverage$").unwrap(),
135 Regex::new(r"\.coveragexml$").unwrap(),
136
137 // NCrunch
138 Regex::new(r"\.ncrunch").unwrap(),
139 Regex::new(r"_NCrunch_").unwrap(),
140
141 // MightyMoose
142 Regex::new(r"\.mm\.").unwrap(),
143 Regex::new(r"AutoTest\.Net/").unwrap(),
144
145 // Installshield output folder
146 Regex::new(r"Express/").unwrap(),
147
148 // DocProject is a documentation generator add-in
149 Regex::new(r"DocProject/buildhelp/").unwrap(),
150 Regex::new(r"DocProject/Help/").unwrap(),
151 Regex::new(r"DocProject/Help/Html2/").unwrap(),
152 Regex::new(r"DocProject/Help/html/").unwrap(),
153
154 // Click-Once directory
155 Regex::new(r"publish/").unwrap(),
156
157 // Publish Web Output
158 Regex::new(r"\.Publish\.xml$").unwrap(),
159
160 // Windows Azure Build Output
161 Regex::new(r"csx/").unwrap(),
162 Regex::new(r"\.build\.csdef$").unwrap(),
163
164 // Windows Store app package directory
165 Regex::new(r"AppPackages/").unwrap(),
166
167 // Others
168 Regex::new(r"\.Cache$").unwrap(),
169 Regex::new(r"ClientBin/").unwrap(),
170 Regex::new(r"\[Ss\]tyle[Cc]op\.\*$").unwrap(),
171 Regex::new(r"~\$").unwrap(),
172 Regex::new(r"\.dbmdl$").unwrap(),
173 Regex::new(r"\.dbproj\.schemaview$").unwrap(),
174 Regex::new(r"\.pfx$").unwrap(),
175 Regex::new(r"\.publishsettings$").unwrap(),
176 Regex::new(r"orleans\.codegen\.cs$").unwrap(),
177
178 // RIA/Silverlight projects
179 Regex::new(r"Generated_Code/").unwrap(),
180
181 // Backup & report files from converting an old project file
182 Regex::new(r"_UpgradeReport_Files/").unwrap(),
183 Regex::new(r"Backup").unwrap(),
184 Regex::new(r"UpgradeLog").unwrap(),
185
186 // SQL Server files
187 Regex::new(r"\.mdf$").unwrap(),
188 Regex::new(r"\.ldf$").unwrap(),
189
190 // Business Intelligence projects
191 Regex::new(r"\.rdl\.data$").unwrap(),
192 Regex::new(r"\.bim\.layout$").unwrap(),
193 Regex::new(r"\.bim_").unwrap(),
194
195 // Microsoft Fakes
196 Regex::new(r"FakesAssemblies/").unwrap(),
197
198 // GhostDoc plugin setting file
199 Regex::new(r"\.GhostDoc\.xml$").unwrap(),
200
201 // Node.js Tools for Visual Studio
202 Regex::new(r"\.ntvs_analysis\.dat$").unwrap(),
203 Regex::new(r"\.ntvs_analysis\.dat\.tmp$").unwrap(),
204
205 // Visual Studio 6 build log
206 Regex::new(r"\.plg$").unwrap(),
207
208 // Visual Studio 6 workspace options file
209 Regex::new(r"\.opt$").unwrap(),
210
211 // Visual Studio 6 auto-generated workspace file
212 Regex::new(r"\.vbw$").unwrap(),
213
214 // Visual Studio LightSwitch build output
215 Regex::new(r"\.HTMLClient/GeneratedArtifacts/").unwrap(),
216 Regex::new(r"\.DesktopClient/GeneratedArtifacts/").unwrap(),
217 Regex::new(r"\.DesktopClient/ModelManifest\.xml$").unwrap(),
218 Regex::new(r"\.Server/GeneratedArtifacts/").unwrap(),
219 Regex::new(r"\.Server/ModelManifest\.xml$").unwrap(),
220 Regex::new(r"_Pvt_Extensions/").unwrap(),
221
222 // Paket dependency manager
223 Regex::new(r"\.paket/").unwrap(),
224 Regex::new(r"paket-files/").unwrap(),
225
226 // FAKE - F# Make
227 Regex::new(r"\.fake/").unwrap(),
228
229 // JetBrains Rider
230 Regex::new(r"\.idea/").unwrap(),
231
232 // CodeRush
233 Regex::new(r"\.cr/").unwrap(),
234
235 // Python Tools for Visual Studio (PTVS)
236 Regex::new(r"__pycache__/").unwrap(),
237 Regex::new(r"\.pyc$").unwrap(),
238
239 // Cake - Uncomment if you are using it
240 Regex::new(r"tools/").unwrap(),
241
242 // Tabs Studio
243 Regex::new(r"\.tss$").unwrap(),
244
245 // Telerik's JustMock configuration file
246 Regex::new(r"\.jmconfig$").unwrap(),
247
248 // BizTalk build output
249 Regex::new(r"\.btp\.cs$").unwrap(),
250 Regex::new(r"\.btm\.cs$").unwrap(),
251 Regex::new(r"\.odx\.cs$").unwrap(),
252 Regex::new(r"\.xsd\.cs$").unwrap(),
253
254 // OpenCover UI analysis results
255 Regex::new(r"OpenCover/").unwrap(),
256
257 // Azure Stream Analytics local run output
258 Regex::new(r"ASALocalRun/").unwrap(),
259
260 // MSBuild Binary and Structured Log
261 Regex::new(r"\.binlog$").unwrap(),
262
263 // NVidia Nsight GPU debugger configuration file
264 Regex::new(r"\.nvuser$").unwrap(),
265
266 // MFractors (Xamarin productivity tool) working folder
267 Regex::new(r"\.mfractor/").unwrap(),
268 ];
269
270 let cache_patterns = vec![
271 // NuGet caches
272 Regex::new(r"\.nuget/packages/").unwrap(),
273 Regex::new(r"\.nuget/v3-cache/").unwrap(),
274 Regex::new(r"\.nuget/tmp-cache/").unwrap(),
275
276 // MSBuild caches
277 Regex::new(r"obj/").unwrap(),
278 Regex::new(r"\.vs/").unwrap(),
279
280 // Visual Studio caches
281 Regex::new(r"\.vscode/").unwrap(),
282 Regex::new(r"\.idea/").unwrap(),
283
284 // ReSharper caches
285 Regex::new(r"_ReSharper\.Caches/").unwrap(),
286
287 // dotCover caches
288 Regex::new(r"\.dotCover$").unwrap(),
289
290 // NCrunch caches
291 Regex::new(r"\.ncrunch").unwrap(),
292 Regex::new(r"_NCrunch_").unwrap(),
293
294 // Test caches
295 Regex::new(r"TestResults/").unwrap(),
296
297 // Temporary files
298 Regex::new(r"\.tmp$").unwrap(),
299 Regex::new(r"\.cache$").unwrap(),
300
301 // Publish caches
302 Regex::new(r"\.publish/").unwrap(),
303
304 // Entity Framework caches
305 Regex::new(r"\.ef/").unwrap(),
306
307 // Xamarin caches
308 Regex::new(r"\.dSYM/").unwrap(),
309
310 // Unity caches
311 Regex::new(r"Library/").unwrap(),
312 Regex::new(r"Temp/").unwrap(),
313
314 // Paket caches
315 Regex::new(r"\.paket/").unwrap(),
316
317 // FAKE caches
318 Regex::new(r"\.fake/").unwrap(),
319
320 // JetBrains Rider caches
321 Regex::new(r"\.idea/").unwrap(),
322
323 // CodeRush caches
324 Regex::new(r"\.cr/").unwrap(),
325
326 // Python Tools for Visual Studio caches
327 Regex::new(r"__pycache__/").unwrap(),
328
329 // Cake caches
330 Regex::new(r"tools/").unwrap(),
331
332 // OpenCover caches
333 Regex::new(r"OpenCover/").unwrap(),
334
335 // Azure Stream Analytics caches
336 Regex::new(r"ASALocalRun/").unwrap(),
337
338 // MFractors caches
339 Regex::new(r"\.mfractor/").unwrap(),
340 ];
341
342 let extensions = vec![
343 // C# files
344 "cs".to_string(), "csx".to_string(),
345
346 // VB.NET files
347 "vb".to_string(),
348
349 // F# files
350 "fs".to_string(), "fsx".to_string(), "fsi".to_string(),
351
352 // Project files
353 "csproj".to_string(), "fsproj".to_string(), "vbproj".to_string(),
354 "vcxproj".to_string(), "vcproj".to_string(),
355
356 // Solution files
357 "sln".to_string(),
358
359 // Package files
360 "nuspec".to_string(),
361
362 // Resource files
363 "resx".to_string(), "resw".to_string(), "resources".to_string(),
364
365 // Web files
366 "aspx".to_string(), "ascx".to_string(), "asax".to_string(),
367 "ashx".to_string(), "asmx".to_string(),
368 "razor".to_string(), "cshtml".to_string(), "vbhtml".to_string(),
369
370 // XAML files
371 "xaml".to_string(),
372
373 // Configuration files
374 "config".to_string(), "settings".to_string(),
375
376 // Database files
377 "edmx".to_string(), "dbml".to_string(),
378
379 // Deployment files
380 "targets".to_string(), "props".to_string(),
381
382 // Assembly info
383 "asm".to_string(),
384
385 // T4 templates
386 "tt".to_string(), "ttinclude".to_string(),
387
388 // StyleCop
389 "stylecop".to_string(),
390
391 // WiX
392 "wxs".to_string(), "wxi".to_string(),
393
394 // MSBuild
395 "msbuild".to_string(),
396
397 // PowerShell
398 "ps1".to_string(), "psm1".to_string(), "psd1".to_string(),
399 ];
400
401 Self {
402 external_patterns,
403 cache_patterns,
404 extensions,
405 }
406 }
407
408 pub fn get_external_patterns(&self) -> &[Regex] {
409 &self.external_patterns
410 }
411
412 pub fn get_cache_patterns(&self) -> &[Regex] {
413 &self.cache_patterns
414 }
415
416 pub fn get_extensions(&self) -> &[String] {
417 &self.extensions
418 }
419
420 pub fn get_script_names() -> Vec<&'static str> {
421 vec![
422 // Solution and project files
423 "*.sln", "*.csproj", "*.fsproj", "*.vbproj",
424 "*.vcxproj", "*.vcproj", "*.proj",
425
426 // Package management
427 "packages.config", "*.nuspec", "nuget.config",
428 "Directory.Build.props", "Directory.Build.targets",
429 "Directory.Packages.props", "global.json",
430
431 // MSBuild
432 "*.targets", "*.props", "*.tasks",
433
434 // Configuration files
435 "app.config", "web.config", "machine.config",
436 "appsettings.json", "appsettings.Development.json",
437 "appsettings.Production.json", "appsettings.Staging.json",
438 "launchSettings.json", "bundleconfig.json",
439
440 // ASP.NET Core
441 "Program.cs", "Startup.cs", "*.razor",
442 "_ViewStart.cshtml", "_ViewImports.cshtml",
443 "_Layout.cshtml", "*.cshtml", "*.vbhtml",
444
445 // Entity Framework
446 "*.edmx", "*.dbml", "DbContext.cs",
447
448 // Testing
449 "*.runsettings", "*.testsettings",
450
451 // Deployment
452 "*.pubxml", "*.wpp.targets", "*.deploy.cmd",
453 "Dockerfile", "docker-compose.yml", "docker-compose.yaml",
454
455 // CI/CD
456 ".github/workflows/dotnet.yml", ".github/workflows/build.yml",
457 "azure-pipelines.yml", "appveyor.yml",
458 "GitVersion.yml", "version.json",
459
460 // Code analysis
461 "*.ruleset", "StyleCop.json", "editorconfig",
462 ".editorconfig", "omnisharp.json",
463
464 // Documentation
465 "README.md", "CHANGELOG.md", "LICENSE",
466 "*.shfbproj", "*.ndoc",
467
468 // Xamarin
469 "Info.plist", "AndroidManifest.xml",
470 "*.storyboard", "*.xib",
471
472 // Unity
473 "*.unity", "*.prefab", "*.mat", "*.asset",
474 "ProjectSettings/", "UserSettings/",
475
476 // WPF/WinForms
477 "*.xaml", "*.resx", "*.settings",
478
479 // WiX
480 "*.wxs", "*.wxi", "*.wxl",
481
482 // PowerShell
483 "*.ps1", "*.psm1", "*.psd1",
484
485 // Azure Functions
486 "host.json", "local.settings.json",
487 "function.json", "proxies.json",
488
489 // Blazor
490 "_Imports.razor", "App.razor",
491 "MainLayout.razor", "NavMenu.razor",
492
493 // Service Fabric
494 "ServiceManifest.xml", "ApplicationManifest.xml",
495
496 // Orleans
497 "*.grain", "*.silo",
498
499 // Paket
500 "paket.dependencies", "paket.lock",
501 "paket.references", "paket.template",
502
503 // FAKE
504 "build.fsx", "fake.cmd", "fake.sh",
505
506 // Cake
507 "build.cake", "cake.config",
508
509 // BenchmarkDotNet
510 "*.benchmarks",
511
512 // Roslyn Analyzers
513 "*.analyzer",
514
515 // Source generators
516 "*.generator",
517
518 // gRPC
519 "*.proto",
520
521 // OpenAPI/Swagger
522 "swagger.json", "openapi.json",
523
524 // SignalR
525 "*.hub",
526
527 // Minimal APIs
528 "*.endpoints",
529
530 // Health checks
531 "*.healthchecks",
532
533 // Background services
534 "*.backgroundservice",
535
536 // Middleware
537 "*.middleware",
538
539 // Filters
540 "*.filter",
541
542 // Custom attributes
543 "*.attribute",
544
545 // Extension methods
546 "*.extensions",
547
548 // Converters
549 "*.converter",
550
551 // Validators
552 "*.validator",
553
554 // Mappers
555 "*.mapper",
556
557 // Repositories
558 "*.repository",
559
560 // Services
561 "*.service",
562
563 // Controllers
564 "*.controller",
565
566 // Models
567 "*.model", "*.dto", "*.viewmodel",
568
569 // Data contexts
570 "*.context",
571
572 // Migrations
573 "*.migration",
574
575 // Seeders
576 "*.seeder",
577
578 // Policies
579 "*.policy",
580
581 // Handlers
582 "*.handler",
583
584 // Options
585 "*.options",
586
587 // Constants
588 "*.constants",
589
590 // Enums
591 "*.enum",
592
593 // Interfaces
594 "*.interface",
595
596 // Abstractions
597 "*.abstraction",
598
599 // Implementations
600 "*.implementation",
601
602 // Factories
603 "*.factory",
604
605 // Builders
606 "*.builder",
607
608 // Strategies
609 "*.strategy",
610
611 // Decorators
612 "*.decorator",
613
614 // Adapters
615 "*.adapter",
616
617 // Facades
618 "*.facade",
619
620 // Proxies
621 "*.proxy",
622
623 // Singletons
624 "*.singleton",
625
626 // Utilities
627 "*.utility", "*.helper",
628
629 // Configurations
630 "*.configuration",
631
632 // Profiles
633 "*.profile",
634
635 // Specifications
636 "*.specification",
637
638 // Queries
639 "*.query",
640
641 // Commands
642 "*.command",
643
644 // Events
645 "*.event",
646
647 // Notifications
648 "*.notification",
649
650 // Requests
651 "*.request",
652
653 // Responses
654 "*.response",
655
656 // Results
657 "*.result",
658
659 // Exceptions
660 "*.exception",
661
662 // Resources
663 "*.resource",
664
665 // Localizations
666 "*.localization",
667
668 // Cultures
669 "*.culture",
670
671 // Themes
672 "*.theme",
673
674 // Styles
675 "*.style",
676
677 // Templates
678 "*.template",
679
680 // Layouts
681 "*.layout",
682
683 // Components
684 "*.component",
685
686 // Directives
687 "*.directive",
688
689 // Pipes
690 "*.pipe",
691
692 // Guards
693 "*.guard",
694
695 // Resolvers
696 "*.resolver",
697
698 // Interceptors
699 "*.interceptor",
700
701 // Modules
702 "*.module",
703
704 // Providers
705 "*.provider",
706
707 // Injectors
708 "*.injector",
709
710 // Containers
711 "*.container",
712
713 // Registrations
714 "*.registration",
715
716 // Bindings
717 "*.binding",
718
719 // Scopes
720 "*.scope",
721
722 // Lifetimes
723 "*.lifetime",
724
725 // Activators
726 "*.activator",
727
728 // Disposables
729 "*.disposable",
730
731 // Finalizers
732 "*.finalizer",
733
734 // Destructors
735 "*.destructor",
736
737 // Constructors
738 "*.constructor",
739
740 // Initializers
741 "*.initializer",
742
743 // Terminators
744 "*.terminator",
745
746 // Cleaners
747 "*.cleaner",
748
749 // Managers
750 "*.manager",
751
752 // Coordinators
753 "*.coordinator",
754
755 // Supervisors
756 "*.supervisor",
757
758 // Monitors
759 "*.monitor",
760
761 // Watchers
762 "*.watcher",
763
764 // Observers
765 "*.observer",
766
767 // Listeners
768 "*.listener",
769
770 // Subscribers
771 "*.subscriber",
772
773 // Publishers
774 "*.publisher",
775
776 // Producers
777 "*.producer",
778
779 // Consumers
780 "*.consumer",
781
782 // Processors
783 "*.processor",
784
785 // Transformers
786 "*.transformer",
787
788 // Serializers
789 "*.serializer",
790
791 // Deserializers
792 "*.deserializer",
793
794 // Encoders
795 "*.encoder",
796
797 // Decoders
798 "*.decoder",
799
800 // Compressors
801 "*.compressor",
802
803 // Decompressors
804 "*.decompressor",
805
806 // Encryptors
807 "*.encryptor",
808
809 // Decryptors
810 "*.decryptor",
811
812 // Hashers
813 "*.hasher",
814
815 // Signers
816 "*.signer",
817
818 // Verifiers
819 "*.verifier",
820
821 // Authenticators
822 "*.authenticator",
823
824 // Authorizers
825 "*.authorizer",
826
827 // Identifiers
828 "*.identifier",
829
830 // Generators
831 "*.generator",
832
833 // Parsers
834 "*.parser",
835
836 // Lexers
837 "*.lexer",
838
839 // Tokenizers
840 "*.tokenizer",
841
842 // Analyzers
843 "*.analyzer",
844
845 // Optimizers
846 "*.optimizer",
847
848 // Compilers
849 "*.compiler",
850
851 // Interpreters
852 "*.interpreter",
853
854 // Executors
855 "*.executor",
856
857 // Runners
858 "*.runner",
859
860 // Launchers
861 "*.launcher",
862
863 // Starters
864 "*.starter",
865
866 // Stoppers
867 "*.stopper",
868
869 // Pausers
870 "*.pauser",
871
872 // Resumers
873 "*.resumer",
874
875 // Resetters
876 "*.resetter",
877
878 // Refreshers
879 "*.refresher",
880
881 // Updaters
882 "*.updater",
883
884 // Deleters
885 "*.deleter",
886
887 // Creators
888 "*.creator",
889
890 // Destroyers
891 "*.destroyer",
892
893 // Builders
894 "*.builder",
895
896 // Constructors
897 "*.constructor",
898
899 // Assemblers
900 "*.assembler",
901
902 // Disassemblers
903 "*.disassembler",
904
905 // Linkers
906 "*.linker",
907
908 // Loaders
909 "*.loader",
910
911 // Unloaders
912 "*.unloader",
913
914 // Savers
915 "*.saver",
916
917 // Readers
918 "*.reader",
919
920 // Writers
921 "*.writer",
922
923 // Streamers
924 "*.streamer",
925
926 // Buffers
927 "*.buffer",
928
929 // Caches
930 "*.cache",
931
932 // Stores
933 "*.store",
934
935 // Repositories
936 "*.repository",
937
938 // Databases
939 "*.database",
940
941 // Connections
942 "*.connection",
943
944 // Clients
945 "*.client",
946
947 // Servers
948 "*.server",
949
950 // Hosts
951 "*.host",
952
953 // Guests
954 "*.guest",
955
956 // Peers
957 "*.peer",
958
959 // Nodes
960 "*.node",
961
962 // Clusters
963 "*.cluster",
964
965 // Networks
966 "*.network",
967
968 // Protocols
969 "*.protocol",
970
971 // Channels
972 "*.channel",
973
974 // Pipes
975 "*.pipe",
976
977 // Queues
978 "*.queue",
979
980 // Stacks
981 "*.stack",
982
983 // Heaps
984 "*.heap",
985
986 // Trees
987 "*.tree",
988
989 // Graphs
990 "*.graph",
991
992 // Lists
993 "*.list",
994
995 // Arrays
996 "*.array",
997
998 // Dictionaries
999 "*.dictionary",
1000
1001 // Maps
1002 "*.map",
1003
1004 // Sets
1005 "*.set",
1006
1007 // Collections
1008 "*.collection",
1009
1010 // Iterators
1011 "*.iterator",
1012
1013 // Enumerators
1014 "*.enumerator",
1015
1016 // Comparers
1017 "*.comparer",
1018
1019 // Equalizers
1020 "*.equalizer",
1021
1022 // Sorters
1023 "*.sorter",
1024
1025 // Searchers
1026 "*.searcher",
1027
1028 // Finders
1029 "*.finder",
1030
1031 // Matchers
1032 "*.matcher",
1033
1034 // Filters
1035 "*.filter",
1036
1037 // Selectors
1038 "*.selector",
1039
1040 // Projectors
1041 "*.projector",
1042
1043 // Aggregators
1044 "*.aggregator",
1045
1046 // Accumulators
1047 "*.accumulator",
1048
1049 // Reducers
1050 "*.reducer",
1051
1052 // Folders
1053 "*.folder",
1054
1055 // Mappers
1056 "*.mapper",
1057
1058 // Flatteners
1059 "*.flattener",
1060
1061 // Groupers
1062 "*.grouper",
1063
1064 // Partitioners
1065 "*.partitioner",
1066
1067 // Splitters
1068 "*.splitter",
1069
1070 // Joiners
1071 "*.joiner",
1072
1073 // Mergers
1074 "*.merger",
1075
1076 // Combiners
1077 "*.combiner",
1078
1079 // Concatenators
1080 "*.concatenator",
1081
1082 // Appenders
1083 "*.appender",
1084
1085 // Prependers
1086 "*.prepender",
1087
1088 // Inserters
1089 "*.inserter",
1090
1091 // Removers
1092 "*.remover",
1093
1094 // Replacers
1095 "*.replacer",
1096
1097 // Substituters
1098 "*.substituter",
1099
1100 // Swappers
1101 "*.swapper",
1102
1103 // Exchangers
1104 "*.exchanger",
1105
1106 // Traders
1107 "*.trader",
1108
1109 // Negotiators
1110 "*.negotiator",
1111
1112 // Mediators
1113 "*.mediator",
1114
1115 // Arbitrators
1116 "*.arbitrator",
1117
1118 // Judges
1119 "*.judge",
1120
1121 // Evaluators
1122 "*.evaluator",
1123
1124 // Assessors
1125 "*.assessor",
1126
1127 // Testers
1128 "*.tester",
1129
1130 // Validators
1131 "*.validator",
1132
1133 // Checkers
1134 "*.checker",
1135
1136 // Verifiers
1137 "*.verifier",
1138
1139 // Confirmers
1140 "*.confirmer",
1141
1142 // Approvers
1143 "*.approver",
1144
1145 // Rejecters
1146 "*.rejecter",
1147
1148 // Acceptors
1149 "*.acceptor",
1150
1151 // Deniers
1152 "*.denier",
1153
1154 // Granters
1155 "*.granter",
1156
1157 // Revokers
1158 "*.revoker",
1159
1160 // Enablers
1161 "*.enabler",
1162
1163 // Disablers
1164 "*.disabler",
1165
1166 // Activators
1167 "*.activator",
1168
1169 // Deactivators
1170 "*.deactivator",
1171
1172 // Triggers
1173 "*.trigger",
1174
1175 // Schedulers
1176 "*.scheduler",
1177
1178 // Timers
1179 "*.timer",
1180
1181 // Clocks
1182 "*.clock",
1183
1184 // Calendars
1185 "*.calendar",
1186
1187 // Dates
1188 "*.date",
1189
1190 // Times
1191 "*.time",
1192
1193 // Durations
1194 "*.duration",
1195
1196 // Intervals
1197 "*.interval",
1198
1199 // Periods
1200 "*.period",
1201
1202 // Spans
1203 "*.span",
1204
1205 // Ranges
1206 "*.range",
1207
1208 // Bounds
1209 "*.bound",
1210
1211 // Limits
1212 "*.limit",
1213
1214 // Constraints
1215 "*.constraint",
1216
1217 // Rules
1218 "*.rule",
1219
1220 // Policies
1221 "*.policy",
1222
1223 // Strategies
1224 "*.strategy",
1225
1226 // Algorithms
1227 "*.algorithm",
1228
1229 // Heuristics
1230 "*.heuristic",
1231
1232 // Patterns
1233 "*.pattern",
1234
1235 // Templates
1236 "*.template",
1237
1238 // Blueprints
1239 "*.blueprint",
1240
1241 // Schemas
1242 "*.schema",
1243
1244 // Specifications
1245 "*.specification",
1246
1247 // Definitions
1248 "*.definition",
1249
1250 // Declarations
1251 "*.declaration",
1252
1253 // Annotations
1254 "*.annotation",
1255
1256 // Attributes
1257 "*.attribute",
1258
1259 // Properties
1260 "*.property",
1261
1262 // Fields
1263 "*.field",
1264
1265 // Variables
1266 "*.variable",
1267
1268 // Constants
1269 "*.constant",
1270
1271 // Parameters
1272 "*.parameter",
1273
1274 // Arguments
1275 "*.argument",
1276
1277 // Values
1278 "*.value",
1279
1280 // Objects
1281 "*.object",
1282
1283 // Instances
1284 "*.instance",
1285
1286 // References
1287 "*.reference",
1288
1289 // Pointers
1290 "*.pointer",
1291
1292 // Handles
1293 "*.handle",
1294
1295 // Identifiers
1296 "*.identifier",
1297
1298 // Keys
1299 "*.key",
1300
1301 // Tokens
1302 "*.token",
1303
1304 // Symbols
1305 "*.symbol",
1306
1307 // Names
1308 "*.name",
1309
1310 // Labels
1311 "*.label",
1312
1313 // Tags
1314 "*.tag",
1315
1316 // Marks
1317 "*.mark",
1318
1319 // Flags
1320 "*.flag",
1321
1322 // Indicators
1323 "*.indicator",
1324
1325 // Signals
1326 "*.signal",
1327
1328 // Messages
1329 "*.message",
1330
1331 // Notifications
1332 "*.notification",
1333
1334 // Alerts
1335 "*.alert",
1336
1337 // Warnings
1338 "*.warning",
1339
1340 // Errors
1341 "*.error",
1342
1343 // Exceptions
1344 "*.exception",
1345
1346 // Faults
1347 "*.fault",
1348
1349 // Failures
1350 "*.failure",
1351
1352 // Problems
1353 "*.problem",
1354
1355 // Issues
1356 "*.issue",
1357
1358 // Bugs
1359 "*.bug",
1360
1361 // Defects
1362 "*.defect",
1363
1364 // Flaws
1365 "*.flaw",
1366
1367 // Vulnerabilities
1368 "*.vulnerability",
1369
1370 // Threats
1371 "*.threat",
1372
1373 // Risks
1374 "*.risk",
1375
1376 // Hazards
1377 "*.hazard",
1378
1379 // Dangers
1380 "*.danger",
1381
1382 // Perils
1383 "*.peril",
1384
1385 // Jeopardies
1386 "*.jeopardy",
1387
1388 // Exposures
1389 "*.exposure",
1390
1391 // Liabilities
1392 "*.liability",
1393
1394 // Responsibilities
1395 "*.responsibility",
1396
1397 // Obligations
1398 "*.obligation",
1399
1400 // Duties
1401 "*.duty",
1402
1403 // Tasks
1404 "*.task",
1405
1406 // Jobs
1407 "*.job",
1408
1409 // Works
1410 "*.work",
1411
1412 // Operations
1413 "*.operation",
1414
1415 // Actions
1416 "*.action",
1417
1418 // Activities
1419 "*.activity",
1420
1421 // Processes
1422 "*.process",
1423
1424 // Procedures
1425 "*.procedure",
1426
1427 // Methods
1428 "*.method",
1429
1430 // Functions
1431 "*.function",
1432
1433 // Routines
1434 "*.routine",
1435
1436 // Subroutines
1437 "*.subroutine",
1438
1439 // Modules
1440 "*.module",
1441
1442 // Components
1443 "*.component",
1444
1445 // Parts
1446 "*.part",
1447
1448 // Pieces
1449 "*.piece",
1450
1451 // Elements
1452 "*.element",
1453
1454 // Items
1455 "*.item",
1456
1457 // Entities
1458 "*.entity",
1459
1460 // Units
1461 "*.unit",
1462
1463 // Blocks
1464 "*.block",
1465
1466 // Chunks
1467 "*.chunk",
1468
1469 // Segments
1470 "*.segment",
1471
1472 // Sections
1473 "*.section",
1474
1475 // Divisions
1476 "*.division",
1477
1478 // Partitions
1479 "*.partition",
1480
1481 // Regions
1482 "*.region",
1483
1484 // Areas
1485 "*.area",
1486
1487 // Zones
1488 "*.zone",
1489
1490 // Districts
1491 "*.district",
1492
1493 // Neighborhoods
1494 "*.neighborhood",
1495
1496 // Communities
1497 "*.community",
1498
1499 // Societies
1500 "*.society",
1501
1502 // Groups
1503 "*.group",
1504
1505 // Teams
1506 "*.team",
1507
1508 // Crews
1509 "*.crew",
1510
1511 // Squads
1512 "*.squad",
1513
1514 // Units
1515 "*.unit",
1516
1517 // Divisions
1518 "*.division",
1519
1520 // Departments
1521 "*.department",
1522
1523 // Sections
1524 "*.section",
1525
1526 // Branches
1527 "*.branch",
1528
1529 // Offices
1530 "*.office",
1531
1532 // Bureaus
1533 "*.bureau",
1534
1535 // Agencies
1536 "*.agency",
1537
1538 // Organizations
1539 "*.organization",
1540
1541 // Institutions
1542 "*.institution",
1543
1544 // Establishments
1545 "*.establishment",
1546
1547 // Enterprises
1548 "*.enterprise",
1549
1550 // Businesses
1551 "*.business",
1552
1553 // Companies
1554 "*.company",
1555
1556 // Corporations
1557 "*.corporation",
1558
1559 // Firms
1560 "*.firm",
1561
1562 // Partnerships
1563 "*.partnership",
1564
1565 // Associations
1566 "*.association",
1567
1568 // Alliances
1569 "*.alliance",
1570
1571 // Coalitions
1572 "*.coalition",
1573
1574 // Federations
1575 "*.federation",
1576
1577 // Unions
1578 "*.union",
1579
1580 // Leagues
1581 "*.league",
1582
1583 // Clubs
1584 "*.club",
1585
1586 // Societies
1587 "*.society",
1588
1589 // Fraternities
1590 "*.fraternity",
1591
1592 // Sororities
1593 "*.sorority",
1594
1595 // Brotherhoods
1596 "*.brotherhood",
1597
1598 // Sisterhoods
1599 "*.sisterhood",
1600
1601 // Fellowships
1602 "*.fellowship",
1603
1604 // Memberships
1605 "*.membership",
1606
1607 // Citizenships
1608 "*.citizenship",
1609
1610 // Residencies
1611 "*.residency",
1612
1613 // Inhabitants
1614 "*.inhabitant",
1615
1616 // Residents
1617 "*.resident",
1618
1619 // Occupants
1620 "*.occupant",
1621
1622 // Tenants
1623 "*.tenant",
1624
1625 // Renter
1626 "*.renter",
1627
1628 // Lessee
1629 "*.lessee",
1630
1631 // Lessor
1632 "*.lessor",
1633
1634 // Landlord
1635 "*.landlord",
1636
1637 // Owner
1638 "*.owner",
1639
1640 // Proprietors
1641 "*.proprietor",
1642
1643 // Possessors
1644 "*.possessor",
1645
1646 // Holders
1647 "*.holder",
1648
1649 // Bearers
1650 "*.bearer",
1651
1652 // Carriers
1653 "*.carrier",
1654
1655 // Transporters
1656 "*.transporter",
1657
1658 // Movers
1659 "*.mover",
1660
1661 // Shippers
1662 "*.shipper",
1663
1664 // Senders
1665 "*.sender",
1666
1667 // Receivers
1668 "*.receiver",
1669
1670 // Recipients
1671 "*.recipient",
1672
1673 // Addressees
1674 "*.addressee",
1675
1676 // Consignees
1677 "*.consignee",
1678
1679 // Consignors
1680 "*.consignor",
1681
1682 // Vendors
1683 "*.vendor",
1684
1685 // Suppliers
1686 "*.supplier",
1687
1688 // Providers
1689 "*.provider",
1690
1691 // Distributors
1692 "*.distributor",
1693
1694 // Dealers
1695 "*.dealer",
1696
1697 // Retailers
1698 "*.retailer",
1699
1700 // Wholesalers
1701 "*.wholesaler",
1702
1703 // Merchants
1704 "*.merchant",
1705
1706 // Traders
1707 "*.trader",
1708
1709 // Sellers
1710 "*.seller",
1711
1712 // Buyers
1713 "*.buyer",
1714
1715 // Purchasers
1716 "*.purchaser",
1717
1718 // Customers
1719 "*.customer",
1720
1721 // Clients
1722 "*.client",
1723
1724 // Patrons
1725 "*.patron",
1726
1727 // Consumers
1728 "*.consumer",
1729
1730 // Users
1731 "*.user",
1732
1733 // Operators
1734 "*.operator",
1735
1736 // Administrators
1737 "*.administrator",
1738
1739 // Managers
1740 "*.manager",
1741
1742 // Directors
1743 "*.director",
1744
1745 // Executives
1746 "*.executive",
1747
1748 // Officers
1749 "*.officer",
1750
1751 // Officials
1752 "*.official",
1753
1754 // Authorities
1755 "*.authority",
1756
1757 // Leaders
1758 "*.leader",
1759
1760 // Chiefs
1761 "*.chief",
1762
1763 // Heads
1764 "*.head",
1765
1766 // Principals
1767 "*.principal",
1768
1769 // Supervisors
1770 "*.supervisor",
1771
1772 // Overseers
1773 "*.overseer",
1774
1775 // Foremen
1776 "*.foreman",
1777
1778 // Bosses
1779 "*.boss",
1780
1781 // Employers
1782 "*.employer",
1783
1784 // Employees
1785 "*.employee",
1786
1787 // Workers
1788 "*.worker",
1789
1790 // Laborers
1791 "*.laborer",
1792
1793 // Staff
1794 "*.staff",
1795
1796 // Personnel
1797 "*.personnel",
1798
1799 // Crew
1800 "*.crew",
1801
1802 // Team
1803 "*.team",
1804
1805 // Group
1806 "*.group",
1807
1808 // Squad
1809 "*.squad",
1810
1811 // Unit
1812 "*.unit",
1813
1814 // Division
1815 "*.division",
1816
1817 // Department
1818 "*.department",
1819
1820 // Section
1821 "*.section",
1822
1823 // Branch
1824 "*.branch",
1825
1826 // Office
1827 "*.office",
1828
1829 // Bureau
1830 "*.bureau",
1831
1832 // Agency
1833 "*.agency",
1834
1835 // Organization
1836 "*.organization",
1837
1838 // Institution
1839 "*.institution",
1840
1841 // Establishment
1842 "*.establishment",
1843
1844 // Enterprise
1845 "*.enterprise",
1846
1847 // Business
1848 "*.business",
1849
1850 // Company
1851 "*.company",
1852
1853 // Corporation
1854 "*.corporation",
1855
1856 // Firm
1857 "*.firm",
1858
1859 // Partnership
1860 "*.partnership",
1861
1862 // Association
1863 "*.association",
1864
1865 // Alliance
1866 "*.alliance",
1867
1868 // Coalition
1869 "*.coalition",
1870
1871 // Federation
1872 "*.federation",
1873
1874 // Union
1875 "*.union",
1876
1877 // League
1878 "*.league",
1879
1880 // Club
1881 "*.club",
1882
1883 // Society
1884 "*.society",
1885
1886 // Fraternity
1887 "*.fraternity",
1888
1889 // Sorority
1890 "*.sorority",
1891
1892 // Brotherhood
1893 "*.brotherhood",
1894
1895 // Sisterhood
1896 "*.sisterhood",
1897
1898 // Fellowship
1899 "*.fellowship",
1900
1901 // Membership
1902 "*.membership",
1903
1904 // Citizenship
1905 "*.citizenship",
1906
1907 // Residency
1908 "*.residency",
1909
1910 // Inhabitant
1911 "*.inhabitant",
1912
1913 // Resident
1914 "*.resident",
1915
1916 // Occupant
1917 "*.occupant",
1918
1919 // Tenant
1920 "*.tenant",
1921
1922 // Renter
1923 "*.renter",
1924
1925 // Lessee
1926 "*.lessee",
1927
1928 // Lessor
1929 "*.lessor",
1930
1931 // Landlord
1932 "*.landlord",
1933
1934 // Owner
1935 "*.owner",
1936
1937 // Proprietor
1938 "*.proprietor",
1939
1940 // Possessor
1941 "*.possessor",
1942
1943 // Holder
1944 "*.holder",
1945
1946 // Bearer
1947 "*.bearer",
1948
1949 // Carrier
1950 "*.carrier",
1951
1952 // Transporter
1953 "*.transporter",
1954
1955 // Mover
1956 "*.mover",
1957
1958 // Shipper
1959 "*.shipper",
1960
1961 // Sender
1962 "*.sender",
1963
1964 // Receiver
1965 "*.receiver",
1966
1967 // Recipient
1968 "*.recipient",
1969
1970 // Addressee
1971 "*.addressee",
1972
1973 // Consignee
1974 "*.consignee",
1975
1976 // Consignor
1977 "*.consignor",
1978
1979 // Vendor
1980 "*.vendor",
1981
1982 // Supplier
1983 "*.supplier",
1984
1985 // Provider
1986 "*.provider",
1987
1988 // Distributor
1989 "*.distributor",
1990
1991 // Dealer
1992 "*.dealer",
1993
1994 // Retailer
1995 "*.retailer",
1996
1997 // Wholesaler
1998 "*.wholesaler",
1999
2000 // Merchant
2001 "*.merchant",
2002
2003 // Trader
2004 "*.trader",
2005
2006 // Seller
2007 "*.seller",
2008
2009 // Buyer
2010 "*.buyer",
2011
2012 // Purchaser
2013 "*.purchaser",
2014
2015 // Customer
2016 "*.customer",
2017
2018 // Client
2019 "*.client",
2020
2021 // Patron
2022 "*.patron",
2023
2024 // Consumer
2025 "*.consumer",
2026
2027 // User
2028 "*.user",
2029
2030 // Operator
2031 "*.operator",
2032
2033 // Administrator
2034 "*.administrator",
2035
2036 // Manager
2037 "*.manager",
2038
2039 // Director
2040 "*.director",
2041
2042 // Executive
2043 "*.executive",
2044
2045 // Officer
2046 "*.officer",
2047
2048 // Official
2049 "*.official",
2050
2051 // Authority
2052 "*.authority",
2053
2054 // Leader
2055 "*.leader",
2056
2057 // Chief
2058 "*.chief",
2059
2060 // Head
2061 "*.head",
2062
2063 // Principal
2064 "*.principal",
2065
2066 // Supervisor
2067 "*.supervisor",
2068
2069 // Overseer
2070 "*.overseer",
2071
2072 // Foreman
2073 "*.foreman",
2074
2075 // Boss
2076 "*.boss",
2077
2078 // Employer
2079 "*.employer",
2080
2081 // Employee
2082 "*.employee",
2083
2084 // Worker
2085 "*.worker",
2086
2087 // Laborer
2088 "*.laborer",
2089 ]
2090 }
2091}