Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/xamarin/NRefactory.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'ICSharpCode.NRefactory.CSharp/Refactoring/TypeSystemAstBuilder.cs')
-rw-r--r--ICSharpCode.NRefactory.CSharp/Refactoring/TypeSystemAstBuilder.cs6
1 files changed, 4 insertions, 2 deletions
diff --git a/ICSharpCode.NRefactory.CSharp/Refactoring/TypeSystemAstBuilder.cs b/ICSharpCode.NRefactory.CSharp/Refactoring/TypeSystemAstBuilder.cs
index bc304f18..f0051e10 100644
--- a/ICSharpCode.NRefactory.CSharp/Refactoring/TypeSystemAstBuilder.cs
+++ b/ICSharpCode.NRefactory.CSharp/Refactoring/TypeSystemAstBuilder.cs
@@ -742,8 +742,10 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
decl.ReturnType = ConvertType(invokeMethod.ReturnType);
decl.Name = d.Name;
+ int outerTypeParameterCount = (d.DeclaringTypeDefinition == null) ? 0 : d.DeclaringTypeDefinition.TypeParameterCount;
+
if (this.ShowTypeParameters) {
- foreach (ITypeParameter tp in d.TypeParameters) {
+ foreach (ITypeParameter tp in d.TypeParameters.Skip(outerTypeParameterCount)) {
decl.TypeParameters.Add(ConvertTypeParameter(tp));
}
}
@@ -753,7 +755,7 @@ namespace ICSharpCode.NRefactory.CSharp.Refactoring
}
if (this.ShowTypeParameters && this.ShowTypeParameterConstraints) {
- foreach (ITypeParameter tp in d.TypeParameters) {
+ foreach (ITypeParameter tp in d.TypeParameters.Skip(outerTypeParameterCount)) {
var constraint = ConvertTypeParameterConstraint(tp);
if (constraint != null)
decl.Constraints.Add(constraint);