diff --git a/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs b/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs index eedb0dfa93..306d2c02ec 100644 --- a/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs +++ b/ICSharpCode.NRefactory.CSharp/Completion/CSharpCompletionEngine.cs @@ -749,11 +749,7 @@ namespace ICSharpCode.NRefactory.CSharp.Completion AutoCompleteEmptyMatch = false; } foreach (var p in method.Parameters) { - var data = contextList.AddVariable(p); - if (data != null) { - data.CompletionText += ":"; - data.DisplayText += ":"; - } + contextList.AddNamedParameterVariable(p); } } idx++; diff --git a/ICSharpCode.NRefactory.CSharp/Completion/CompletionDataWrapper.cs b/ICSharpCode.NRefactory.CSharp/Completion/CompletionDataWrapper.cs index 2edf79ee25..0782da3947 100644 --- a/ICSharpCode.NRefactory.CSharp/Completion/CompletionDataWrapper.cs +++ b/ICSharpCode.NRefactory.CSharp/Completion/CompletionDataWrapper.cs @@ -106,7 +106,21 @@ namespace ICSharpCode.NRefactory.CSharp.Completion result.Add(cd); return cd; } - + + public ICompletionData AddNamedParameterVariable(IVariable variable) + { + var name = variable.Name + ":"; + if (data.ContainsKey(name)) + return null; + data [name] = new List(); + + var cd = Factory.CreateVariableCompletionData(variable); + cd.CompletionText += ":"; + cd.DisplayText += ":"; + result.Add(cd); + return cd; + } + public void AddTypeParameter (IUnresolvedTypeParameter variable) { if (data.ContainsKey (variable.Name))