# Uses of Class
org.apache.commons.jxpath.ri.compiler.Expression

Packages that use Expression
Package
Description
org.apache.commons.jxpath.ri
Reference implementation of JXPath.
org.apache.commons.jxpath.ri.axes
Implementations of EvalContext used for different XPath axes (child::, parent:: etc).
org.apache.commons.jxpath.ri.compiler
XPath parse tree.

- ## Uses of Expression in org.apache.commons.jxpath.ri

  Methods in org.apache.commons.jxpath.ri that return Expression
  Modifier and Type
  Method
  Description
  `protected Expression`
  JXPathCompiledExpression.`getExpression()`
  Gets the compiled expression.
  Methods in org.apache.commons.jxpath.ri with parameters of type Expression
  Modifier and Type
  Method
  Description
  `Pointer`
  JXPathContextReferenceImpl.`createPath(String xpath, Expression expr)`
  Create the given path.
  `Pointer`
  JXPathContextReferenceImpl.`createPathAndSetValue(String xpath, Expression expr, Object value)`
  Create the given path setting its value to value.
  `Pointer`
  JXPathContextReferenceImpl.`getPointer(String xpath, Expression expr)`
  Gets a pointer to the specified path/expression.
  `Object`
  JXPathContextReferenceImpl.`getValue(String xpath, Expression expr)`
  Gets the value indicated.
  `Object`
  JXPathContextReferenceImpl.`getValue(String xpath, Expression expr, Class requiredType)`
  Gets the value indicated.
  `Iterator`
  JXPathContextReferenceImpl.`iterate(String xpath, Expression expr)`
  Traverses the XPath and returns a Iterator of all results found for the path.
  `Iterator<Pointer>`
  JXPathContextReferenceImpl.`iteratePointers(String xpath, Expression expr)`
  Traverses the XPath and returns an Iterator of Pointers.
  `void`
  JXPathContextReferenceImpl.`removeAll(String xpath, Expression expr)`
  Remove all matching nodes.
  `void`
  JXPathContextReferenceImpl.`removePath(String xpath, Expression expr)`
  Remove the specified path.
  `void`
  JXPathContextReferenceImpl.`setValue(String xpath, Expression expr, Object value)`
  Sets the value of XPath to value.
  Constructors in org.apache.commons.jxpath.ri with parameters of type Expression
  Modifier
  Constructor
  Description
  ``
  `JXPathCompiledExpression(String xpath, Expression expression)`
  Constructs a new JXPathCompiledExpression.

- ## Uses of Expression in org.apache.commons.jxpath.ri.axes

  Methods in org.apache.commons.jxpath.ri.axes with parameters of type Expression
  Modifier and Type
  Method
  Description
  `static NodePointer`
  SimplePathInterpreter.`interpretSimpleExpressionPath(EvalContext context, NodePointer root, Expression[] predicates, Step[] steps)`
  Interpret the steps of a simple expression path that starts with the given root, which is the result of evaluation of the root expression of the expression path, applies the given predicates to it and then follows the given steps.
  Constructors in org.apache.commons.jxpath.ri.axes with parameters of type Expression
  Modifier
  Constructor
  Description
  ``
  `PredicateContext(EvalContext parentContext, Expression expression)`
  Constructs a new PredicateContext.

- ## Uses of Expression in org.apache.commons.jxpath.ri.compiler

  Subclasses of Expression in org.apache.commons.jxpath.ri.compiler
  Modifier and Type
  Class
  Description
  `class`
  `Constant`
  A compile tree element containing a constant number or string.
  `class`
  `CoreFunction`
  An element of the compile tree representing one of built-in functions like "position()" or "number()".
  `class`
  `CoreOperation`
  The common subclass for tree elements representing core operations like "+", "- ", "*" etc.
  `class`
  `CoreOperationAdd`
  Implementation of `Expression` for the operation "+".
  `class`
  `CoreOperationAnd`
  Implementation of `Expression` for the operation "and".
  `class`
  `CoreOperationCompare`
  Common superclass for the implementations of Expression for the operations "=" and "!
  `class`
  `CoreOperationDivide`
  Implementation of `Expression` for the operation "div".
  `class`
  `CoreOperationEqual`
  Implementation of `Expression` for the operation "=".
  `class`
  `CoreOperationGreaterThan`
  Implementation of `Expression` for the operation ">".
  `class`
  `CoreOperationGreaterThanOrEqual`
  Implementation of `Expression` for the operation ">=".
  `class`
  `CoreOperationLessThan`
  Implementation of `Expression` for the operation "<".
  `class`
  `CoreOperationLessThanOrEqual`
  Implementation of `Expression` for the operation "<=".
  `class`
  `CoreOperationMod`
  Implementation of `Expression` for the operation "mod".
  `class`
  `CoreOperationMultiply`
  Implementation of `Expression` for the operation "*".
  `class`
  `CoreOperationNegate`
  Implementation of `Expression` for the operation unary "-".
  `class`
  `CoreOperationNotEqual`
  Implementation of `Expression` for the operation "!
  `class`
  `CoreOperationOr`
  Implementation of `Expression` for the operation "or".
  `class`
  `CoreOperationRelationalExpression`
  Base implementation of Expression for the operations ">", ">=", "<", "<=".
  `class`
  `CoreOperationSubtract`
  Implementation of `Expression` for the operation "-".
  `class`
  `CoreOperationUnion`
  Implementation of `Expression` for the operation "|".
  `class`
  `ExpressionPath`
  An element of the parse tree that represents an expression path, which is a path that starts with an expression like a function call: `getFoo(.) /bar`.
  `class`
  `ExtensionFunction`
  Represents an element of the parse tree representing an extension function call.
  `class`
  `LocationPath`
  A location path expression.
  `class`
  `NameAttributeTest`
  Captures the `foo[@name=<em>expr</em>]` expression.
  `class`
  `Operation`
  Abstract operation expressions.
  `class`
  `Path`
  Abstracts path expressions.
  `class`
  `VariableReference`
  An element of the compile tree holding a variable reference.
  Fields in org.apache.commons.jxpath.ri.compiler declared as Expression
  Modifier and Type
  Field
  Description
  `protected Expression[]`
  Operation.`args`
  Expression[] of arguments
  Methods in org.apache.commons.jxpath.ri.compiler that return Expression
  Modifier and Type
  Method
  Description
  `Expression`
  CoreFunction.`getArg1()`
  Convenience method to return the first argument.
  `Expression`
  CoreFunction.`getArg2()`
  Convenience method to return the second argument.
  `Expression`
  CoreFunction.`getArg3()`
  Convenience method to return the third argument.
  `Expression[]`
  Operation.`getArguments()`
  Gets the arguments.
  `Expression`
  ExpressionPath.`getExpression()`
  Gets the expression.
  `Expression`
  NameAttributeTest.`getNameTestExpression()`
  Gets the name test expression.
  `Expression[]`
  ExpressionPath.`getPredicates()`
  Predicates are the expressions in brackets that may follow the root expression of the path.
  `Expression[]`
  Step.`getPredicates()`
  Gets the predicates.
  Methods in org.apache.commons.jxpath.ri.compiler with parameters of type Expression
  Modifier and Type
  Method
  Description
  `protected boolean`
  Path.`areBasicPredicates(Expression[] predicates)`
  Tests whether the elements of the specified array are "basic" predicates.
  `protected boolean`
  CoreOperationCompare.`equal(EvalContext context, Expression left, Expression right)`
  Compares two values.
  Constructors in org.apache.commons.jxpath.ri.compiler with parameters of type Expression
  Modifier
  Constructor
  Description
  ``
  `CoreFunction(int functionCode, Expression[] args)`
  Constructs a new CoreFunction.
  ``
  `CoreOperation(Expression[] args)`
  Constructs a new CoreOperation.
  ``
  `CoreOperationAdd(Expression[] args)`
  Constructs a new CoreOperationAdd.
  ``
  `CoreOperationAnd(Expression[] args)`
  Constructs a new CoreOperationAnd.
  ``
  `CoreOperationCompare(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationCompare.
  `protected`
  `CoreOperationCompare(Expression arg1, Expression arg2, boolean invert)`
  Constructs a new CoreOperationCompare.
  ``
  `CoreOperationDivide(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationDivide.
  ``
  `CoreOperationEqual(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationEqual
  ``
  `CoreOperationGreaterThan(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationGreaterThan.
  ``
  `CoreOperationGreaterThanOrEqual(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationGreaterThanOrEqual.
  ``
  `CoreOperationLessThan(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationLessThan.
  ``
  `CoreOperationLessThanOrEqual(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationLessThanOrEqual.
  ``
  `CoreOperationMod(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationMod.
  ``
  `CoreOperationMultiply(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationMultiply.
  ``
  `CoreOperationNegate(Expression arg)`
  Constructs a new CoreOperationNegate.
  ``
  `CoreOperationNotEqual(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationNotEqual.
  ``
  `CoreOperationOr(Expression[] args)`
  Constructs a new CoreOperationOr.
  `protected`
  `CoreOperationRelationalExpression(Expression[] args)`
  Constructs a new CoreOperationRelationalExpression.
  ``
  `CoreOperationSubtract(Expression arg1, Expression arg2)`
  Constructs a new CoreOperationSubtract.
  ``
  `CoreOperationUnion(Expression[] args)`
  Constructs a new CoreOperationUnion.
  ``
  `ExpressionPath(Expression expression, Expression[] predicates, Step[] steps)`
  Constructs a new ExpressionPath.
  ``
  `ExtensionFunction(QName functionName, Expression[] args)`
  Constructs a new ExtensionFunction.
  ``
  `NameAttributeTest(Expression namePath, Expression nameValue)`
  Constructs a new NameAttributeTest.
  ``
  `Operation(Expression[] args)`
  Constructs a new Operation.
  `protected`
  `Step(int axis, NodeTest nodeTest, Expression[] predicates)`
  Constructs a new Step.