| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1458610 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
| |
- Implemented parser for IN operator
- Implement In operator evaluator and unit tests
- Syntax is a bit wider than the spec allowing full expressions
in the contents of the IN expression not just strings.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457998 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Rearranged Syntax and parser to support arithmetic
- Implemented arithmetic syntax
- Implemented arithmetic operators
- Added some tests for arithmetic operations
- Added explicit lexical tokens for all the comparison and arithmetic operations
- Added the missing ',' token for us in the 'IN' comparison
- Rearranged the lexer so that everything is not uniformly inside the
hand crafted state machine.
- Moved a bunch of testing code from the tokeniser to the unit test
(much of this code might actually not be very useful anymore)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457912 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457062 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457058 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
| |
- The implementation uses a custom between operator rather than
desugaring the syntax, because we can avoid repeated evaluation
of the expression bing compared that way (this will also be true
for the IN comparison operator).
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1457029 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
| |
- This implements <expression> [NOT] LIKE <string> [ESCAPE <character>]
- The implementation uses the posix regex library (in BRE mode) on
Unix systems
- It uses std::tr1::regex on Visual Studio (in std::tr1::regex::basic mode)
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1456561 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
| |
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1453898 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
| |
- Changed unit test code that relied on non C++03 feature
Windows compiler spotted this problem.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1453536 13f79535-47bb-0310-9956-ffa450edef68
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
- Added numeric and boolean values
* To literals and identifier values
* To the code that extracts values from message properties
- Added the full set of comparison operators
- Implemented full "unknown" semantics for all
operators.
- Implemented extended "is null" and "is not null" operators
that allow expressions as well as just identifiers.
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452525 13f79535-47bb-0310-9956-ffa450edef68
|
|
|
- Initial Selectors implemented:
* Only string values supported (no numerics or bools)
- Parses and executes the forms:
* A=B
* A<>B
* I IS NULL
* I IS NOT NULL
- where A, B are strings or identifiers
- I is an identifier
* Conditional expressions can include the AND, OR and NOT
operators and use parentheses.
- Only limited special identifiers return useful values (although
they are all recognised)
- Unit tests for selector language
git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk/qpid@1452523 13f79535-47bb-0310-9956-ffa450edef68
|