## Uses of Class
org.apache.xpath.Expression

Packages that use Expression
Package | Description
--- | ---
org.apache.xalan.templates | Implements the `Templates` interface, and defines a set of classes that represent an XSLT stylesheet.
org.apache.xalan.transformer | In charge of run-time transformations and the production of result trees.
org.apache.xpath | Implementation of XPath; for the most part, only classes meant for public use are found at this root level of the XPath packages.
org.apache.xpath.axes | Implementation of XPath LocationPath support -- primary classes are LocPathIterator and UnionPathIterator.
org.apache.xpath.compiler | Implements an XPath parser which produces an OpMap, and a so-called Compiler which produces an expression tree for fast evaluation.
org.apache.xpath.functions | Implements XPath functions -- each function is derived from Function, FunctionOneArg, Function2Args, etc, with number-of-arguments checking being applied mainly at compile time -- this package only implements XPath functions, XSLT functions are found in the "templates" package.
org.apache.xpath.objects | Implementation of XPath polymorphic type objects -- this package will grow as XPath objects are expanded to support XML Schema data types.
org.apache.xpath.operations | Support for XPath operations, such as +, -, string(), etc.
org.apache.xpath.patterns | Implementation of XPath nodeTest support, and XSLT pattern matching support.

### Uses of Expression in org.apache.xalan.templates

Subclasses of Expression in org.apache.xalan.templates
Modifier and Type | Class and Description
--- | ---
`class` | `FuncDocument` Execute the Doc() function.
`class` | `FuncFormatNumb` Execute the FormatNumber() function.
`class` | `FuncKey` Execute the Key() function.
`class` | `XUnresolvedVariable` An instance of this class holds unto a variable until it is executed.
`class` | `XUnresolvedVariableSimple` This is the same as XUnresolvedVariable, but it assumes that the context is already set up.

Methods in org.apache.xalan.templates that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | ElemForEach.`getExpression()`
`Expression` | ElemForEach.`getSelect()` Get the "select" attribute.

Methods in org.apache.xalan.templates with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`void` | ElemForEach.`setExpression(Expression exp)`
`boolean` | RedundentExprEliminator.`visitPredicate(ExpressionOwner owner, Expression pred)` Visit a predicate within a location path.

### Uses of Expression in org.apache.xalan.transformer

Subclasses of Expression in org.apache.xalan.transformer
Modifier and Type | Class and Description
--- | ---
`class` | `KeyIterator` This class implements an optimized iterator for "key()" patterns, matching each node to the match attribute in one or more xsl:key declarations.
`class` | `KeyRefIterator` This class filters nodes from a key iterator, according to whether or not the use value matches the ref value.

### Uses of Expression in org.apache.xpath

Methods in org.apache.xpath that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | XPath.`getExpression()` Get the raw Expression object that this class wraps.
`Expression` | ExpressionOwner.`getExpression()` Get the raw Expression object that this class wraps.

Methods in org.apache.xpath with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`abstract boolean` | Expression.`deepEquals(Expression expr)` Compare this object with another object and see if they are equal, include the sub heararchy.
`void` | XPath.`setExpression(Expression exp)` Set the raw expression object for this object.
`void` | ExpressionOwner.`setExpression(Expression exp)` Set the raw expression object for this object.
`boolean` | XPathVisitor.`visitPredicate(ExpressionOwner owner, Expression pred)` Visit a predicate within a location path.

Constructors in org.apache.xpath with parameters of type Expression
Constructor and Description
`XPath(Expression expr)` Construct an XPath object.

### Uses of Expression in org.apache.xpath.axes

Subclasses of Expression in org.apache.xpath.axes
Modifier and Type | Class and Description
--- | ---
`class` | `AttributeIterator` This class implements an optimized iterator for attribute axes patterns.
`class` | `AxesWalker` Serves as common interface for axes Walkers, and stores common state variables.
`class` | `BasicTestIterator` Base for iterators that handle predicates.
`class` | `ChildIterator` This class implements an optimized iterator for "node()" patterns, that is, any children of the context node.
`class` | `ChildTestIterator` This class implements an optimized iterator for children patterns that have a node test, and possibly a predicate.
`class` | `DescendantIterator` This class implements an optimized iterator for descendant, descendant-or-self, or "//foo" patterns.
`class` | `FilterExprIterator`
`class` | `FilterExprIteratorSimple` Class to use for one-step iteration that doesn't have a predicate, and doesn't need to set the context.
`class` | `FilterExprWalker` Walker for the OP_VARIABLE, or OP_EXTFUNCTION, or OP_FUNCTION, or OP_GROUP, op codes.
`class` | `LocPathIterator` This class extends NodeSetDTM, which implements NodeIterator, and fetches nodes one at a time in document order based on a XPath | `class` | `MatchPatternIterator` This class treats a LocationPath as a filtered iteration over the tree, evaluating each node in a super axis traversal against the LocationPath interpreted as a match pattern.
`class` | `NodeSequence` This class is the dynamic wrapper for a Xalan DTMIterator instance, and provides random access capabilities.
`class` | `OneStepIterator` This class implements a general iterator for those LocationSteps with only one step, and perhaps a predicate.
`class` | `OneStepIteratorForward` This class implements a general iterator for those LocationSteps with only one step, and perhaps a predicate, that only go forward (i.e. it can not be used with ancestors, preceding, etc.)
`class` | `PredicatedNodeTest`
`class` | `ReverseAxesWalker` Walker for a reverse axes.
`class` | `SelfIteratorNoPredicate` This class implements an optimized iterator for "." patterns, that is, the self axes without any predicates.
`class` | `UnionChildIterator` This class defines a simplified type of union iterator that only tests along the child axes.
`class` | `UnionPathIterator` This class extends NodeSetDTM, which implements DTMIterator, and fetches nodes one at a time in document order based on a XPath UnionExpr.
`class` | `WalkingIterator` Location path iterator that uses Walkers.
`class` | `WalkingIteratorSorted` This class iterates over set of nodes that needs to be sorted.

Methods in org.apache.xpath.axes that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | WalkingIterator.`getExpression()`
`Expression` | AxesWalker.`getExpression()`
`Expression` | FilterExprWalker.`getInnerExpression()` Get the inner contained expression of this filter.
`Expression` | FilterExprIteratorSimple.`getInnerExpression()` Get the inner contained expression of this filter.
`Expression` | FilterExprIterator.`getInnerExpression()` Get the inner contained expression of this filter.
`Expression` | PredicatedNodeTest.`getPredicate(int index)` Get a predicate expression at the given index.

Methods in org.apache.xpath.axes with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`boolean` | WalkingIterator.`deepEquals(Expression expr)`
`boolean` | UnionPathIterator.`deepEquals(Expression expr)`
`boolean` | PredicatedNodeTest.`deepEquals(Expression expr)`
`boolean` | OneStepIteratorForward.`deepEquals(Expression expr)`
`boolean` | OneStepIterator.`deepEquals(Expression expr)`
`boolean` | FilterExprWalker.`deepEquals(Expression expr)`
`boolean` | FilterExprIteratorSimple.`deepEquals(Expression expr)`
`boolean` | FilterExprIterator.`deepEquals(Expression expr)`
`boolean` | DescendantIterator.`deepEquals(Expression expr)`
`boolean` | AxesWalker.`deepEquals(Expression expr)`
`static XNodeSet` | FilterExprIteratorSimple.`executeFilterExpr(int context, XPathContext xctxt, PrefixResolver prefixResolver, boolean isTopLevel, int stackFrame, Expression expr)` Execute the expression.
`void` | WalkingIterator.`setExpression(Expression exp)`
`void` | AxesWalker.`setExpression(Expression exp)`
`void` | FilterExprWalker.`setInnerExpression(Expression expr)` Set the inner contained expression of this filter.
`void` | FilterExprIteratorSimple.`setInnerExpression(Expression expr)` Set the inner contained expression of this filter.
`void` | FilterExprIterator.`setInnerExpression(Expression expr)` Set the inner contained expression of this filter.
`boolean` | HasPositionalPredChecker.`visitPredicate(ExpressionOwner owner, Expression pred)` Visit a predicate within a location path.

Constructors in org.apache.xpath.axes with parameters of type Expression
Constructor and Description
`FilterExprIterator(Expression expr)` Create a FilterExprIterator object.
`FilterExprIteratorSimple(Expression expr)` Create a FilterExprIteratorSimple object.

### Uses of Expression in org.apache.xpath.compiler

Methods in org.apache.xpath.compiler that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | Compiler.`compile(int opPos)` Execute the XPath object from a given opcode position.
`Expression[]` | Compiler.`getCompiledPredicates(int opPos)` Compile a zero or more predicates for a given match pattern.
`Expression` | Compiler.`locationPath(int opPos)` Compile a location path.
`Expression` | Compiler.`locationPathPattern(int opPos)` Compile a location match pattern unit expression.
`Expression` | Compiler.`predicate(int opPos)` Compile a location step predicate expression.

### Uses of Expression in org.apache.xpath.functions

Subclasses of Expression in org.apache.xpath.functions
Modifier and Type | Class and Description
--- | ---
`class` | `FuncBoolean` Execute the Boolean() function.
`class` | `FuncCeiling` Execute the Ceiling() function.
`class` | `FuncConcat` Execute the Concat() function.
`class` | `FuncContains` Execute the Contains() function.
`class` | `FuncCount` Execute the Count() function.
`class` | `FuncCurrent` Execute the current() function.
`class` | `FuncDoclocation` Execute the proprietary document-location() function, which returns a node set of documents.
`class` | `FuncExtElementAvailable` Execute the ExtElementAvailable() function.
`class` | `FuncExtFunction` An object of this class represents an extension call expression.
`class` | `FuncExtFunctionAvailable` Execute the ExtFunctionAvailable() function.
`class` | `FuncFalse` Execute the False() function.
`class` | `FuncFloor` Execute the Floor() function.
`class` | `FuncGenerateId` Execute the GenerateId() function.
`class` | `FuncId` Execute the Id() function.
`class` | `FuncLang` Execute the Lang() function.
`class` | `FuncLast` Execute the Last() function.
`class` | `FuncLocalPart` Execute the LocalPart() function.
`class` | `FuncNamespace` Execute the Namespace() function.
`class` | `FuncNormalizeSpace` Execute the normalize-space() function.
`class` | `FuncNot` Execute the Not() function.
`class` | `FuncNumber` Execute the Number() function.
`class` | `FuncPosition` Execute the Position() function.
`class` | `FuncQname` Execute the Qname() function.
`class` | `FuncRound` Execute the round() function.
`class` | `FuncStartsWith` Execute the StartsWith() function.
`class` | `FuncString` Execute the String() function.
`class` | `FuncStringLength` Execute the StringLength() function.
`class` | `FuncSubstring` Execute the Substring() function.
`class` | `FuncSubstringAfter` Execute the SubstringAfter() function.
`class` | `FuncSubstringBefore` Execute the SubstringBefore() function.
`class` | `FuncSum` Execute the Sum() function.
`class` | `FuncSystemProperty` Execute the SystemProperty() function.
`class` | `Function` This is a superclass of all XPath functions.
`class` | `Function2Args` Base class for functions that accept two arguments.
`class` | `Function3Args` Base class for functions that accept three arguments.
`class` | `FunctionDef1Arg` Base class for functions that accept one argument that can be defaulted if not specified.
`class` | `FunctionMultiArgs` Base class for functions that accept an undetermined number of multiple arguments.
`class` | `FunctionOneArg` Base class for functions that accept one argument.
`class` | `FuncTranslate` Execute the Translate() function.
`class` | `FuncTrue` Execute the True() function.
`class` | `FuncUnparsedEntityURI`

Methods in org.apache.xpath.functions that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | FuncExtFunction.`getArg(int n)` Return the nth argument passed to the extension function.
`Expression` | FunctionOneArg.`getArg0()` Return the first argument passed to the function (at index 0).
`Expression` | Function2Args.`getArg1()` Return the second argument passed to the function (at index 1).
`Expression` | Function3Args.`getArg2()` Return the third argument passed to the function (at index 2).
`Expression[]` | FunctionMultiArgs.`getArgs()` Return an expression array containing arguments at index 3 or greater.
`Expression` | FunctionOneArg.`getExpression()`

Methods in org.apache.xpath.functions with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`boolean` | FunctionOneArg.`deepEquals(Expression expr)`
`boolean` | FunctionMultiArgs.`deepEquals(Expression expr)`
`boolean` | Function3Args.`deepEquals(Expression expr)`
`boolean` | Function2Args.`deepEquals(Expression expr)`
`boolean` | Function.`deepEquals(Expression expr)`
`void` | FunctionOneArg.`setArg(Expression arg, int argNum)` Set an argument expression for a function.
`void` | FunctionMultiArgs.`setArg(Expression arg, int argNum)` Set an argument expression for a function.
`void` | Function3Args.`setArg(Expression arg, int argNum)` Set an argument expression for a function.
`void` | Function2Args.`setArg(Expression arg, int argNum)` Set an argument expression for a function.
`void` | Function.`setArg(Expression arg, int argNum)` Set an argument expression for a function.
`void` | FuncExtFunction.`setArg(Expression arg, int argNum)` Set an argument expression for a function.
`void` | FunctionOneArg.`setExpression(Expression exp)`

### Uses of Expression in org.apache.xpath.objects

Subclasses of Expression in org.apache.xpath.objects
Modifier and Type | Class and Description
--- | ---
`class` | `XBoolean` This class represents an XPath boolean object, and is capable of converting the boolean to other types, such as a string.
`class` | `XBooleanStatic` This class doesn't have any XPathContext, so override whatever to ensure it works OK.
`class` | `XNodeSet` This class represents an XPath nodeset object, and is capable of converting the nodeset to other types, such as a string.
`class` | `XNodeSetForDOM` This class overrides the XNodeSet#object() method to provide the original Node object, NodeList object, or NodeIterator.
`class` | `XNull` This class represents an XPath null object, and is capable of converting the null to other types, such as a string.
`class` | `XNumber` This class represents an XPath number, and is capable of converting the number to other types, such as a string.
`class` | `XObject` This class represents an XPath object, and is capable of converting the object to various types, such as a string.
`class` | `XRTreeFrag` This class represents an XPath result tree fragment object, and is capable of converting the RTF to other types, such as a string.
`class` | `XRTreeFragSelectWrapper` This class makes an select statement act like an result tree fragment.
`class` | `XString` This class represents an XPath string object, and is capable of converting the string to other types, such as a number.
`class` | `XStringForChars` This class will wrap a FastStringBuffer and allow for
`class` | `XStringForFSB` This class will wrap a FastStringBuffer and allow for

Methods in org.apache.xpath.objects with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`boolean` | XObject.`deepEquals(Expression expr)`

Constructors in org.apache.xpath.objects with parameters of type Expression
Constructor and Description
`XRTreeFrag(Expression expr)` Create an XRTreeFrag Object.
`XRTreeFragSelectWrapper(Expression expr)`

### Uses of Expression in org.apache.xpath.operations

Subclasses of Expression in org.apache.xpath.operations
Modifier and Type | Class and Description
--- | ---
`class` | `And` The 'and' operation expression executer.
`class` | `Bool` The 'boolean()' operation expression executer.
`class` | `Div` The 'div' operation expression executer.
`class` | `Equals` The '=' operation expression executer.
`class` | `Gt` The '>' operation expression executer.
`class` | `Gte` The '>=' operation expression executer.
`class` | `Lt` The '<' operation expression executer.
`class` | `Lte` The '<=' operation expression executer.
`class` | `Minus` The binary '-' operation expression executer.
`class` | `Mod` The 'mod' operation expression executer.
`class` | `Mult` The '*' operation expression executer.
`class` | `Neg` The unary '-' operation expression executer.
`class` | `NotEquals` The '!
`class` | `Number` The 'number()' operation expression executer.
`class` | `Operation` The baseclass for a binary operation.
`class` | `Or` The 'or' operation expression executer.
`class` | `Plus` The '+' operation expression executer.
`class` | `Quo` Deprecated.
`class` | `String` The 'string()' operation expression executer.
`class` | `UnaryOperation` The unary operation base class.
`class` | `Variable` The variable reference expression executer.
`class` | `VariableSafeAbsRef` This is a "smart" variable reference that is used in situations where an absolute path is optimized into a variable reference, but may be used in some situations where the document context may have changed.

Methods in org.apache.xpath.operations that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | UnaryOperation.`getExpression()`
`Expression` | Operation.`getExpression()`
`Expression` | Operation.`getLeftOperand()`
`Expression` | UnaryOperation.`getOperand()`
`Expression` | Operation.`getRightOperand()`

Methods in org.apache.xpath.operations with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`boolean` | Variable.`deepEquals(Expression expr)`
`boolean` | UnaryOperation.`deepEquals(Expression expr)`
`boolean` | Operation.`deepEquals(Expression expr)`
`void` | UnaryOperation.`setExpression(Expression exp)`
`void` | Operation.`setExpression(Expression exp)`
`void` | Operation.`setLeftRight(Expression l, Expression r)` Set the left and right operand expressions for this operation.
`void` | UnaryOperation.`setRight(Expression r)` Set the expression operand for the operation.

### Uses of Expression in org.apache.xpath.patterns

Subclasses of Expression in org.apache.xpath.patterns
Modifier and Type | Class and Description
--- | ---
`class` | `ContextMatchStepPattern` Special context node pattern matcher.
`class` | `FunctionPattern` Match pattern step that contains a function.
`class` | `NodeTest` This is the basic node test class for both match patterns and location path steps.
`class` | `StepPattern` This class represents a single pattern match step.
`class` | `UnionPattern` This class represents a union pattern, which can have multiple individual StepPattern patterns.

Methods in org.apache.xpath.patterns that return Expression
Modifier and Type | Method and Description
--- | ---
`Expression` | StepPattern.`getExpression()`
`Expression` | StepPattern.`getPredicate(int i)` Get a predicate expression.
`Expression[]` | StepPattern.`getPredicates()` Set the list of predicate expressions for this pattern step.

Methods in org.apache.xpath.patterns with parameters of type Expression
Modifier and Type | Method and Description
--- | ---
`boolean` | UnionPattern.`deepEquals(Expression expr)`
`boolean` | StepPattern.`deepEquals(Expression expr)`
`boolean` | NodeTest.`deepEquals(Expression expr)`
`void` | StepPattern.`setExpression(Expression exp)`
`void` | StepPattern.`setPredicates(Expression[] predicates)` Set the predicates for this match pattern step.

Constructors in org.apache.xpath.patterns with parameters of type Expression
Constructor and Description
`FunctionPattern(Expression expr, int axis, int predaxis)` Construct a FunctionPattern from a `expression`.