@@ -10,6 +10,7 @@ namespace StyleCop.Analyzers.ReadabilityRules
1010 using Microsoft . CodeAnalysis . CSharp . Syntax ;
1111 using Microsoft . CodeAnalysis . Diagnostics ;
1212 using StyleCop . Analyzers . Helpers ;
13+ using StyleCop . Analyzers . Lightup ;
1314
1415 /// <summary>
1516 /// The parameters to a C# method or indexer call or declaration span across multiple lines, but the first parameter
@@ -54,6 +55,7 @@ internal class SA1116SplitParametersMustStartOnLineAfterDeclaration : Diagnostic
5455 ImmutableArray . Create ( SyntaxKind . ConstructorDeclaration , SyntaxKind . MethodDeclaration , SyntaxKind . OperatorDeclaration ) ;
5556
5657 private static readonly Action < SyntaxNodeAnalysisContext > BaseMethodDeclarationAction = HandleBaseMethodDeclaration ;
58+ private static readonly Action < SyntaxNodeAnalysisContext > LocalFunctionStatementAction = HandleLocalFunctionStatement ;
5759 private static readonly Action < SyntaxNodeAnalysisContext > ConstructorInitializerAction = HandleConstructorInitializer ;
5860 private static readonly Action < SyntaxNodeAnalysisContext > DelegateDeclarationAction = HandleDelegateDeclaration ;
5961 private static readonly Action < SyntaxNodeAnalysisContext > IndexerDeclarationAction = HandleIndexerDeclaration ;
@@ -78,6 +80,7 @@ public override void Initialize(AnalysisContext context)
7880 context . EnableConcurrentExecution ( ) ;
7981
8082 context . RegisterSyntaxNodeAction ( BaseMethodDeclarationAction , BaseMethodDeclarationKinds ) ;
83+ context . RegisterSyntaxNodeAction ( LocalFunctionStatementAction , SyntaxKindEx . LocalFunctionStatement ) ;
8184 context . RegisterSyntaxNodeAction ( ConstructorInitializerAction , SyntaxKinds . ConstructorInitializer ) ;
8285 context . RegisterSyntaxNodeAction ( DelegateDeclarationAction , SyntaxKind . DelegateDeclaration ) ;
8386 context . RegisterSyntaxNodeAction ( IndexerDeclarationAction , SyntaxKind . IndexerDeclaration ) ;
@@ -98,6 +101,12 @@ private static void HandleBaseMethodDeclaration(SyntaxNodeAnalysisContext contex
98101 HandleParameterListSyntax ( context , declaration . ParameterList ) ;
99102 }
100103
104+ private static void HandleLocalFunctionStatement ( SyntaxNodeAnalysisContext context )
105+ {
106+ var statement = ( LocalFunctionStatementSyntaxWrapper ) context . Node ;
107+ HandleParameterListSyntax ( context , statement . ParameterList ) ;
108+ }
109+
101110 private static void HandleInvocationExpression ( SyntaxNodeAnalysisContext context )
102111 {
103112 var invocation = ( InvocationExpressionSyntax ) context . Node ;
0 commit comments