Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ CollectionDataContractCriticalHelper() [3/5]

System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.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 )
inlinepackage

Definition at line 428 of file CollectionDataContract.cs.

429 : base(type)
430 {
431 if (getEnumeratorMethod == null)
432 {
433 throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidDataContractException(System.SR.Format(System.SR.CollectionMustHaveGetEnumeratorMethod, DataContract.GetClrTypeFullName(type))));
434 }
435 if (addMethod == null && !type.IsInterface)
436 {
437 throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidDataContractException(System.SR.Format(System.SR.CollectionMustHaveAddMethod, DataContract.GetClrTypeFullName(type))));
438 }
439 if (itemType == null)
440 {
441 throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidDataContractException(System.SR.Format(System.SR.CollectionMustHaveItemType, DataContract.GetClrTypeFullName(type))));
442 }
448 }
void Init(CollectionKind kind, Type itemType, CollectionDataContractAttribute collectionContractAttribute)
DataContract(DataContractCriticalHelper helper)
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string CollectionMustHaveItemType
Definition SR.cs:40
static string CollectionMustHaveAddMethod
Definition SR.cs:36
static string CollectionMustHaveGetEnumeratorMethod
Definition SR.cs:38
Definition SR.cs:7

References System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper._addMethod, System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper._constructor, System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper._getEnumeratorMethod, System.SR.CollectionMustHaveAddMethod, System.SR.CollectionMustHaveGetEnumeratorMethod, System.SR.CollectionMustHaveItemType, System.Runtime.Serialization.Dictionary, System.SR.Format(), System.Runtime.Serialization.DataContract.GetClrTypeFullName(), System.Runtime.Serialization.DataContract.GetCollectionStableName(), System.Runtime.Serialization.CollectionDataContract.CollectionDataContractCriticalHelper.Init(), System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError(), and System.type.