GitHub user afs opened a pull request: https://github.com/apache/jena/pull/145
JENA-1171: Rework the algebra/expression walking into one framework. This PR reworks the algebra walker to cover both algebra (op) and expressions in one algorithm. The algebra Transformer is redone. This will make handling forms like EXISTS, which switch between expressions and algebra operations, easier to handle. You can merge this pull request into a Git repository by running: $ git pull https://github.com/afs/jena walker Alternatively you can review and apply these changes as the patch at: https://github.com/apache/jena/pull/145.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #145 ---- commit eddb8ce58e74bd029234b0e9820deb6800114811 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T09:42:12Z Put in "fail early" check. commit 95b662d3ea28d16ee37d9109275eccbe6bb84526 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T09:45:11Z Rename ElementWalker.Walker commit 836b23b02f663fb67558aef9b6940a0ac2a6ca7d Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T15:34:29Z Towards new walker/transformation code commit ec045e07841e2cc976d8b94317b62555edd0109e Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T23:19:17Z Expr.toString - output in algebra form. commit fc4bc0d7657d015bfd608884c999bae1cbb34470 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T23:19:39Z Add comment. commit a49e0f8275469a5a40ab6a9f034c717372d5fbfd Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T23:20:26Z visitExpr -> visitVarExpr commit fb1759f90d1f00cec4e43605295d5c67ffc1ba38 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-22T23:21:14Z Intermediate towards new walker/transformer. commit 5f5a325c7cd3c1ff85d201d2592c3af6d1561415 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-23T21:04:41Z Different cases of VarExprList.forEachX for Var, VarExpr and Expr commit 16b953a9d2904285899aaf1967762923b12194b2 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-23T21:05:13Z Handle VarExprList and inner EXISTS commit 83c971f2ec0beda107e6b4e9edc102811f20160d Author: Andy Seaborne <a...@apache.org> Date: 2016-04-24T20:15:54Z Tidying up. commit 766ce9eee60e8c87d5d526b55c5148fcfd03137d Author: Andy Seaborne <a...@apache.org> Date: 2016-04-24T21:39:33Z Switch ExprTransformaer to use new Walker transformations. commit 88cbc325e044cac61b3eba8c725d191dcf2ff9a2 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T10:55:52Z Conversion to quads does not alter (service) commit 9c1eafdbd76fecedb2f37473d7742ed164fd5ead Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T12:30:46Z The new walker uncovers the true scoping. Fix tests. commit fc3faa571a7d9e087290d968207c63046ec8ef50 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T12:32:01Z Skip service. Replace ExprWalker. Use new walker for ExprTransformer. commit 27db589e551e4a9351f14379a490bb297b6f1d97 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T17:38:01Z Correct tests in the light of deep walking abnd transformation. commit 51005e698d5659f36d1d99b9cc17662b45213b35 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T17:39:05Z Remove old comment. commit d10f23bbb776a4c648f8f78f645c9e2dd9cd4909 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T17:41:43Z Tidy commit f8b554b7412c23beac7933af300aab247ac6c6fc Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T18:22:42Z Deal with marked "todo" items commit 2af389963670e9befb57a47c26288f6da631b542 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T18:45:28Z Proper Expr.NONE commit d4da92dc4c733a997d5a730a445cd214925fbe53 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T20:48:06Z Introduce Expr.NONE to replace NodeValue.nvNothing. commit b22c7a3029266ba9b53553a323ecf5e9fe5d7740 Author: Andy Seaborne <a...@apache.org> Date: 2016-04-25T21:01:27Z Clear up "todo" items ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---