private static string GenerateFullNameFromType(Type type) { TypeFullName nameWithoutArguments = TypeFullNameParser.Parse(type.FullName); TypeFullName result = new TypeFullName( nameWithoutArguments.FullName, type.GetGenericArguments() .Select((genericType) => new TypeFullName(genericType.FullName ?? genericType.Name)) .ToArray()); return(result.ToString()); }