private void CopyGenericsTo(DefaultTypeName result) { if (_genericParameters != null) { int baseCount = DeclaringType == null ? 0 : DeclaringType.GenericParameterCount; var generics = _genericParameters .Where(t => !(t is RedirectedGenericParameterName)) .Select((t, i) => GenericParameterName.New(result, baseCount + i, t.Name)).ToArray(); result.FinalizeGenerics(generics); } }