@@ -36,6 +36,7 @@ internal class SA1137ElementsShouldHaveTheSameIndentation : DiagnosticAnalyzer
3636 private static readonly Action < SyntaxNodeAnalysisContext > TypeDeclarationAction = HandleTypeDeclaration ;
3737 private static readonly Action < SyntaxNodeAnalysisContext > EnumDeclarationAction = HandleEnumDeclaration ;
3838 private static readonly Action < SyntaxNodeAnalysisContext > EnumMemberDeclarationAction = HandleEnumMemberDeclaration ;
39+ private static readonly Action < SyntaxNodeAnalysisContext > FieldDeclarationAction = HandleFieldDeclaration ;
3940 private static readonly Action < SyntaxNodeAnalysisContext > BaseMethodDeclarationAction = HandleBaseMethodDeclaration ;
4041 private static readonly Action < SyntaxNodeAnalysisContext > MethodDeclarationAction = HandleMethodDeclaration ;
4142 private static readonly Action < SyntaxNodeAnalysisContext > BasePropertyDeclarationAction = HandleBasePropertyDeclaration ;
@@ -51,6 +52,7 @@ internal class SA1137ElementsShouldHaveTheSameIndentation : DiagnosticAnalyzer
5152 private static readonly Action < SyntaxNodeAnalysisContext > AttributeArgumentListAction = HandleAttributeArgumentList ;
5253 private static readonly Action < SyntaxNodeAnalysisContext > BlockAction = HandleBlock ;
5354 private static readonly Action < SyntaxNodeAnalysisContext > SwitchStatementAction = HandleSwitchStatement ;
55+ private static readonly Action < SyntaxNodeAnalysisContext > InitializerExpressionAction = HandleInitializerExpression ;
5456
5557 /// <inheritdoc/>
5658 public override ImmutableArray < DiagnosticDescriptor > SupportedDiagnostics { get ; } =
@@ -70,6 +72,7 @@ private static void HandleCompilationStart(CompilationStartAnalysisContext conte
7072 context . RegisterSyntaxNodeActionHonorExclusions ( TypeDeclarationAction , SyntaxKinds . TypeDeclaration ) ;
7173 context . RegisterSyntaxNodeActionHonorExclusions ( EnumDeclarationAction , SyntaxKind . EnumDeclaration ) ;
7274 context . RegisterSyntaxNodeActionHonorExclusions ( EnumMemberDeclarationAction , SyntaxKind . EnumMemberDeclaration ) ;
75+ context . RegisterSyntaxNodeActionHonorExclusions ( FieldDeclarationAction , SyntaxKind . FieldDeclaration ) ;
7376 context . RegisterSyntaxNodeActionHonorExclusions ( BaseMethodDeclarationAction , SyntaxKinds . BaseMethodDeclaration ) ;
7477 context . RegisterSyntaxNodeActionHonorExclusions ( MethodDeclarationAction , SyntaxKind . MethodDeclaration ) ;
7578 context . RegisterSyntaxNodeActionHonorExclusions ( BasePropertyDeclarationAction , SyntaxKinds . BasePropertyDeclaration ) ;
@@ -85,6 +88,7 @@ private static void HandleCompilationStart(CompilationStartAnalysisContext conte
8588 context . RegisterSyntaxNodeActionHonorExclusions ( AttributeArgumentListAction , SyntaxKind . AttributeArgumentList ) ;
8689 context . RegisterSyntaxNodeActionHonorExclusions ( BlockAction , SyntaxKind . Block ) ;
8790 context . RegisterSyntaxNodeActionHonorExclusions ( SwitchStatementAction , SyntaxKind . SwitchStatement ) ;
91+ context . RegisterSyntaxNodeActionHonorExclusions ( InitializerExpressionAction , SyntaxKinds . InitializerExpression ) ;
8892 }
8993
9094 private static void HandleCompilationUnit ( SyntaxNodeAnalysisContext context )
@@ -141,6 +145,13 @@ private static void HandleEnumMemberDeclaration(SyntaxNodeAnalysisContext contex
141145 CheckAttributeLists ( context , enumMemberDeclaration . AttributeLists , enumMemberDeclaration ) ;
142146 }
143147
148+ private static void HandleFieldDeclaration ( SyntaxNodeAnalysisContext context )
149+ {
150+ var fieldDeclaration = ( FieldDeclarationSyntax ) context . Node ;
151+
152+ CheckAttributeLists ( context , fieldDeclaration . AttributeLists , fieldDeclaration ) ;
153+ }
154+
144155 private static void HandleBaseMethodDeclaration ( SyntaxNodeAnalysisContext context )
145156 {
146157 var baseMethodDeclaration = ( BaseMethodDeclarationSyntax ) context . Node ;
@@ -283,6 +294,13 @@ private static void HandleSwitchStatement(SyntaxNodeAnalysisContext context)
283294 CheckElements ( context , labeledStatements . ToImmutable ( ) ) ;
284295 }
285296
297+ private static void HandleInitializerExpression ( SyntaxNodeAnalysisContext context )
298+ {
299+ var initializerExpression = ( InitializerExpressionSyntax ) context . Node ;
300+
301+ CheckElements ( context , initializerExpression . Expressions ) ;
302+ }
303+
286304 private static void CheckAttributeLists ( SyntaxNodeAnalysisContext context , SyntaxList < AttributeListSyntax > attributeLists , SyntaxNode parent )
287305 {
288306 if ( attributeLists . Count == 0 )
0 commit comments