private static ArgumentSyntax AddParameterName( ArgumentSyntax argument, SemanticModel semanticModel, CancellationToken cancellationToken = default(CancellationToken)) { if (argument.NameColon == null || argument.NameColon.IsMissing) { IParameterSymbol parameterSymbol = CSharpAnalysis.DetermineParameter( argument, semanticModel, allowParams: false, cancellationToken: cancellationToken); if (parameterSymbol != null) { return(argument .WithNameColon( NameColon(parameterSymbol.ToDisplayString(_symbolDisplayFormat)) .WithTrailingSpace()) .WithTriviaFrom(argument)); } } return(argument); }
private static async Task <bool> CanAddParameterNameAsync( RefactoringContext context, ImmutableArray <ArgumentSyntax> arguments) { foreach (ArgumentSyntax argument in arguments) { if (argument.NameColon == null || argument.NameColon.IsMissing) { SemanticModel semanticModel = await context.GetSemanticModelAsync().ConfigureAwait(false); IParameterSymbol parameterSymbol = CSharpAnalysis.DetermineParameter( argument, semanticModel, allowParams: false, cancellationToken: context.CancellationToken); if (parameterSymbol != null) { return(true); } } } return(false); }
private static List <ParameterInfo> GetParameterInfos( ArgumentListSyntax argumentList, SemanticModel semanticModel, CancellationToken cancellationToken) { var list = new List <ParameterInfo>(); foreach (ArgumentSyntax argument in argumentList.Arguments) { IParameterSymbol parameterSymbol = CSharpAnalysis.DetermineParameter(argument, semanticModel, cancellationToken: cancellationToken); if (parameterSymbol != null) { list.Add(new ParameterInfo(parameterSymbol, argument.Expression)); } else { return(null); } } return(list); }