# Package org.apache.olingo.odata2.api.uri.expression

Expression Parser This package contains all classes necessary to decribe an expression tree(e.g. a filter or order by tree) Trees can be traversed by implementing the `ExpressionVisitor` interface and calling the accept() method.

See: Description

- Interface Summary
  Interface | Description
  --- | ---
  BinaryExpression | Represents a binary expression node in the expression tree returned by the methods A binary expression node is inserted in the expression tree for any valid ODATA binary operator in `BinaryOperator` (e.g. for "and", "div", "eg", ... )
  CommonExpression | Parent class of all classes used to build the expression tree This interface defines the default methods for all expression tree nodes
  ExpressionVisitor | Interface `ExpressionVisitor` is used to traverse a $filter or $orderby expression tree.
  FilterExpression | Represents a $filter expression in the expression tree Used to define the root expression node in an $filter expression tree.
  LiteralExpression | Represents a literal expression node in the expression tree A literal expression node is inserted in the expression tree for any token witch is no valid operator, method or property.
  MemberExpression | Represents a member expression in the expression tree A member expression node is inserted in the expression tree for any member operator ("/") which is used to reference a property of an complex type or entity type.
  MethodExpression | Represents a method expression in the expression tree A method expression node is inserted in the expression tree for any valid OData method operator in `MethodOperator` (e.g. for "substringof", "concat", "year", ... )
  OrderByExpression | Represents a $orderby expression Used to define the root expression node in an $filter expression tree.
  OrderExpression | Represents a order expression in the expression tree A order expression node is inserted in the expression tree for any valid OData order.
  PropertyExpression | Represents a property expression in the expression tree A property expression node is inserted in the expression tree for any property.
  UnaryExpression | Represents a unary expression node in the expression tree A unary expression node is inserted in the expression tree for any valid ODATA unary operator in `UnaryOperator` (e.g. for "not or "-" )
  Visitable | The interface `Visitable` is part of the visitor pattern used to traverse the expression tree build from a $filter expression string or $orderby expression string.

- Enum Summary
  Enum | Description
  --- | ---
  BinaryOperator | Enumerations for supported binary operators of the ODATA expression parser for ODATA version 2.0 (with some restrictions)
  ExpressionKind | Enumeration describing all possible node types inside an expression tree
  MethodOperator | Enumerations for all supported methods of the ODATA expression parser for ODATA version 2.0 (with some restrictions).
  SortOrder | Enumeration describing all possible sort orders used in an $orderby expression
  UnaryOperator | Enumerations for supported unary operators of the OData expression parser for OData version 2.0

- Exception Summary
  Exception | Description
  --- | ---
  ExceptionVisitExpression | Exception thrown while traversing/visiting a filter expression tree
  ExpressionParserException | Exception thrown while parsing a filter or orderby expression

## Package org.apache.olingo.odata2.api.uri.expression Description

Expression Parser

This package contains all classes necessary to decribe an expression tree(e.g. a filter or order by tree)

Trees can be traversed by implementing the `ExpressionVisitor` interface and calling the accept() method.
Different types of expressions can be found in `ExpressionKind` .

Copyright © 2013-2023 The Apache Software Foundation. All Rights Reserved.