Imported Upstream version 3.12.0

Former-commit-id: cf92446697332992ec36726e78eb8703e1f259d7
This commit is contained in:
Jo Shields
2015-01-13 10:44:36 +00:00
parent 8b9b85e7f5
commit 181b81b4a4
659 changed files with 12743 additions and 16300 deletions

View File

@ -84,7 +84,17 @@ namespace System.Runtime.Serialization.Json
throw new ArgumentOutOfRangeException ("maxItemsInObjectGraph");
this.type = type;
known_types = new ReadOnlyCollection<Type> (knownTypes != null ? knownTypes.ToArray () : Type.EmptyTypes);
var knownTypesFromAttributes = new List<Type> ();
foreach (var attr in type.GetCustomAttributes (typeof (KnownTypeAttribute), false))
knownTypesFromAttributes.Add ((attr as KnownTypeAttribute).Type);
if (knownTypes != null)
knownTypesFromAttributes.AddRange (knownTypes);
known_types = new ReadOnlyCollection<Type> (knownTypesFromAttributes);
root = rootName;
max_items = maxItemsInObjectGraph;
ignore_extension = ignoreExtensionDataObject;
@ -134,8 +144,6 @@ namespace System.Runtime.Serialization.Json
public bool IgnoreExtensionDataObject {
get { return ignore_extension; }
}
[MonoTODO]
public ReadOnlyCollection<Type> KnownTypes {
get { return known_types; }
}