private Axis.AxisType GetAxis(XPathScanner scaner) { object obj2 = AxesTable[scaner.Name]; if (obj2 == null) { throw XPathException.Create("Xp_InvalidToken", this.scanner.SourceText); } return((Axis.AxisType)obj2); }
private static bool IsPrimaryExpr(XPathScanner scanner) { return( scanner.Kind == XPathScanner.LexKind.String || scanner.Kind == XPathScanner.LexKind.Number || scanner.Kind == XPathScanner.LexKind.Dollar || scanner.Kind == XPathScanner.LexKind.LParens || scanner.Kind == XPathScanner.LexKind.Name && scanner.CanBeFunction && !IsNodeType(scanner) ); }
private static bool IsNodeType(XPathScanner scaner) { return( scaner.Prefix.Length == 0 && ( scaner.Name == "node" || scaner.Name == "text" || scaner.Name == "processing-instruction" || scaner.Name == "comment" ) ); }
private Axis.AxisType GetAxis(XPathScanner scaner) { Debug.Assert(scaner.Kind == XPathScanner.LexKind.Axe); object axis = AxesTable[scaner.Name]; if (axis == null) { throw XPathException.Create(Res.Xp_InvalidToken, scanner.SourceText); } return((Axis.AxisType)axis); }
public static AstNode ParseXPathPattern(string xpathPattern) { XPathScanner scanner = new XPathScanner(xpathPattern); AstNode node = new XPathParser(scanner).ParsePattern(null); if (scanner.Kind != XPathScanner.LexKind.Eof) { throw XPathException.Create("Xp_InvalidToken", scanner.SourceText); } return(node); }
public static AstNode ParseXPathPattern(string xpathPattern) { XPathScanner scanner = new XPathScanner(xpathPattern); XPathParser parser = new XPathParser(scanner); AstNode result = parser.ParsePattern(); if (scanner.Kind != XPathScanner.LexKind.Eof) { throw XPathException.Create(SR.Xp_InvalidToken, scanner.SourceText); } return(result); }
private static bool IsNodeType(XPathScanner scaner) { if (scaner.Prefix.Length != 0) { return(false); } if ((!(scaner.Name == "node") && !(scaner.Name == "text")) && !(scaner.Name == "processing-instruction")) { return(scaner.Name == "comment"); } return(true); }
private XPathParser(XPathScanner scanner) { _scanner = scanner; }
private XPathParser(string xpathExpr) { _scanner = new XPathScanner(xpathExpr); _parseDepth = 0; }
private XPathParser(XPathScanner scanner) { this.scanner = scanner; }
private static bool IsPrimaryExpr(XPathScanner scanner) { return((((scanner.Kind == XPathScanner.LexKind.String) || (scanner.Kind == XPathScanner.LexKind.Number)) || ((scanner.Kind == XPathScanner.LexKind.Dollar) || (scanner.Kind == XPathScanner.LexKind.LParens))) || (((scanner.Kind == XPathScanner.LexKind.Name) && scanner.CanBeFunction) && !IsNodeType(scanner))); }