This project has retired. For details please refer to its
Attic page.
PredicateWalker xref
1/*2 * Licensed to the Apache Software Foundation (ASF) under one3 * or more contributor license agreements. See the NOTICE file4 * distributed with this work for additional information5 * regarding copyright ownership. The ASF licenses this file6 * to you under the Apache License, Version 2.0 (the7 * "License"); you may not use this file except in compliance8 * with the License. You may obtain a copy of the License at9 *10 * http://www.apache.org/licenses/LICENSE-2.011 *12 * Unless required by applicable law or agreed to in writing,13 * software distributed under the License is distributed on an14 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY15 * KIND, either express or implied. See the License for the16 * specific language governing permissions and limitations17 * under the License.18 *19 * Contributors:20 * Florent Guillaume, Nuxeo21 */22package org.apache.chemistry.opencmis.server.support.query;
2324import org.antlr.runtime.tree.Tree;
2526/**27 * Interface for a tree walker of a WHERE clause.28 * <p>29 * Can be used to build another datastructure, or for direct value evaluation30 * (thus the boolean return values for clauses, and Object for values).31 * <p>32 * The method {@link walkClause} is the entry point.33 */34publicinterfacePredicateWalkerextendsPredicateWalkerBase {
3536 Boolean walkNot(Tree opNode, Tree leftNode);
3738 Boolean walkAnd(Tree opNode, Tree leftNode, Tree rightNode);
3940 Boolean walkOr(Tree opNode, Tree leftNode, Tree rightNode);
4142 Object walkExpr(Tree node);
4344 Boolean walkEquals(Tree eqNode, Tree leftNode, Tree rightNode);
4546 Boolean walkNotEquals(Tree neNode, Tree leftNode, Tree rightNode);
4748 Boolean walkGreaterThan(Tree gtNode, Tree leftNode, Tree rightNode);
4950 Boolean walkGreaterOrEquals(Tree geNode, Tree leftNode, Tree rightNode);
5152 Boolean walkLessThan(Tree ltNode, Tree leftNode, Tree rightNode);
5354 Boolean walkLessOrEquals(Tree leqNode, Tree leftNode, Tree rightNode);
5556 Boolean walkIn(Tree node, Tree colNode, Tree listNode);
5758 Boolean walkNotIn(Tree node, Tree colNode, Tree listNode);
5960 Boolean walkInAny(Tree node, Tree colNode, Tree listNode);
6162 Boolean walkNotInAny(Tree node, Tree colNode, Tree listNode);
6364 Boolean walkEqAny(Tree node, Tree literalNode, Tree colNode);
6566 Boolean walkIsNull(Tree nullNode, Tree colNode);
6768 Boolean walkIsNotNull(Tree notNullNode, Tree colNode);
6970 Boolean walkLike(Tree node, Tree colNode, Tree stringNode);
7172 Boolean walkNotLike(Tree node, Tree colNode, Tree stringNode);
7374 Boolean walkContains(Tree node, Tree qualNode, Tree paramNode);
7576 Boolean walkInFolder(Tree node, Tree qualNode, Tree paramNode);
7778 Boolean walkInTree(Tree node, Tree qualNode, Tree paramNode);
7980 Object walkList(Tree node);
8182 Object walkBoolean(Tree node);
8384 Object walkNumber(Tree node);
8586 Object walkString(Tree node);
8788 Object walkTimestamp(Tree node);
8990 Object walkCol(Tree node);
9192 Object walkId(Tree node);
9394 }