Package net.sf.saxon.expr.parser
package net.sf.saxon.expr.parser
This package contains classes associated with parsing and general static analysis of XPath expressions.
-
ClassDescriptionA code injector can be used to add code to the expression tree (for example, diagnostic tracing code) during the process of parsing and tree constructionA data structure that represents the required type of the context item, together with information about whether it is known to be present or absent or whether it is not known statically whether it is present or absent.Constants for different mechanisms of expression evaluationGeneral action class which can be used to process all nodes on an expression treeThis class, ExpressionTool, contains a number of useful static methods for manipulating expressions.The ExpressionVisitor supports the various phases of processing of an expression tree which require a recursive walk of the tree structure visiting each node in turn.Class to hold details of the location of an expression, of an error in a source file, etc.Class to handle loop-lifting optimization, that is, extraction of subexpressions appearing within a loop when there is no dependency on the controlling variable of the loop.A
Symbolis an abstraction of a token.This class performs optimizations that vary between different versions of the Saxon product.Defines switches that can be used to control which optimizations take place.Indicates whether something is required, prohibited, or optional.Dummy Parser extension for syntax in XPath that is accepted only in particular product variants.A map from old bindings to new bindings, maintained during a copy() operation applied to an expression tree.This class contains the part of the static context of expressions that (a) can change from one expression to another within a query or stylesheet, and (b) are potentially needed at run-time.A RoleDiagnostic (formerly RoleLocator) identifies the role in which an expression is used, for example as the third argument of the concat() function.This class holds static constants and methods defining the lexical tokens used in XPath and XQuery, and associated keywords.A "complex token" is used to represent constructs like element constructors and string templates that contain embedded expressions within arbitrary character content..Token representing a numeric literal.Token representing a pragma, that is the construct `(#...#)` that acts as the first part of an extension expression.Token representing a string literal.Token representing a partial wildcard: prefix:*, Q{uri}*, or *:suffixTokenizer for XPath and XQuery expressions.This class provides Saxon's type checking capability.Parser for XPath expressions and XSLT patterns.A nested location: for use with XPath expressions and queries nested within some larger document.