Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper Class Referencesealed

Static Public Member Functions

static DataContract GetBuiltInDataContract (Type type)
 
static DataContract GetBuiltInDataContract (string name, string ns)
 
static DataContract GetBuiltInDataContract (string typeName)
 
static bool TryCreateBuiltInDataContract (Type type, [NotNullWhen(true)] out DataContract dataContract)
 
static bool TryCreateBuiltInDataContract (string name, string ns, [NotNullWhen(true)] out DataContract dataContract)
 

Package Functions

 CollectionDataContractCriticalHelper ([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.NonPublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.NonPublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicProperties)] Type type)
 
 CollectionDataContractCriticalHelper ([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.NonPublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.NonPublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicProperties)] Type type, CollectionKind kind, Type itemType, MethodInfo getEnumeratorMethod, string deserializationExceptionMessage)
 
 CollectionDataContractCriticalHelper ([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.NonPublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.NonPublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicProperties)] Type type, CollectionKind kind, Type itemType, MethodInfo getEnumeratorMethod, MethodInfo addMethod, ConstructorInfo constructor)
 
 CollectionDataContractCriticalHelper (Type type, CollectionKind kind, Type itemType, MethodInfo getEnumeratorMethod, MethodInfo addMethod, ConstructorInfo constructor, bool isConstructorCheckRequired)
 
 CollectionDataContractCriticalHelper ([DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicConstructors|DynamicallyAccessedMemberTypes.NonPublicConstructors|DynamicallyAccessedMemberTypes.PublicMethods|DynamicallyAccessedMemberTypes.NonPublicMethods|DynamicallyAccessedMemberTypes.PublicFields|DynamicallyAccessedMemberTypes.PublicProperties)] Type type, string invalidCollectionInSharedContractMessage)
 
void IncrementCollectionCount (XmlWriterDelegator xmlWriter, object obj, XmlObjectSerializerWriteContext context)
 
IEnumerator GetEnumeratorForCollection (object obj)
 
Type GetCollectionElementType ()
 
void ThrowInvalidDataContractException (string message)
 
void SetDataContractName (XmlQualifiedName stableName)
 
void SetDataContractName (XmlDictionaryString name, XmlDictionaryString ns)
 

Static Package Functions

static DataContract GetDataContractSkipValidation (int id, RuntimeTypeHandle typeHandle, Type type)
 
static DataContract GetGetOnlyCollectionDataContractSkipValidation (int id, RuntimeTypeHandle typeHandle, Type type)
 
static DataContract GetDataContractForInitialization (int id)
 
static int GetIdForInitialization (ClassDataContract classContract)
 
static int GetId (RuntimeTypeHandle typeHandle)
 
static Type GetDataContractAdapterType (Type type)
 
static Type GetDataContractOriginalType (Type type)
 
static string GetNamespace (string key)
 
static XmlDictionaryString GetClrTypeString (string key)
 
static void ThrowInvalidDataContractException (string message, Type type)
 

Properties

static Type[] KnownInterfaces [get]
 
CollectionKind Kind [get]
 
Type ItemType [get, set]
 
DataContract ItemContract [get, set]
 
DataContract SharedTypeContract [get, set]
 
string ItemName [get, set]
 
bool IsConstructorCheckRequired [get, set]
 
XmlDictionaryString CollectionItemName [get]
 
string KeyName [get, set]
 
string ValueName [get, set]
 
bool IsDictionary [get]
 
string DeserializationExceptionMessage [get]
 
XmlDictionaryString ChildElementNamespace [get, set]
 
bool IsItemTypeNullable [get, set]
 
MethodInfo GetEnumeratorMethod [get]
 
MethodInfo AddMethod [get]
 
ConstructorInfo Constructor [get]
 
override Dictionary< XmlQualifiedName, DataContractKnownDataContracts [get, set]
 
string InvalidCollectionInSharedContractMessage [get]
 
bool ItemNameSetExplicit [get]
 
XmlFormatCollectionWriterDelegate XmlFormatWriterDelegate [get, set]
 
XmlFormatCollectionReaderDelegate XmlFormatReaderDelegate [get, set]
 
XmlFormatGetOnlyCollectionReaderDelegate XmlFormatGetOnlyCollectionReaderDelegate [get, set]
 
static MethodInfo BuildIncrementCollectionCountDelegateMethod [get]
 
static MethodInfo GetBuildCreateGenericDictionaryEnumeratorMethodInfo [get]
 
Type UnderlyingType [get, set]
 
Type OriginalUnderlyingType [get, set]
 
virtual bool IsBuiltInDataContract [get]
 
Type TypeForInitialization [get]
 
bool IsReference [get, set]
 
bool IsValueType [get, set]
 
XmlQualifiedName StableName [get, set]
 
virtual bool IsISerializable [get, set]
 
XmlDictionaryString Name [get, set]
 
XmlDictionaryString Namespace [get, set]
 
virtual bool HasRoot [get, set]
 
virtual XmlDictionaryString TopLevelElementName [get, set]
 
virtual XmlDictionaryString TopLevelElementNamespace [get, set]
 
virtual bool CanContainReferences [get]
 
virtual bool IsPrimitive [get]
 
MethodInfo ParseMethod [get]
 

Private Member Functions

delegate void IncrementCollectionCountDelegate (XmlWriterDelegator xmlWriter, object obj, XmlObjectSerializerWriteContext context)
 
delegate IEnumerator CreateGenericDictionaryEnumeratorDelegate (IEnumerator enumerator)
 
void Init (CollectionKind kind, Type itemType, CollectionDataContractAttribute collectionContractAttribute)
 
MethodInfo GetBuildIncrementCollectionCountGenericDelegate (Type type)
 
void SetTypeForInitialization (Type classType)
 

Static Private Member Functions

static void DummyIncrementCollectionCount (XmlWriterDelegator xmlWriter, object obj, XmlObjectSerializerWriteContext context)
 
static IncrementCollectionCountDelegate BuildIncrementCollectionCountDelegate< T > ()
 
static CreateGenericDictionaryEnumeratorDelegate BuildCreateGenericDictionaryEnumerator< K, V > ()
 
static bool ContractMatches (DataContract contract, DataContract cachedContract)
 
static DataContract CreateDataContract (int id, RuntimeTypeHandle typeHandle, Type type)
 
static DataContract CreateDataContract (Type type)
 
static void AssignDataContractToId (DataContract dataContract, int id)
 
static DataContract CreateGetOnlyCollectionDataContract (int id, RuntimeTypeHandle typeHandle, Type type)
 
static RuntimeTypeHandle GetDataContractAdapterTypeHandle (RuntimeTypeHandle typeHandle)
 

Private Attributes

Type _itemType
 
bool _isItemTypeNullable
 
CollectionKind _kind
 
readonly MethodInfo _getEnumeratorMethod
 
readonly MethodInfo _addMethod
 
readonly ConstructorInfo _constructor
 
readonly string _deserializationExceptionMessage
 
DataContract _itemContract
 
DataContract _sharedTypeContract
 
Dictionary< XmlQualifiedName, DataContract_knownDataContracts
 
bool _isKnownTypeAttributeChecked
 
string _itemName
 
bool _itemNameSetExplicit
 
XmlDictionaryString _collectionItemName
 
string _keyName
 
string _valueName
 
XmlDictionaryString _childElementNamespace
 
readonly string _invalidCollectionInSharedContractMessage
 
XmlFormatCollectionReaderDelegate _xmlFormatReaderDelegate
 
XmlFormatGetOnlyCollectionReaderDelegate _xmlFormatGetOnlyCollectionReaderDelegate
 
XmlFormatCollectionWriterDelegate _xmlFormatWriterDelegate
 
bool _isConstructorCheckRequired
 
IncrementCollectionCountDelegate _incrementCollectionCountDelegate
 
CreateGenericDictionaryEnumeratorDelegate _createGenericDictionaryEnumeratorDelegate
 
Type _underlyingType
 
Type _originalUnderlyingType
 
bool _isReference
 
bool _isValueType
 
XmlQualifiedName _stableName
 
XmlDictionaryString _name
 
XmlDictionaryString _ns
 
MethodInfo _parseMethod
 
bool _parseMethodSet
 
Type _typeForInitialization
 

Static Private Attributes

static Type[] s_knownInterfaces
 
static MethodInfo s_buildIncrementCollectionCountDelegateMethod
 
static MethodInfo s_buildCreateGenericDictionaryEnumerator
 
static readonly Dictionary< TypeHandleRef, IntRefs_typeToIDCache = new Dictionary<TypeHandleRef, IntRef>(new TypeHandleRefEqualityComparer())
 
static DataContract[] s_dataContractCache = new DataContract[32]
 
static int s_dataContractID
 
static Dictionary< Type, DataContracts_typeToBuiltInContract
 
static Dictionary< XmlQualifiedName, DataContracts_nameToBuiltInContract
 
static Dictionary< string, strings_namespaces
 
static Dictionary< string, XmlDictionaryStrings_clrTypeStrings
 
static XmlDictionary s_clrTypeStringsDictionary
 
static readonly TypeHandleRef s_typeHandleRef = new TypeHandleRef()
 
static readonly object s_cacheLock = new object()
 
static readonly object s_createDataContractLock = new object()
 
static readonly object s_initBuiltInContractsLock = new object()
 
static readonly object s_namespacesLock = new object()
 
static readonly object s_clrTypeStringsLock = new object()
 

Detailed Description

Definition at line 14 of file CollectionDataContract.cs.


The documentation for this class was generated from the following file: