2 writes to _scanner
System.Private.Xml (2)
System\Xml\Xsl\XPath\XPathParser.cs (2)
30_scanner = scanner; 54_scanner = null;
90 references to _scanner
System.Private.Xml (90)
System\Xml\Xsl\XPath\XPathParser.cs (90)
26Debug.Assert(_scanner == null && _builder == null); 83if (_scanner!.Kind == LexKind.Slash) 85_scanner.NextLex(); 88if (IsStep(_scanner.Kind)) 94else if (_scanner.Kind == LexKind.SlashSlash) 96_scanner.NextLex(); 123throw _scanner!.CreateException(SR.Xslt_InputTooComplex); 127if (_scanner!.Kind == LexKind.Slash) 129_scanner.NextLex(); 132else if (_scanner.Kind == LexKind.SlashSlash) 134_scanner.NextLex(); 152if (LexKind.Dot == _scanner!.Kind) 154_scanner.NextLex(); 156if (LexKind.LBracket == _scanner.Kind) 158throw _scanner.CreateException(SR.XPath_PredicateAfterDot); 161else if (LexKind.DotDot == _scanner.Kind) 163_scanner.NextLex(); 165if (LexKind.LBracket == _scanner.Kind) 167throw _scanner.CreateException(SR.XPath_PredicateAfterDotDot); 173switch (_scanner.Kind) 176axis = _scanner.Axis; 177_scanner.NextLex(); 178_scanner.NextLex(); 182_scanner.NextLex(); 190throw _scanner.CreateException(SR.XPath_UnexpectedToken, _scanner.RawValue); 195while (LexKind.LBracket == _scanner.Kind) 220int startChar = _scanner!.LexStart; 221InternalParseNodeTest(_scanner, axis, out nodeType, out nodePrefix, out nodeName); 222PushPosInfo(startChar, _scanner.PrevLexEnd); 313_scanner!.PassToken(LexKind.LBracket); 315_scanner.PassToken(LexKind.RBracket); 351throw _scanner!.CreateException(SR.Xslt_InputTooComplex); 379if (_scanner!.Kind == LexKind.Minus) 383_scanner.NextLex(); 394op = (_scanner.Kind <= LexKind.LastOperator) ? (XPathOperator)_scanner.Kind : XPathOperator.Unknown; 402_scanner.NextLex(); 414int startChar = _scanner!.LexStart; 417if (_scanner.Kind == LexKind.Union) 419PushPosInfo(startChar, _scanner.PrevLexEnd); 423while (_scanner.Kind == LexKind.Union) 425_scanner.NextLex(); 426startChar = _scanner.LexStart; 428PushPosInfo(startChar, _scanner.PrevLexEnd); 444int startChar = _scanner!.LexStart; 446int endChar = _scanner.PrevLexEnd; 448if (_scanner.Kind == LexKind.Slash) 450_scanner.NextLex(); 455else if (_scanner.Kind == LexKind.SlashSlash) 457_scanner.NextLex(); 480int startChar = _scanner!.LexStart; 482int endChar = _scanner.PrevLexEnd; 484while (_scanner.Kind == LexKind.LBracket) 496_scanner!.Kind == LexKind.String || 497_scanner.Kind == LexKind.Number || 498_scanner.Kind == LexKind.Dollar || 499_scanner.Kind == LexKind.LParens || 500_scanner.Kind == LexKind.Name && _scanner.CanBeFunction && !IsNodeType(_scanner) 511switch (_scanner!.Kind) 514opnd = _builder!.String(_scanner.StringValue); 515_scanner.NextLex(); 518opnd = _builder!.Number(XPathConvert.StringToDouble(_scanner.RawValue)); 519_scanner.NextLex(); 522int startChar = _scanner.LexStart; 523_scanner.NextLex(); 524_scanner.CheckToken(LexKind.Name); 525PushPosInfo(startChar, _scanner.LexStart + _scanner.LexSize); 526opnd = _builder!.Variable(_scanner.Prefix, _scanner.Name); 528_scanner.NextLex(); 531_scanner.NextLex(); 533_scanner.PassToken(LexKind.RParens); 537_scanner.Kind == LexKind.Name && _scanner.CanBeFunction && !IsNodeType(_scanner), 552string name = _scanner!.Name; 553string prefix = _scanner.Prefix; 554int startChar = _scanner.LexStart; 556_scanner.PassToken(LexKind.Name); 557_scanner.PassToken(LexKind.LParens); 559if (_scanner.Kind != LexKind.RParens) 564if (_scanner.Kind != LexKind.Comma) 566_scanner.CheckToken(LexKind.RParens); 569_scanner.NextLex(); // move off the ',' 573_scanner.NextLex(); // move off the ')' 574PushPosInfo(startChar, _scanner.PrevLexEnd);