146 references to LexKind
System.Data.SqlXml (146)
System\Xml\Xsl\XPath\XPathParser.cs (53)
28public Node Parse(XPathScanner scanner, IXPathBuilder<Node> builder, LexKind endLex) { 65internal static bool IsStep(LexKind lexKind) { 67lexKind == LexKind.Dot || 68lexKind == LexKind.DotDot || 69lexKind == LexKind.At || 70lexKind == LexKind.Axis || 71lexKind == LexKind.Star || 72lexKind == LexKind.Name // NodeTest is also Name 80if (scanner.Kind == LexKind.Slash) { 88} else if (scanner.Kind == LexKind.SlashSlash) { 115if (scanner.Kind == LexKind.Slash) { 118} else if (scanner.Kind == LexKind.SlashSlash) { 136if (LexKind.Dot == scanner.Kind) { // '.' 139if (LexKind.LBracket == scanner.Kind) { 142} else if (LexKind.DotDot == scanner.Kind) { // '..' 145if (LexKind.LBracket == scanner.Kind) { 151case LexKind.Axis: // AxisName '::' 156case LexKind.At: // '@' 160case LexKind.Name: 161case LexKind.Star: 171while (LexKind.LBracket == scanner.Kind) { 220case LexKind.Name : 235scanner.PassToken(LexKind.LParens); 238if (scanner.Kind != LexKind.RParens) { // 'processing-instruction' '(' Literal ')' 239scanner.CheckToken(LexKind.String); 248scanner.PassToken(LexKind.RParens); 259case LexKind.Star : 274scanner.PassToken(LexKind.LBracket); 276scanner.PassToken(LexKind.RBracket); 316if (scanner.Kind == LexKind.Minus) { 327op = (scanner.Kind <= LexKind.LastOperator) ? (XPathOperator)scanner.Kind : XPathOperator.Unknown; 367if (scanner.Kind == LexKind.Union) { 372while (scanner.Kind == LexKind.Union) { 394if (scanner.Kind == LexKind.Slash) { 399} else if (scanner.Kind == LexKind.SlashSlash) { 424while (scanner.Kind == LexKind.LBracket) { 434scanner.Kind == LexKind.String || 435scanner.Kind == LexKind.Number || 436scanner.Kind == LexKind.Dollar || 437scanner.Kind == LexKind.LParens || 438scanner.Kind == LexKind.Name && scanner.CanBeFunction && !IsNodeType(scanner) 449case LexKind.String: 453case LexKind.Number: 457case LexKind.Dollar: 460scanner.CheckToken(LexKind.Name); 466case LexKind.LParens: 469scanner.PassToken(LexKind.RParens); 473scanner.Kind == LexKind.Name && scanner.CanBeFunction && !IsNodeType(scanner), 491scanner.PassToken(LexKind.Name); 492scanner.PassToken(LexKind.LParens); 494if (scanner.Kind != LexKind.RParens) { 497if (scanner.Kind != LexKind.Comma) { 498scanner.CheckToken(LexKind.RParens);
System\Xml\Xsl\XPath\XPathScanner.cs (60)
65private LexKind kind; 72private LexKind prevKind; 82this.kind = LexKind.Unknown; 88public LexKind Kind { get { return kind; } } 124Debug.Assert(kind == LexKind.Name); 132Debug.Assert(kind == LexKind.Name); 140if (kind == LexKind.Eof) { 150Debug.Assert(kind == LexKind.String); 163Debug.Assert(kind == LexKind.Name); 170Debug.Assert(kind == LexKind.Axis); 194kind = LexKind.Eof; 198kind = (LexKind)curChar; 204kind = LexKind.DotDot; 210kind = LexKind.Dot; 216kind = LexKind.ColonColon; 219kind = LexKind.Unknown; 223kind = LexKind.Star; 230kind = LexKind.SlashSlash; 233kind = LexKind.Slash; 237kind = LexKind.Union; 241kind = LexKind.Plus; 245kind = LexKind.Minus; 249kind = LexKind.Eq; 255kind = LexKind.Ne; 258kind = LexKind.Unknown; 264kind = LexKind.Le; 267kind = LexKind.Lt; 273kind = LexKind.Ge; 276kind = LexKind.Gt; 281kind = LexKind.String; 287kind = LexKind.Number; 296kind = LexKind.Name; 352kind = LexKind.Unknown; 360LexKind opKind; 363opKind = LexKind.Multiply; 369case "or" : opKind = LexKind.Or; break; 370case "and": opKind = LexKind.And; break; 371case "div": opKind = LexKind.Divide; break; 372case "mod": opKind = LexKind.Modulo; break; 379if (prevKind <= LexKind.LastOperator) 383case LexKind.Slash: 384case LexKind.SlashSlash: 385case LexKind.At: 386case LexKind.ColonColon: 387case LexKind.LParens: 388case LexKind.LBracket: 389case LexKind.Comma: 390case LexKind.Dollar: 399this.kind = LexKind.Axis; 414default : this.kind = LexKind.Name; return XPathAxis.Unknown; 478public void PassToken(LexKind t) { 483public void CheckToken(LexKind t) { 484Debug.Assert(LexKind.FirstStringable <= t); 486if (t == LexKind.Eof) { 495private string LexKindToString(LexKind t) { 496Debug.Assert(LexKind.FirstStringable <= t); 498if (LexKind.LastNonChar < t) { 504case LexKind.Name : return "<name>"; 505case LexKind.String : return "<string literal>"; 506case LexKind.Eof : return "<eof>";
System\Xml\Xsl\Xslt\QilGenerator.cs (3)
1938result = xpathParser.Parse(scanner, xpathBuilder, LexKind.Eof); 1974result = xpathParser.Parse(scanner, xpathBuilder, LexKind.RBrace); 2063result = xpathParser.Parse(scanner, xpathBuilder, LexKind.Eof);
System\Xml\Xsl\Xslt\XPathPatternParser.cs (28)
37this.scanner.CheckToken(LexKind.Eof); 54while (scanner.Kind == LexKind.Union) { 68case LexKind.Slash : 76case LexKind.SlashSlash : 85case LexKind.Name : 89case LexKind.Slash : 93case LexKind.SlashSlash : 122scanner.PassToken(LexKind.LParens); 123scanner.CheckToken(LexKind.String); 126scanner.PassToken(LexKind.RParens); 130scanner.PassToken(LexKind.LParens); 131scanner.CheckToken(LexKind.String); 134scanner.PassToken(LexKind.Comma); 135scanner.CheckToken(LexKind.String); 138scanner.PassToken(LexKind.RParens); 156if (scanner.Kind == LexKind.Slash) { 159} else if (scanner.Kind == LexKind.SlashSlash) { 181case LexKind.Dot: 182case LexKind.DotDot: 184case LexKind.At: 188case LexKind.Axis: 196case LexKind.Name: 197case LexKind.Star: 214while (scanner.Kind == LexKind.LBracket) { 221while (scanner.Kind == LexKind.LBracket) { 232Debug.Assert(scanner.Kind == LexKind.LBracket); 234QilNode result = predicateParser.Parse(scanner, ptrnBuilder.GetPredicateBuilder(context), LexKind.RBracket); 235Debug.Assert(scanner.Kind == LexKind.RBracket);
System\Xml\Xsl\Xslt\XslAstAnalyzer.cs (2)
815XslFlags result = xpathParser.Parse(scanner, this, LexKind.Eof); 846result |= xpathParser.Parse(scanner, this, LexKind.RBrace);