-Code cleanup
This commit is contained in:
@@ -92,7 +92,7 @@ namespace Newtonsoft.Json
|
||||
internal static string FormatMessage(IJsonLineInfo lineInfo, string path, string message)
|
||||
{
|
||||
// don't add a fullstop and space when message ends with a new line
|
||||
if (!message.EndsWith(Environment.NewLine))
|
||||
if (!message.EndsWith(Environment.NewLine, StringComparison.Ordinal))
|
||||
{
|
||||
message = message.Trim();
|
||||
|
||||
|
||||
@@ -783,7 +783,7 @@ namespace Newtonsoft.Json
|
||||
if (Value.ToString() == JsonTypeReflector.TypePropertyName)
|
||||
{
|
||||
ReadInternal();
|
||||
if (Value != null && Value.ToString().StartsWith("System.Byte[]"))
|
||||
if (Value != null && Value.ToString().StartsWith("System.Byte[]", StringComparison.Ordinal))
|
||||
{
|
||||
ReadInternal();
|
||||
if (Value.ToString() == JsonTypeReflector.ValuePropertyName)
|
||||
|
||||
@@ -57,7 +57,6 @@ namespace Newtonsoft.Json
|
||||
public string CurrentPropertyName { get; set; }
|
||||
public int ArrayItemCount { get; set; }
|
||||
public bool IsUniqueArray { get; set; }
|
||||
public bool IsEnum { get; set; }
|
||||
public IList<JToken> UniqueArrayItems { get; set; }
|
||||
public JTokenWriter CurrentItemWriter { get; set; }
|
||||
|
||||
@@ -575,7 +574,7 @@ namespace Newtonsoft.Json
|
||||
{
|
||||
bool isInUniqueArray = (schemaScope.TokenType == JTokenType.Array && schemaScope.IsUniqueArray && schemaScope.ArrayItemCount > 0);
|
||||
|
||||
if (isInUniqueArray || schemaScope.IsEnum || schemas.Any(s => s.Enum != null))
|
||||
if (isInUniqueArray || schemas.Any(s => s.Enum != null))
|
||||
{
|
||||
if (schemaScope.CurrentItemWriter == null)
|
||||
{
|
||||
@@ -602,7 +601,7 @@ namespace Newtonsoft.Json
|
||||
|
||||
schemaScope.UniqueArrayItems.Add(finishedItem);
|
||||
}
|
||||
else if (schemaScope.IsEnum || schemas.Any(s => s.Enum != null))
|
||||
else if (schemas.Any(s => s.Enum != null))
|
||||
{
|
||||
foreach (JsonSchemaModel schema in schemas)
|
||||
{
|
||||
|
||||
@@ -1,236 +1,15 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<RuleSet Name="Newtonsoft.Json.ruleset" ToolsVersion="12.0">
|
||||
<IncludeAll Action="Warning" />
|
||||
<Rules AnalyzerId="Microsoft.Analyzers.ManagedCodeAnalysis" RuleNamespace="Microsoft.Rules.Managed">
|
||||
<Rule Id="CA1000" Action="None" />
|
||||
<Rule Id="CA1001" Action="None" />
|
||||
<Rule Id="CA1002" Action="None" />
|
||||
<Rule Id="CA1003" Action="None" />
|
||||
<Rule Id="CA1004" Action="None" />
|
||||
<Rule Id="CA1005" Action="None" />
|
||||
<Rule Id="CA1006" Action="None" />
|
||||
<Rule Id="CA1007" Action="None" />
|
||||
<Rule Id="CA1008" Action="None" />
|
||||
<Rule Id="CA1009" Action="None" />
|
||||
<Rule Id="CA1010" Action="None" />
|
||||
<Rule Id="CA1011" Action="None" />
|
||||
<Rule Id="CA1012" Action="None" />
|
||||
<Rule Id="CA1013" Action="None" />
|
||||
<Rule Id="CA1014" Action="None" />
|
||||
<Rule Id="CA1016" Action="None" />
|
||||
<Rule Id="CA1017" Action="None" />
|
||||
<Rule Id="CA1018" Action="None" />
|
||||
<Rule Id="CA1019" Action="None" />
|
||||
<Rule Id="CA1020" Action="None" />
|
||||
<Rule Id="CA1021" Action="None" />
|
||||
<Rule Id="CA1023" Action="None" />
|
||||
<Rule Id="CA1024" Action="None" />
|
||||
<Rule Id="CA1025" Action="None" />
|
||||
<Rule Id="CA1026" Action="None" />
|
||||
<Rule Id="CA1027" Action="None" />
|
||||
<Rule Id="CA1028" Action="None" />
|
||||
<Rule Id="CA1030" Action="None" />
|
||||
<Rule Id="CA1031" Action="None" />
|
||||
<Rule Id="CA1032" Action="None" />
|
||||
<Rule Id="CA1033" Action="None" />
|
||||
<Rule Id="CA1034" Action="None" />
|
||||
<Rule Id="CA1035" Action="None" />
|
||||
<Rule Id="CA1036" Action="None" />
|
||||
<Rule Id="CA1038" Action="None" />
|
||||
<Rule Id="CA1039" Action="None" />
|
||||
<Rule Id="CA1040" Action="None" />
|
||||
<Rule Id="CA1041" Action="None" />
|
||||
<Rule Id="CA1043" Action="None" />
|
||||
<Rule Id="CA1044" Action="None" />
|
||||
<Rule Id="CA1045" Action="None" />
|
||||
<Rule Id="CA1046" Action="None" />
|
||||
<Rule Id="CA1047" Action="None" />
|
||||
<Rule Id="CA1048" Action="None" />
|
||||
<Rule Id="CA1049" Action="None" />
|
||||
<Rule Id="CA1050" Action="None" />
|
||||
<Rule Id="CA1051" Action="None" />
|
||||
<Rule Id="CA1052" Action="None" />
|
||||
<Rule Id="CA1053" Action="None" />
|
||||
<Rule Id="CA1054" Action="None" />
|
||||
<Rule Id="CA1055" Action="None" />
|
||||
<Rule Id="CA1056" Action="None" />
|
||||
<Rule Id="CA1057" Action="None" />
|
||||
<Rule Id="CA1058" Action="None" />
|
||||
<Rule Id="CA1059" Action="None" />
|
||||
<Rule Id="CA1060" Action="None" />
|
||||
<Rule Id="CA1061" Action="None" />
|
||||
<Rule Id="CA1062" Action="None" />
|
||||
<Rule Id="CA1063" Action="None" />
|
||||
<Rule Id="CA1064" Action="None" />
|
||||
<Rule Id="CA1065" Action="None" />
|
||||
<Rule Id="CA1300" Action="None" />
|
||||
<Rule Id="CA1301" Action="None" />
|
||||
<Rule Id="CA1302" Action="None" />
|
||||
<Rule Id="CA1303" Action="None" />
|
||||
<Rule Id="CA1304" Action="Error" />
|
||||
<Rule Id="CA1305" Action="Error" />
|
||||
<Rule Id="CA1306" Action="None" />
|
||||
<Rule Id="CA1307" Action="None" />
|
||||
<Rule Id="CA1308" Action="None" />
|
||||
<Rule Id="CA1309" Action="None" />
|
||||
<Rule Id="CA1400" Action="None" />
|
||||
<Rule Id="CA1401" Action="None" />
|
||||
<Rule Id="CA1402" Action="None" />
|
||||
<Rule Id="CA1403" Action="None" />
|
||||
<Rule Id="CA1404" Action="None" />
|
||||
<Rule Id="CA1405" Action="None" />
|
||||
<Rule Id="CA1406" Action="None" />
|
||||
<Rule Id="CA1407" Action="None" />
|
||||
<Rule Id="CA1408" Action="None" />
|
||||
<Rule Id="CA1409" Action="None" />
|
||||
<Rule Id="CA1410" Action="None" />
|
||||
<Rule Id="CA1411" Action="None" />
|
||||
<Rule Id="CA1412" Action="None" />
|
||||
<Rule Id="CA1413" Action="None" />
|
||||
<Rule Id="CA1414" Action="None" />
|
||||
<Rule Id="CA1415" Action="None" />
|
||||
<Rule Id="CA1500" Action="None" />
|
||||
<Rule Id="CA1501" Action="None" />
|
||||
<Rule Id="CA1502" Action="None" />
|
||||
<Rule Id="CA1504" Action="None" />
|
||||
<Rule Id="CA1505" Action="None" />
|
||||
<Rule Id="CA1506" Action="None" />
|
||||
<Rule Id="CA1600" Action="None" />
|
||||
<Rule Id="CA1601" Action="None" />
|
||||
<Rule Id="CA1700" Action="None" />
|
||||
<Rule Id="CA1701" Action="None" />
|
||||
<Rule Id="CA1702" Action="None" />
|
||||
<Rule Id="CA1703" Action="None" />
|
||||
<Rule Id="CA1704" Action="None" />
|
||||
<Rule Id="CA1707" Action="None" />
|
||||
<Rule Id="CA1708" Action="None" />
|
||||
<Rule Id="CA1709" Action="None" />
|
||||
<Rule Id="CA1710" Action="None" />
|
||||
<Rule Id="CA1711" Action="None" />
|
||||
<Rule Id="CA1712" Action="None" />
|
||||
<Rule Id="CA1713" Action="None" />
|
||||
<Rule Id="CA1714" Action="None" />
|
||||
<Rule Id="CA1715" Action="None" />
|
||||
<Rule Id="CA1716" Action="None" />
|
||||
<Rule Id="CA1717" Action="None" />
|
||||
<Rule Id="CA1719" Action="None" />
|
||||
<Rule Id="CA1720" Action="None" />
|
||||
<Rule Id="CA1721" Action="None" />
|
||||
<Rule Id="CA1722" Action="None" />
|
||||
<Rule Id="CA1724" Action="None" />
|
||||
<Rule Id="CA1725" Action="None" />
|
||||
<Rule Id="CA1726" Action="None" />
|
||||
<Rule Id="CA1800" Action="None" />
|
||||
<Rule Id="CA1801" Action="None" />
|
||||
<Rule Id="CA1802" Action="None" />
|
||||
<Rule Id="CA1804" Action="None" />
|
||||
<Rule Id="CA1806" Action="None" />
|
||||
<Rule Id="CA1809" Action="None" />
|
||||
<Rule Id="CA1810" Action="None" />
|
||||
<Rule Id="CA1811" Action="None" />
|
||||
<Rule Id="CA1812" Action="None" />
|
||||
<Rule Id="CA1813" Action="None" />
|
||||
<Rule Id="CA1814" Action="None" />
|
||||
<Rule Id="CA1815" Action="None" />
|
||||
<Rule Id="CA1816" Action="None" />
|
||||
<Rule Id="CA1819" Action="None" />
|
||||
<Rule Id="CA1820" Action="None" />
|
||||
<Rule Id="CA1821" Action="None" />
|
||||
<Rule Id="CA1822" Action="None" />
|
||||
<Rule Id="CA1823" Action="None" />
|
||||
<Rule Id="CA1824" Action="None" />
|
||||
<Rule Id="CA1900" Action="None" />
|
||||
<Rule Id="CA1901" Action="None" />
|
||||
<Rule Id="CA1307" Action="Error" />
|
||||
<Rule Id="CA1308" Action="Error" />
|
||||
<Rule Id="CA1309" Action="Error" />
|
||||
<Rule Id="CA1804" Action="Warning" />
|
||||
<Rule Id="CA1811" Action="Warning" />
|
||||
<Rule Id="CA1812" Action="Warning" />
|
||||
<Rule Id="CA1823" Action="Warning" />
|
||||
<Rule Id="CA1903" Action="Error" />
|
||||
<Rule Id="CA2000" Action="None" />
|
||||
<Rule Id="CA2001" Action="None" />
|
||||
<Rule Id="CA2002" Action="None" />
|
||||
<Rule Id="CA2003" Action="None" />
|
||||
<Rule Id="CA2004" Action="None" />
|
||||
<Rule Id="CA2006" Action="None" />
|
||||
<Rule Id="CA2100" Action="None" />
|
||||
<Rule Id="CA2101" Action="None" />
|
||||
<Rule Id="CA2102" Action="None" />
|
||||
<Rule Id="CA2103" Action="None" />
|
||||
<Rule Id="CA2104" Action="None" />
|
||||
<Rule Id="CA2105" Action="None" />
|
||||
<Rule Id="CA2106" Action="None" />
|
||||
<Rule Id="CA2107" Action="None" />
|
||||
<Rule Id="CA2108" Action="None" />
|
||||
<Rule Id="CA2109" Action="None" />
|
||||
<Rule Id="CA2111" Action="None" />
|
||||
<Rule Id="CA2112" Action="None" />
|
||||
<Rule Id="CA2114" Action="None" />
|
||||
<Rule Id="CA2115" Action="None" />
|
||||
<Rule Id="CA2116" Action="None" />
|
||||
<Rule Id="CA2117" Action="None" />
|
||||
<Rule Id="CA2118" Action="None" />
|
||||
<Rule Id="CA2119" Action="None" />
|
||||
<Rule Id="CA2120" Action="None" />
|
||||
<Rule Id="CA2121" Action="None" />
|
||||
<Rule Id="CA2122" Action="None" />
|
||||
<Rule Id="CA2123" Action="None" />
|
||||
<Rule Id="CA2124" Action="None" />
|
||||
<Rule Id="CA2126" Action="None" />
|
||||
<Rule Id="CA2130" Action="None" />
|
||||
<Rule Id="CA2131" Action="None" />
|
||||
<Rule Id="CA2132" Action="None" />
|
||||
<Rule Id="CA2133" Action="None" />
|
||||
<Rule Id="CA2134" Action="None" />
|
||||
<Rule Id="CA2135" Action="None" />
|
||||
<Rule Id="CA2136" Action="None" />
|
||||
<Rule Id="CA2137" Action="None" />
|
||||
<Rule Id="CA2138" Action="None" />
|
||||
<Rule Id="CA2139" Action="None" />
|
||||
<Rule Id="CA2140" Action="None" />
|
||||
<Rule Id="CA2141" Action="None" />
|
||||
<Rule Id="CA2142" Action="None" />
|
||||
<Rule Id="CA2143" Action="None" />
|
||||
<Rule Id="CA2144" Action="None" />
|
||||
<Rule Id="CA2145" Action="None" />
|
||||
<Rule Id="CA2146" Action="None" />
|
||||
<Rule Id="CA2147" Action="None" />
|
||||
<Rule Id="CA2149" Action="None" />
|
||||
<Rule Id="CA2200" Action="None" />
|
||||
<Rule Id="CA2201" Action="None" />
|
||||
<Rule Id="CA2202" Action="None" />
|
||||
<Rule Id="CA2204" Action="None" />
|
||||
<Rule Id="CA2205" Action="None" />
|
||||
<Rule Id="CA2207" Action="None" />
|
||||
<Rule Id="CA2208" Action="None" />
|
||||
<Rule Id="CA2210" Action="None" />
|
||||
<Rule Id="CA2211" Action="None" />
|
||||
<Rule Id="CA2212" Action="None" />
|
||||
<Rule Id="CA2213" Action="None" />
|
||||
<Rule Id="CA2214" Action="None" />
|
||||
<Rule Id="CA2215" Action="None" />
|
||||
<Rule Id="CA2216" Action="None" />
|
||||
<Rule Id="CA2217" Action="None" />
|
||||
<Rule Id="CA2218" Action="None" />
|
||||
<Rule Id="CA2219" Action="None" />
|
||||
<Rule Id="CA2220" Action="None" />
|
||||
<Rule Id="CA2221" Action="None" />
|
||||
<Rule Id="CA2222" Action="None" />
|
||||
<Rule Id="CA2223" Action="None" />
|
||||
<Rule Id="CA2224" Action="None" />
|
||||
<Rule Id="CA2225" Action="None" />
|
||||
<Rule Id="CA2226" Action="None" />
|
||||
<Rule Id="CA2227" Action="None" />
|
||||
<Rule Id="CA2228" Action="None" />
|
||||
<Rule Id="CA2229" Action="None" />
|
||||
<Rule Id="CA2230" Action="None" />
|
||||
<Rule Id="CA2231" Action="None" />
|
||||
<Rule Id="CA2232" Action="None" />
|
||||
<Rule Id="CA2233" Action="None" />
|
||||
<Rule Id="CA2234" Action="None" />
|
||||
<Rule Id="CA2235" Action="None" />
|
||||
<Rule Id="CA2236" Action="None" />
|
||||
<Rule Id="CA2237" Action="None" />
|
||||
<Rule Id="CA2238" Action="None" />
|
||||
<Rule Id="CA2239" Action="None" />
|
||||
<Rule Id="CA2240" Action="None" />
|
||||
<Rule Id="CA2241" Action="None" />
|
||||
<Rule Id="CA2242" Action="None" />
|
||||
<Rule Id="CA2243" Action="None" />
|
||||
</Rules>
|
||||
</RuleSet>
|
||||
@@ -673,7 +673,7 @@ namespace Newtonsoft.Json.Serialization
|
||||
/// <returns>The contract's default <see cref="JsonConverter" />.</returns>
|
||||
protected virtual JsonConverter ResolveContractConverter(Type objectType)
|
||||
{
|
||||
return JsonTypeReflector.GetJsonConverter(objectType, objectType);
|
||||
return JsonTypeReflector.GetJsonConverter(objectType);
|
||||
}
|
||||
|
||||
private Func<object> GetDefaultCreator(Type createdType)
|
||||
@@ -1252,8 +1252,8 @@ namespace Newtonsoft.Json.Serialization
|
||||
|
||||
// resolve converter for property
|
||||
// the class type might have a converter but the property converter takes presidence
|
||||
property.Converter = JsonTypeReflector.GetJsonConverter(attributeProvider, property.PropertyType);
|
||||
property.MemberConverter = JsonTypeReflector.GetJsonConverter(attributeProvider, property.PropertyType);
|
||||
property.Converter = JsonTypeReflector.GetJsonConverter(attributeProvider);
|
||||
property.MemberConverter = JsonTypeReflector.GetJsonConverter(attributeProvider);
|
||||
|
||||
DefaultValueAttribute defaultValueAttribute = JsonTypeReflector.GetAttribute<DefaultValueAttribute>(attributeProvider);
|
||||
if (defaultValueAttribute != null)
|
||||
|
||||
@@ -57,7 +57,6 @@ namespace Newtonsoft.Json.Serialization
|
||||
/// <value><c>true</c> if the collection type is a multidimensional array; otherwise, <c>false</c>.</value>
|
||||
public bool IsMultidimensionalArray { get; private set; }
|
||||
|
||||
private readonly bool _isCollectionItemTypeNullableType;
|
||||
private readonly Type _genericCollectionDefinitionType;
|
||||
|
||||
private Type _genericWrapperType;
|
||||
@@ -182,17 +181,16 @@ namespace Newtonsoft.Json.Serialization
|
||||
|
||||
CanDeserialize = canDeserialize;
|
||||
|
||||
if (CollectionItemType != null)
|
||||
_isCollectionItemTypeNullableType = ReflectionUtils.IsNullableType(CollectionItemType);
|
||||
|
||||
#if (NET20 || NET35)
|
||||
// bug in .NET 2.0 & 3.5 that List<Nullable<T>> throws an error when adding null via IList.Add(object)
|
||||
// wrapper will handle calling Add(T) instead
|
||||
if (_isCollectionItemTypeNullableType
|
||||
&& (ReflectionUtils.InheritsGenericDefinition(CreatedType, typeof(List<>), out tempCollectionType)
|
||||
|| (IsArray && !IsMultidimensionalArray)))
|
||||
if (CollectionItemType != null && ReflectionUtils.IsNullableType(CollectionItemType))
|
||||
{
|
||||
ShouldCreateWrapper = true;
|
||||
// bug in .NET 2.0 & 3.5 that List<Nullable<T>> throws an error when adding null via IList.Add(object)
|
||||
// wrapper will handle calling Add(T) instead
|
||||
if (ReflectionUtils.InheritsGenericDefinition(CreatedType, typeof(List<>), out tempCollectionType)
|
||||
|| (IsArray && !IsMultidimensionalArray))
|
||||
{
|
||||
ShouldCreateWrapper = true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
@@ -61,7 +61,6 @@ namespace Newtonsoft.Json.Serialization
|
||||
|
||||
internal JsonContract KeyContract { get; set; }
|
||||
|
||||
private readonly bool _isDictionaryValueTypeNullableType;
|
||||
private readonly Type _genericCollectionDefinitionType;
|
||||
|
||||
private Type _genericWrapperType;
|
||||
@@ -134,18 +133,17 @@ namespace Newtonsoft.Json.Serialization
|
||||
DictionaryKeyType = keyType;
|
||||
DictionaryValueType = valueType;
|
||||
|
||||
if (DictionaryValueType != null)
|
||||
_isDictionaryValueTypeNullableType = ReflectionUtils.IsNullableType(DictionaryValueType);
|
||||
|
||||
#if (NET20 || NET35)
|
||||
Type tempDictioanryType;
|
||||
|
||||
// bug in .NET 2.0 & 3.5 that Dictionary<TKey, Nullable<TValue>> throws an error when adding null via IDictionary[key] = object
|
||||
// wrapper will handle calling Add(T) instead
|
||||
if (_isDictionaryValueTypeNullableType
|
||||
&& (ReflectionUtils.InheritsGenericDefinition(CreatedType, typeof(Dictionary<,>), out tempDictioanryType)))
|
||||
if (DictionaryValueType != null && ReflectionUtils.IsNullableType(DictionaryValueType))
|
||||
{
|
||||
ShouldCreateWrapper = true;
|
||||
Type tempDictioanryType;
|
||||
|
||||
// bug in .NET 2.0 & 3.5 that Dictionary<TKey, Nullable<TValue>> throws an error when adding null via IDictionary[key] = object
|
||||
// wrapper will handle calling Add(T) instead
|
||||
if (ReflectionUtils.InheritsGenericDefinition(CreatedType, typeof(Dictionary<,>), out tempDictioanryType))
|
||||
{
|
||||
ShouldCreateWrapper = true;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
@@ -187,7 +187,7 @@ namespace Newtonsoft.Json.Serialization
|
||||
: null;
|
||||
}
|
||||
|
||||
public static JsonConverter GetJsonConverter(object attributeProvider, Type targetConvertedType)
|
||||
public static JsonConverter GetJsonConverter(object attributeProvider)
|
||||
{
|
||||
Type converterType = GetJsonConverterType(attributeProvider);
|
||||
|
||||
|
||||
@@ -54,8 +54,6 @@ namespace Newtonsoft.Json.Utilities
|
||||
LzHH_mm_ss = "HH:mm:ss".Length;
|
||||
Lz_ = "-".Length;
|
||||
Lz_zz = "-zz".Length;
|
||||
Lz_zz_ = "-zz:".Length;
|
||||
Lz_zz_zz = "-zz:zz".Length;
|
||||
}
|
||||
|
||||
public int Year;
|
||||
@@ -87,8 +85,6 @@ namespace Newtonsoft.Json.Utilities
|
||||
private static readonly int LzHH_mm_ss;
|
||||
private static readonly int Lz_;
|
||||
private static readonly int Lz_zz;
|
||||
private static readonly int Lz_zz_;
|
||||
private static readonly int Lz_zz_zz;
|
||||
|
||||
private const short MaxFractionDigits = 7;
|
||||
|
||||
|
||||
@@ -698,8 +698,9 @@ namespace Newtonsoft.Json.Utilities
|
||||
|
||||
#if !PORTABLE40
|
||||
return (T[])((ICustomAttributeProvider)attributeProvider).GetCustomAttributes(typeof(T), inherit);
|
||||
#endif
|
||||
#else
|
||||
throw new Exception("Cannot get attributes from '{0}'.".FormatWith(CultureInfo.InvariantCulture, provider));
|
||||
#endif
|
||||
}
|
||||
#else
|
||||
public static T[] GetAttributes<T>(object provider, bool inherit) where T : Attribute
|
||||
|
||||
Reference in New Issue
Block a user