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

◆ ScanElement1Async()

async Task< Token > System.Xml.DtdParser.ScanElement1Async ( )
inlineprivate

Definition at line 4499 of file DtdParser.cs.

4500 {
4501 while (true)
4502 {
4503 char c = _chars[_curPos];
4504 if (c != '(')
4505 {
4506 if (c != 'A')
4507 {
4508 if (c == 'E')
4509 {
4510 if (_charsUsed - _curPos < 5)
4511 {
4512 goto IL_0141;
4513 }
4514 if (_chars[_curPos + 1] == 'M' && _chars[_curPos + 2] == 'P' && _chars[_curPos + 3] == 'T' && _chars[_curPos + 4] == 'Y')
4515 {
4516 _curPos += 5;
4517 _scanningFunction = ScanningFunction.ClosingTag;
4518 return Token.EMPTY;
4519 }
4520 }
4521 }
4522 else
4523 {
4524 if (_charsUsed - _curPos < 3)
4525 {
4526 goto IL_0141;
4527 }
4528 if (_chars[_curPos + 1] == 'N' && _chars[_curPos + 2] == 'Y')
4529 {
4530 break;
4531 }
4532 }
4534 goto IL_0141;
4535 }
4536 _scanningFunction = ScanningFunction.Element2;
4537 _curPos++;
4538 return Token.LeftParen;
4539 IL_0141:
4540 if (await ReadDataAsync().ConfigureAwait(continueOnCapturedContext: false) == 0)
4541 {
4543 }
4544 }
4545 _curPos += 3;
4546 _scanningFunction = ScanningFunction.ClosingTag;
4547 return Token.ANY;
4548 }
static string Xml_IncompleteDtdContent
Definition SR.cs:246
static string Xml_InvalidContentModel
Definition SR.cs:250
Definition SR.cs:7
async Task< int > ReadDataAsync()
void Throw(int curPos, string res)
ScanningFunction _scanningFunction
Definition DtdParser.cs:166

References System.Xml.DtdParser._chars, System.Xml.DtdParser._charsUsed, System.Xml.DtdParser._curPos, System.Xml.DtdParser._scanningFunction, System.Xml.Dictionary, System.Xml.DtdParser.ReadDataAsync(), System.Xml.DtdParser.Throw(), System.SR.Xml_IncompleteDtdContent, and System.SR.Xml_InvalidContentModel.

Referenced by System.Xml.DtdParser.GetTokenAsync().