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

◆ IsValidExtensionDataSetMethod()

bool System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.IsValidExtensionDataSetMethod ( MethodInfo method,
ParameterInfo[] parameters )
inlineprivate

Definition at line 735 of file ClassDataContract.cs.

736 {
737 if (method.Name == "System.Runtime.Serialization.IExtensibleDataObject.set_ExtensionData" || method.Name == "set_ExtensionData")
738 {
739 if (_extensionDataSetMethod != null)
740 {
742 }
743 if (method.ReturnType != Globals.TypeOfVoid)
744 {
745 DataContract.ThrowInvalidDataContractException(System.SR.Format(System.SR.ExtensionDataSetMustReturnVoid, DataContract.GetClrTypeFullName(method.DeclaringType), method), method.DeclaringType);
746 }
747 if (parameters == null || parameters.Length != 1 || parameters[0].ParameterType != Globals.TypeOfExtensionDataObject)
748 {
749 DataContract.ThrowInvalidDataContractException(System.SR.Format(System.SR.ExtensionDataSetParameterInvalid, DataContract.GetClrTypeFullName(method.DeclaringType), method, Globals.TypeOfExtensionDataObject), method.DeclaringType);
750 }
751 return true;
752 }
753 return false;
754 }
static void ThrowInvalidDataContractException(string message, Type type)
DataContract(DataContractCriticalHelper helper)
static string DuplicateExtensionDataSetMethod
Definition SR.cs:670
static string ExtensionDataSetMustReturnVoid
Definition SR.cs:672
static string Format(string resourceFormat, object p1)
Definition SR.cs:118
static string ExtensionDataSetParameterInvalid
Definition SR.cs:674
Definition SR.cs:7

References System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper._extensionDataSetMethod, System.SR.DuplicateExtensionDataSetMethod, System.SR.ExtensionDataSetMustReturnVoid, System.SR.ExtensionDataSetParameterInvalid, System.SR.Format(), System.Runtime.Serialization.DataContract.GetClrTypeFullName(), System.Reflection.ParameterInfo.ParameterType, System.Runtime.Serialization.DataContract.DataContractCriticalHelper.ThrowInvalidDataContractException(), System.Runtime.Serialization.DataContract.ThrowInvalidDataContractException(), System.Runtime.Serialization.Globals.TypeOfExtensionDataObject, and System.Runtime.Serialization.Globals.TypeOfVoid.

Referenced by System.Runtime.Serialization.ClassDataContract.ClassDataContractCriticalHelper.EnsureMethodsImported().