Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
SerializationGuard.cs
Go to the documentation of this file.
1
using
System.Reflection
;
2
3
namespace
System.Runtime.Serialization
;
4
5
internal
static
class
SerializationGuard
6
{
7
private
delegate
void
ThrowIfDeserializationInProgressWithSwitchDel
(
string
switchName
,
ref
int
cachedValue
);
8
9
private
static
readonly
ThrowIfDeserializationInProgressWithSwitchDel
s_throwIfDeserializationInProgressWithSwitch
=
CreateThrowIfDeserializationInProgressWithSwitchDelegate
();
10
11
private
static
ThrowIfDeserializationInProgressWithSwitchDel
CreateThrowIfDeserializationInProgressWithSwitchDelegate
()
12
{
13
ThrowIfDeserializationInProgressWithSwitchDel
result =
null
;
14
MethodInfo
method
=
typeof
(
SerializationInfo
).GetMethod(
"ThrowIfDeserializationInProgress"
,
BindingFlags
.Static |
BindingFlags
.Public |
BindingFlags
.NonPublic,
null
,
new
Type
[2]
15
{
16
typeof(string),
17
typeof(int).MakeByRefType()
18
},
Array
.Empty<
ParameterModifier
>());
19
if
(
method
!=
null
)
20
{
21
result =
method
.
CreateDelegate
<
ThrowIfDeserializationInProgressWithSwitchDel
>();
22
}
23
return
result;
24
}
25
26
public
static
void
ThrowIfDeserializationInProgress
(
string
switchSuffix
,
ref
int
cachedValue
)
27
{
28
s_throwIfDeserializationInProgressWithSwitch
?.Invoke(
switchSuffix
,
ref
cachedValue
);
29
}
30
}
System.Array
Definition
Array.cs:16
System.Reflection.MethodInfo.CreateDelegate
virtual Delegate CreateDelegate(Type delegateType)
Definition
MethodInfo.cs:48
System.Reflection.MethodInfo
Definition
MethodInfo.cs:7
System.Runtime.Serialization.SerializationGuard.ThrowIfDeserializationInProgressWithSwitchDel
delegate void ThrowIfDeserializationInProgressWithSwitchDel(string switchName, ref int cachedValue)
System.Runtime.Serialization.SerializationGuard.ThrowIfDeserializationInProgress
static void ThrowIfDeserializationInProgress(string switchSuffix, ref int cachedValue)
Definition
SerializationGuard.cs:26
System.Runtime.Serialization.SerializationGuard.CreateThrowIfDeserializationInProgressWithSwitchDelegate
static ThrowIfDeserializationInProgressWithSwitchDel CreateThrowIfDeserializationInProgressWithSwitchDelegate()
Definition
SerializationGuard.cs:11
System.Runtime.Serialization.SerializationGuard.s_throwIfDeserializationInProgressWithSwitch
static readonly ThrowIfDeserializationInProgressWithSwitchDel s_throwIfDeserializationInProgressWithSwitch
Definition
SerializationGuard.cs:9
System.Runtime.Serialization.SerializationGuard
Definition
SerializationGuard.cs:6
System.Runtime.Serialization.SerializationInfo
Definition
SerializationInfo.cs:7
System.Type
Definition
Type.cs:14
System.Reflection.BindingFlags
BindingFlags
Definition
BindingFlags.cs:5
System.Reflection
Definition
ICustomTypeProvider.cs:1
System.Runtime.Serialization.CollectionKind.Dictionary
@ Dictionary
System.Runtime.Serialization
Definition
SerializationGuard.cs:3
System.Reflection.ParameterModifier
Definition
ParameterModifier.cs:4
source
System.Diagnostics.Process
System.Runtime.Serialization
SerializationGuard.cs
Generated by
1.10.0