Skip to content

Commit

Permalink
Fix NRE
Browse files Browse the repository at this point in the history
  • Loading branch information
martin-strecker-sonarsource committed Oct 23, 2023
1 parent 656d421 commit 81a6001
Showing 1 changed file with 8 additions and 8 deletions.
16 changes: 8 additions & 8 deletions analyzers/src/SonarAnalyzer.CSharp/Facade/CSharpSyntaxFacade.cs
Original file line number Diff line number Diff line change
Expand Up @@ -29,16 +29,16 @@ public override IEnumerable<SyntaxNode> ArgumentExpressions(SyntaxNode node) =>
ArgumentList(node)?.OfType<ArgumentSyntax>().Select(x => x.Expression) ?? Enumerable.Empty<SyntaxNode>();

public override IReadOnlyList<SyntaxNode> ArgumentList(SyntaxNode node) =>
node switch
(node switch
{
ObjectCreationExpressionSyntax creation => creation.ArgumentList.Arguments,
InvocationExpressionSyntax invocation => invocation.ArgumentList.Arguments,
ConstructorInitializerSyntax constructorInitializer => constructorInitializer.ArgumentList.Arguments,
null => ImmutableArray<SyntaxNode>.Empty,
_ when PrimaryConstructorBaseTypeSyntaxWrapper.IsInstance(node) => ((PrimaryConstructorBaseTypeSyntaxWrapper)node).ArgumentList.Arguments,
_ when ImplicitObjectCreationExpressionSyntaxWrapper.IsInstance(node) => ((ImplicitObjectCreationExpressionSyntaxWrapper)node).ArgumentList.Arguments,
ObjectCreationExpressionSyntax creation => creation.ArgumentList,
InvocationExpressionSyntax invocation => invocation.ArgumentList,
ConstructorInitializerSyntax constructorInitializer => constructorInitializer.ArgumentList,
null => null,
_ when PrimaryConstructorBaseTypeSyntaxWrapper.IsInstance(node) => ((PrimaryConstructorBaseTypeSyntaxWrapper)node).ArgumentList,
_ when ImplicitObjectCreationExpressionSyntaxWrapper.IsInstance(node) => ((ImplicitObjectCreationExpressionSyntaxWrapper)node).ArgumentList,
_ => throw InvalidOperation(node, nameof(ArgumentExpressions))
};
})?.Arguments ?? (IReadOnlyList<SyntaxNode>)Array.Empty<SyntaxNode>();
public override SyntaxToken? ArgumentNameColon(SyntaxNode argument) =>
(argument as ArgumentSyntax)?.NameColon?.Name?.Identifier;

Expand Down

0 comments on commit 81a6001

Please sign in to comment.