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

◆ StartParsingAsync()

async Task System.Xml.Schema.Parser.StartParsingAsync ( XmlReader reader,
string targetNamespace )
inline

Definition at line 422 of file Parser.cs.

423 {
424 _reader = reader;
425 _positionInfo = PositionInfo.GetPositionInfo(reader);
426 _namespaceManager = reader.NamespaceManager;
427 if (_namespaceManager == null)
428 {
429 _namespaceManager = new XmlNamespaceManager(_nameTable);
431 }
432 else
433 {
434 _isProcessNamespaces = false;
435 }
436 bool flag2;
437 do
438 {
439 bool flag = reader.NodeType != XmlNodeType.Element;
440 flag2 = flag;
441 if (flag2)
442 {
443 flag2 = await reader.ReadAsync().ConfigureAwait(continueOnCapturedContext: false);
444 }
445 }
446 while (flag2);
447 _markupDepth = int.MaxValue;
448 _schemaXmlDepth = reader.Depth;
449 SchemaType rootType = _schemaNames.SchemaTypeFromRoot(reader.LocalName, reader.NamespaceURI);
451 {
452 throw new XmlSchemaException(code, reader.BaseURI, _positionInfo.LineNumber, _positionInfo.LinePosition);
453 }
454 if (_schemaType == SchemaType.XSD)
455 {
456 _schema = new XmlSchema();
457 _schema.BaseUri = new Uri(reader.BaseURI, UriKind.RelativeOrAbsolute);
459 }
460 else
461 {
462 _xdrSchema = new SchemaInfo();
463 _xdrSchema.SchemaType = SchemaType.XDR;
465 ((XdrBuilder)_builder).XmlResolver = _xmlResolver;
466 }
467 }
static PositionInfo GetPositionInfo(object o)
readonly SchemaNames _schemaNames
Definition Parser.cs:12
XmlNamespaceManager _namespaceManager
Definition Parser.cs:16
SchemaInfo _xdrSchema
Definition Parser.cs:32
SchemaType _schemaType
Definition Parser.cs:8
XmlResolver _xmlResolver
Definition Parser.cs:34
PositionInfo _positionInfo
Definition Parser.cs:20
readonly XmlNameTable _nameTable
Definition Parser.cs:10
bool CheckSchemaRoot(SchemaType rootType, [NotNullWhen(false)] out string code)
Definition Parser.cs:117
SchemaBuilder _builder
Definition Parser.cs:28
readonly ValidationEventHandler _eventHandler
Definition Parser.cs:14
SchemaType SchemaTypeFromRoot(string localName, string ns)
UriKind
Definition UriKind.cs:4

References System.Xml.Schema.Parser._builder, System.Xml.Schema.Parser._eventHandler, System.Xml.Schema.Parser._isProcessNamespaces, System.Xml.Schema.Parser._markupDepth, System.Xml.Schema.Parser._namespaceManager, System.Xml.Schema.Parser._nameTable, System.Xml.Schema.Parser._positionInfo, System.Xml.Schema.Parser._reader, System.Xml.Schema.Parser._schema, System.Xml.Schema.Parser._schemaNames, System.Xml.Schema.Parser._schemaType, System.Xml.Schema.Parser._schemaXmlDepth, System.Xml.Schema.Parser._xdrSchema, System.Xml.Schema.Parser._xmlResolver, System.Xml.XmlReader.BaseURI, System.Xml.Schema.Parser.CheckSchemaRoot(), System.Threading.Tasks.Task< TResult >.ConfigureAwait(), System.Xml.XmlReader.Depth, System.Xml.Dictionary, System.Xml.PositionInfo.GetPositionInfo(), System.Xml.PositionInfo.LineNumber, System.Xml.PositionInfo.LinePosition, System.Xml.XmlReader.LocalName, System.Xml.XmlReader.NamespaceManager, System.Xml.XmlReader.NamespaceURI, System.Xml.XmlReader.ReadAsync(), System.Xml.Schema.SchemaNames.SchemaTypeFromRoot(), and System.Xml.Schema.Parser.XmlSchema.

Referenced by System.Xml.XsdValidatingReader.ProcessElementEventAsync().