Terraria
v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
Attributes.cs
Go to the documentation of this file.
1
using
System.Xml
;
2
3
namespace
System.Runtime.Serialization
;
4
5
internal
sealed
class
Attributes
6
{
7
private
static
readonly
XmlDictionaryString
[]
s_serializationLocalNames
=
new
XmlDictionaryString
[6]
8
{
9
DictionaryGlobals
.
IdLocalName
,
10
DictionaryGlobals
.
ArraySizeLocalName
,
11
DictionaryGlobals
.
RefLocalName
,
12
DictionaryGlobals
.
ClrTypeLocalName
,
13
DictionaryGlobals
.
ClrAssemblyLocalName
,
14
DictionaryGlobals.ISerializableFactoryTypeLocalName
15
};
16
17
private
static
readonly
XmlDictionaryString
[]
s_schemaInstanceLocalNames
=
new
XmlDictionaryString
[2]
18
{
19
DictionaryGlobals
.
XsiNilLocalName
,
20
DictionaryGlobals.XsiTypeLocalName
21
};
22
23
internal
string
Id
;
24
25
internal
string
Ref
;
26
27
internal
string
XsiTypeName
;
28
29
internal
string
XsiTypeNamespace
;
30
31
internal
string
XsiTypePrefix
;
32
33
internal
bool
XsiNil
;
34
35
internal
string
ClrAssembly
;
36
37
internal
string
ClrType
;
38
39
internal
int
ArraySZSize
;
40
41
internal
string
FactoryTypeName
;
42
43
internal
string
FactoryTypeNamespace
;
44
45
internal
string
FactoryTypePrefix
;
46
47
internal
bool
UnrecognizedAttributesFound
;
48
49
internal
void
Read
(
XmlReaderDelegator
reader)
50
{
51
Reset
();
52
while
(reader.
MoveToNextAttribute
())
53
{
54
switch
(reader.
IndexOfLocalName
(
s_serializationLocalNames
,
DictionaryGlobals
.
SerializationNamespace
))
55
{
56
case
0:
57
ReadId
(reader);
58
continue
;
59
case
1:
60
ReadArraySize
(reader);
61
continue
;
62
case
2:
63
ReadRef
(reader);
64
continue
;
65
case
3:
66
ClrType
= reader.
Value
;
67
continue
;
68
case
4:
69
ClrAssembly
= reader.
Value
;
70
continue
;
71
case
5:
72
ReadFactoryType
(reader);
73
continue
;
74
}
75
switch
(reader.
IndexOfLocalName
(
s_schemaInstanceLocalNames
,
DictionaryGlobals
.
SchemaInstanceNamespace
))
76
{
77
case
0:
78
ReadXsiNil
(reader);
79
continue
;
80
case
1:
81
ReadXsiType
(reader);
82
continue
;
83
}
84
if
(!reader.
IsNamespaceUri
(
DictionaryGlobals
.
XmlnsNamespace
))
85
{
86
UnrecognizedAttributesFound
=
true
;
87
}
88
}
89
reader.
MoveToElement
();
90
}
91
92
internal
void
Reset
()
93
{
94
Id
=
Globals
.
NewObjectId
;
95
Ref
=
Globals
.
NewObjectId
;
96
XsiTypeName
=
null
;
97
XsiTypeNamespace
=
null
;
98
XsiTypePrefix
=
null
;
99
XsiNil
=
false
;
100
ClrAssembly
=
null
;
101
ClrType
=
null
;
102
ArraySZSize
= -1;
103
FactoryTypeName
=
null
;
104
FactoryTypeNamespace
=
null
;
105
FactoryTypePrefix
=
null
;
106
UnrecognizedAttributesFound
=
false
;
107
}
108
109
private
void
ReadId
(
XmlReaderDelegator
reader)
110
{
111
Id
= reader.
ReadContentAsString
();
112
if
(
string
.IsNullOrEmpty(
Id
))
113
{
114
throw
DiagnosticUtility
.
ExceptionUtility
.
ThrowHelperError
(
XmlObjectSerializer
.
CreateSerializationException
(
System
.
SR
.
Format
(
System
.
SR
.
InvalidXsIdDefinition
,
Id
)));
115
}
116
}
117
118
private
void
ReadRef
(
XmlReaderDelegator
reader)
119
{
120
Ref
= reader.
ReadContentAsString
();
121
if
(
string
.IsNullOrEmpty(
Ref
))
122
{
123
throw
DiagnosticUtility
.
ExceptionUtility
.
ThrowHelperError
(
XmlObjectSerializer
.
CreateSerializationException
(
System
.
SR
.
Format
(
System
.
SR
.
InvalidXsRefDefinition
,
Ref
)));
124
}
125
}
126
127
private
void
ReadXsiNil
(
XmlReaderDelegator
reader)
128
{
129
XsiNil
= reader.
ReadContentAsBoolean
();
130
}
131
132
private
void
ReadArraySize
(
XmlReaderDelegator
reader)
133
{
134
ArraySZSize
= reader.
ReadContentAsInt
();
135
if
(
ArraySZSize
< 0)
136
{
137
throw
DiagnosticUtility
.
ExceptionUtility
.
ThrowHelperError
(
XmlObjectSerializer
.
CreateSerializationException
(
System
.
SR
.
Format
(
System
.
SR
.
InvalidSizeDefinition
,
ArraySZSize
)));
138
}
139
}
140
141
private
void
ReadXsiType
(
XmlReaderDelegator
reader)
142
{
143
string
value
= reader.
Value
;
144
if
(
value
!=
null
&&
value
.Length > 0)
145
{
146
XmlObjectSerializerReadContext
.
ParseQualifiedName
(
value
, reader,
out
XsiTypeName
,
out
XsiTypeNamespace
,
out
XsiTypePrefix
);
147
}
148
}
149
150
private
void
ReadFactoryType
(
XmlReaderDelegator
reader)
151
{
152
string
value
= reader.
Value
;
153
if
(
value
!=
null
&&
value
.Length > 0)
154
{
155
XmlObjectSerializerReadContext
.
ParseQualifiedName
(
value
, reader,
out
FactoryTypeName
,
out
FactoryTypeNamespace
,
out
FactoryTypePrefix
);
156
}
157
}
158
}
System.Runtime.Serialization.Attributes.FactoryTypePrefix
string FactoryTypePrefix
Definition
Attributes.cs:45
System.Runtime.Serialization.Attributes.Ref
string Ref
Definition
Attributes.cs:25
System.Runtime.Serialization.Attributes.Id
string Id
Definition
Attributes.cs:23
System.Runtime.Serialization.Attributes.Reset
void Reset()
Definition
Attributes.cs:92
System.Runtime.Serialization.Attributes.ReadId
void ReadId(XmlReaderDelegator reader)
Definition
Attributes.cs:109
System.Runtime.Serialization.Attributes.s_schemaInstanceLocalNames
static readonly XmlDictionaryString[] s_schemaInstanceLocalNames
Definition
Attributes.cs:17
System.Runtime.Serialization.Attributes.UnrecognizedAttributesFound
bool UnrecognizedAttributesFound
Definition
Attributes.cs:47
System.Runtime.Serialization.Attributes.XsiTypePrefix
string XsiTypePrefix
Definition
Attributes.cs:31
System.Runtime.Serialization.Attributes.XsiTypeNamespace
string XsiTypeNamespace
Definition
Attributes.cs:29
System.Runtime.Serialization.Attributes.ClrType
string ClrType
Definition
Attributes.cs:37
System.Runtime.Serialization.Attributes.ClrAssembly
string ClrAssembly
Definition
Attributes.cs:35
System.Runtime.Serialization.Attributes.s_serializationLocalNames
static readonly XmlDictionaryString[] s_serializationLocalNames
Definition
Attributes.cs:7
System.Runtime.Serialization.Attributes.Read
void Read(XmlReaderDelegator reader)
Definition
Attributes.cs:49
System.Runtime.Serialization.Attributes.ReadFactoryType
void ReadFactoryType(XmlReaderDelegator reader)
Definition
Attributes.cs:150
System.Runtime.Serialization.Attributes.ReadArraySize
void ReadArraySize(XmlReaderDelegator reader)
Definition
Attributes.cs:132
System.Runtime.Serialization.Attributes.XsiTypeName
string XsiTypeName
Definition
Attributes.cs:27
System.Runtime.Serialization.Attributes.ReadXsiNil
void ReadXsiNil(XmlReaderDelegator reader)
Definition
Attributes.cs:127
System.Runtime.Serialization.Attributes.XsiNil
bool XsiNil
Definition
Attributes.cs:33
System.Runtime.Serialization.Attributes.FactoryTypeName
string FactoryTypeName
Definition
Attributes.cs:41
System.Runtime.Serialization.Attributes.ReadRef
void ReadRef(XmlReaderDelegator reader)
Definition
Attributes.cs:118
System.Runtime.Serialization.Attributes.ReadXsiType
void ReadXsiType(XmlReaderDelegator reader)
Definition
Attributes.cs:141
System.Runtime.Serialization.Attributes.FactoryTypeNamespace
string FactoryTypeNamespace
Definition
Attributes.cs:43
System.Runtime.Serialization.Attributes.ArraySZSize
int ArraySZSize
Definition
Attributes.cs:39
System.Runtime.Serialization.Attributes
Definition
Attributes.cs:6
System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility.ThrowHelperError
static Exception ThrowHelperError(Exception e)
Definition
DiagnosticUtility.cs:15
System.Runtime.Serialization.DiagnosticUtility.ExceptionUtility
Definition
DiagnosticUtility.cs:9
System.Runtime.Serialization.DiagnosticUtility
Definition
DiagnosticUtility.cs:7
System.Runtime.Serialization.DictionaryGlobals.ClrAssemblyLocalName
static readonly XmlDictionaryString ClrAssemblyLocalName
Definition
DictionaryGlobals.cs:75
System.Runtime.Serialization.DictionaryGlobals.XmlnsNamespace
static readonly XmlDictionaryString XmlnsNamespace
Definition
DictionaryGlobals.cs:29
System.Runtime.Serialization.DictionaryGlobals.RefLocalName
static readonly XmlDictionaryString RefLocalName
Definition
DictionaryGlobals.cs:21
System.Runtime.Serialization.DictionaryGlobals.IdLocalName
static readonly XmlDictionaryString IdLocalName
Definition
DictionaryGlobals.cs:19
System.Runtime.Serialization.DictionaryGlobals.ClrTypeLocalName
static readonly XmlDictionaryString ClrTypeLocalName
Definition
DictionaryGlobals.cs:73
System.Runtime.Serialization.DictionaryGlobals.ArraySizeLocalName
static readonly XmlDictionaryString ArraySizeLocalName
Definition
DictionaryGlobals.cs:23
System.Runtime.Serialization.DictionaryGlobals.SerializationNamespace
static readonly XmlDictionaryString SerializationNamespace
Definition
DictionaryGlobals.cs:11
System.Runtime.Serialization.DictionaryGlobals.XsiNilLocalName
static readonly XmlDictionaryString XsiNilLocalName
Definition
DictionaryGlobals.cs:17
System.Runtime.Serialization.DictionaryGlobals.SchemaInstanceNamespace
static readonly XmlDictionaryString SchemaInstanceNamespace
Definition
DictionaryGlobals.cs:9
System.Runtime.Serialization.DictionaryGlobals
Definition
DictionaryGlobals.cs:6
System.Runtime.Serialization.Globals.NewObjectId
static readonly string NewObjectId
Definition
Globals.cs:172
System.Runtime.Serialization.Globals
Definition
Globals.cs:13
System.Runtime.Serialization.XmlObjectSerializerReadContext.ParseQualifiedName
static void ParseQualifiedName(string qname, XmlReaderDelegator xmlReader, out string name, out string ns, out string prefix)
Definition
XmlObjectSerializerReadContext.cs:413
System.Runtime.Serialization.XmlObjectSerializerReadContext
Definition
XmlObjectSerializerReadContext.cs:10
System.Runtime.Serialization.XmlObjectSerializer.CreateSerializationException
static SerializationException CreateSerializationException(string errorMessage)
Definition
XmlObjectSerializer.cs:440
System.Runtime.Serialization.XmlObjectSerializer
Definition
XmlObjectSerializer.cs:12
System.Runtime.Serialization.XmlReaderDelegator.IsNamespaceUri
bool IsNamespaceUri(XmlDictionaryString ns)
Definition
XmlReaderDelegator.cs:197
System.Runtime.Serialization.XmlReaderDelegator.ReadContentAsBoolean
bool ReadContentAsBoolean()
Definition
XmlReaderDelegator.cs:567
System.Runtime.Serialization.XmlReaderDelegator.ReadContentAsString
string ReadContentAsString()
Definition
XmlReaderDelegator.cs:549
System.Runtime.Serialization.XmlReaderDelegator.ReadContentAsInt
int ReadContentAsInt()
Definition
XmlReaderDelegator.cs:709
System.Runtime.Serialization.XmlReaderDelegator.MoveToNextAttribute
bool MoveToNextAttribute()
Definition
XmlReaderDelegator.cs:315
System.Runtime.Serialization.XmlReaderDelegator.IndexOfLocalName
int IndexOfLocalName(XmlDictionaryString[] localNames, XmlDictionaryString ns)
Definition
XmlReaderDelegator.cs:215
System.Runtime.Serialization.XmlReaderDelegator.MoveToElement
bool MoveToElement()
Definition
XmlReaderDelegator.cs:297
System.Runtime.Serialization.XmlReaderDelegator.Value
string Value
Definition
XmlReaderDelegator.cs:137
System.Runtime.Serialization.XmlReaderDelegator
Definition
XmlReaderDelegator.cs:10
System.SR.InvalidXsRefDefinition
static string InvalidXsRefDefinition
Definition
SR.cs:168
System.SR.Format
static string Format(string resourceFormat, object p1)
Definition
SR.cs:118
System.SR.InvalidSizeDefinition
static string InvalidSizeDefinition
Definition
SR.cs:162
System.SR.InvalidXsIdDefinition
static string InvalidXsIdDefinition
Definition
SR.cs:166
System.SR
Definition
SR.cs:7
System.Xml.Ref
Definition
Ref.cs:4
System.Xml.XmlDictionaryString
Definition
XmlDictionaryString.cs:8
System.Runtime.Serialization.CollectionKind.Dictionary
@ Dictionary
System.Runtime.Serialization
Definition
SerializationGuard.cs:3
System.Xml
Definition
BaseRegionIterator.cs:1
System.ExceptionArgument.value
@ value
System
Definition
BlockingCollection.cs:8
source
System.Private.DataContractSerialization
System.Runtime.Serialization
Attributes.cs
Generated by
1.10.0