Categorization
Currently, there are two categories in Shimmering.Analyzers: ShimmeringUsage and ShimmeringStyle. The Shimmering prefix allows you to easily set the same severity for all diagnostics in this NuGet package.
- ShimmeringUsage: These rules have ID
SHIMMER1XXXand aim to enforce better usage of .NET APIs and C# constructs. If your code is flagged, it means there's likely a more idiomatic, efficient, or modern way to achieve the same result in .NET. - ShimmeringStyle: These rules have ID
SHIMMER2XXXand aim to enforce a consistent, but subjective, style throughout the code base. enforce the correct usage of .NET APIs and C# constructs.
All Shimmering rules are enabled by default, but some are hidden by default. See here to understand the differences.
Table
| Rule ID | Category | Severity | Since | Notes |
|---|---|---|---|---|
| SHIMMER1000 | ShimmeringUsage | Warning | 1.0.0 | NullableCancellationTokenAnalyzer, Documentation |
| SHIMMER1001 | ShimmeringUsage | Info | 1.0.0 | MissingCancellationTokenAnalyzer, Documentation |
| SHIMMER1010 | ShimmeringUsage | Warning | 1.0.0 | ToListForEachAnalyzer, Documentation |
| SHIMMER1011 | ShimmeringUsage | Warning | 1.0.0 | ToArrayOrToListFollowedByLinqMethodAnalyzer, Documentation |
| SHIMMER1012 | ShimmeringUsage | Warning | 1.0.0 | ArrayOrArrayReturningMethodFollowedByToArrayAnalyzer, Documentation |
| SHIMMER1013 | ShimmeringUsage | Warning | 1.1.0 | ListOrListReturningMethodFollowedByToListAnalyzer, Documentation |
| SHIMMER1014 | ShimmeringUsage | Warning | 1.1.0 | HashSetOrHashSetReturningMethodFollowedByToHashSetAnalyzer, Documentation |
| SHIMMER1015 | ShimmeringUsage | Hidden | 1.0.0 | SingleUseIEnumerableMaterializationAnalyzer, Documentation |
| SHIMMER1020 | ShimmeringUsage | Warning | 1.0.0 | RedundantSpreadElementAnalyzer, Documentation |
| SHIMMER1030 | ShimmeringUsage | Info | 1.0.0 | MissingRemoveEmptyEntriesAnalyzer, Documentation |
| SHIMMER1031 | ShimmeringUsage | Info | 1.1.0 | UseTrimEntriesAnalyzer, Documentation |
| SHIMMER1100 | ShimmeringUsage | Warning | 1.0.0 | MisusedOrDefaultAnalyzer, Documentation |
| SHIMMER1101 | ShimmeringUsage | Info | 1.0.0 | SingleElementConcatAnalyzer, Documentation |
| SHIMMER1102 | ShimmeringUsage | Hidden | 1.0.0 | UniqueNonSetCollectionAnalyzer, Documentation |
| SHIMMER2000 | ShimmeringStyle | Info | 1.0.0 | VerboseLinqChainAnalyzer, Documentation |
| SHIMMER2010 | ShimmeringStyle | Info | 1.0.0 | NegatedTernaryConditionAnalyzer, Documentation |
| SHIMMER2020 | ShimmeringStyle | Info | 1.0.0 | RedundantOutVariableAnalyzer, Documentation |
| SHIMMER2030 | ShimmeringStyle | Hidden | 1.0.0 | PrimaryConstructorParameterReassignmentAnalyzer, Documentation |
| SHIMMER2040 | ShimmeringStyle | Info | 1.1.0 | ForbidFullyQualifiedTypeReferencesAnalyzer, Documentation |