package org.infinispan.objectfilter.impl.syntax;
/**
* A pass-through, zero transformation {@link Visitor} implementation. Comes handy when you want to implement a {@link
* Visitor} but do not want to cover all the cases.
*
* @author anistor@redhat.com
* @since 7.0
*/
public class ExprVisitor implements Visitor<BooleanExpr, ValueExpr> {
@Override
public BooleanExpr visit(FullTextOccurExpr fullTextOccurExpr) {
return fullTextOccurExpr;
}
@Override
public BooleanExpr visit(FullTextBoostExpr fullTextBoostExpr) {
return fullTextBoostExpr;
}
@Override
public BooleanExpr visit(FullTextTermExpr fullTextTermExpr) {
return fullTextTermExpr;
}
@Override
public BooleanExpr visit(FullTextRegexpExpr fullTextRegexpExpr) {
return fullTextRegexpExpr;
}
@Override
public BooleanExpr visit(FullTextRangeExpr fullTextRangeExpr) {
return fullTextRangeExpr;
}
@Override
public BooleanExpr visit(NotExpr notExpr) {
return notExpr;
}
@Override
public BooleanExpr visit(OrExpr orExpr) {
return orExpr;
}
@Override
public BooleanExpr visit(AndExpr andExpr) {
return andExpr;
}
@Override
public BooleanExpr visit(ConstantBooleanExpr constantBooleanExpr) {
return constantBooleanExpr;
}
@Override
public BooleanExpr visit(IsNullExpr isNullExpr) {
return isNullExpr;
}
@Override
public BooleanExpr visit(ComparisonExpr comparisonExpr) {
return comparisonExpr;
}
@Override
public BooleanExpr visit(BetweenExpr betweenExpr) {
return betweenExpr;
}
@Override
public BooleanExpr visit(LikeExpr likeExpr) {
return likeExpr;
}
@Override
public ValueExpr visit(ConstantValueExpr constantValueExpr) {
return constantValueExpr;
}
@Override
public ValueExpr visit(PropertyValueExpr propertyValueExpr) {
return propertyValueExpr;
}
@Override
public ValueExpr visit(AggregationExpr aggregationExpr) {
return aggregationExpr;
}
}