EJBQLConditionTranslator (cayenne-doc: Cayenne Documentation 5.0-M2 API)
Description: declaration: package: org.apache.cayenne.access.translator.ejbql, class: EJBQLConditionTranslator

# Class EJBQLConditionTranslator

java.lang.Object
org.apache.cayenne.ejbql.EJBQLBaseVisitor
org.apache.cayenne.access.translator.ejbql.EJBQLConditionTranslator

All Implemented Interfaces:
  `EJBQLExpressionVisitor`

Direct Known Subclasses:
  `DB2EJBQLConditionTranslator, DerbyEJBQLConditionTranslator, FirebirdEJBQLConditionTranslator, H2EJBQLConditionTranslator, HSQLEJBQLConditionTranslator`

public class EJBQLConditionTranslator extends EJBQLBaseVisitor

Since:
  3.0

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected EJBQLTranslationContext`
  `context`
  `protected List<EJBQLMultiColumnOperand>`
  `multiColumnOperands`

  ### Fields inherited from class EJBQLBaseVisitor

  `continueFlag`
  Modifier and Type
  Field
  Description
  `protected boolean`
  `continueFlag`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `EJBQLConditionTranslator(EJBQLTranslationContext context)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected void`
  `addMultiColumnOperand(EJBQLMultiColumnOperand operand)`
  `protected void`
  `afterChild(EJBQLExpression e, String text, int childIndex)`
  `protected boolean`
  `checkNullParameter(EJBQLExpression expression, String toAppend)`
  Checks expression for containing null input parameter.
  `boolean`
  `visitAbs(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitAdd(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "add" expression and also after visiting every expression child.
  `boolean`
  `visitAggregate(EJBQLExpression expression)`
  `boolean`
  `visitAll(EJBQLExpression expression)`
  `boolean`
  `visitAnd(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "and" expression and also after visiting every expression child.
  `boolean`
  `visitAny(EJBQLExpression expression)`
  `boolean`
  `visitBetween(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "between" expression and also after visiting every expression child.
  `boolean`
  `visitBooleanLiteral(EJBQLExpression expression)`
  `boolean`
  `visitConcat(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitCurrentDate(EJBQLExpression expression)`
  `boolean`
  `visitCurrentTime(EJBQLExpression expression)`
  `boolean`
  `visitCurrentTimestamp(EJBQLExpression expression)`
  `boolean`
  `visitDbPath(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitDecimalLiteral(EJBQLDecimalLiteral expression)`
  `boolean`
  `visitDivide(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "divide" expression and also after visiting every expression child.
  `boolean`
  `visitEquals(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "equals" expression and also after visiting every expression child.
  `boolean`
  `visitEscapeCharacter(EJBQLExpression expression)`
  `boolean`
  `visitExists(EJBQLExpression expression)`
  `boolean`
  `visitGreaterOrEqual(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting ">=" expression and also after visiting every expression child.
  `boolean`
  `visitGreaterThan(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting ">=" expression and also after visiting every expression child.
  `boolean`
  `visitIdentificationVariable(EJBQLExpression expression)`
  `boolean`
  `visitIn(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitIntegerLiteral(EJBQLIntegerLiteral expression)`
  `boolean`
  `visitIsEmpty(EJBQLExpression expression)`
  `boolean`
  `visitIsNull(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitLength(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitLessOrEqual(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "<=" expression and also after visiting every expression child.
  `boolean`
  `visitLessThan(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "<" expression and also after visiting every expression child.
  `boolean`
  `visitLike(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "LIKE" expression and also after visiting every expression child.
  `boolean`
  `visitLocate(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitLower(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitMemberOf(EJBQLExpression expression)`
  `boolean`
  `visitMod(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitMultiply(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "*" expression and also after visiting every expression child.
  `boolean`
  `visitNamedInputParameter(EJBQLExpression expression)`
  `boolean`
  `visitNamedInputParameterForIn(EJBQLExpression expression)`
  This method is invoked from the processing of the `EJBQLIn` in order to handle a query such as;
  `boolean`
  `visitNot(EJBQLExpression expression)`
  `boolean`
  `visitNotEquals(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "!
  `boolean`
  `visitOr(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "or" expression and also after visiting every expression child.
  `boolean`
  `visitPath(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "path" expression and also after visiting every expression child.
  `boolean`
  `visitPositionalInputParameter(EJBQLPositionalInputParameter expression)`
  `boolean`
  `visitPositionalInputParameterForIn(EJBQLPositionalInputParameter expression)`
  This method is invoked from the processing of the `EJBQLIn` in order to handle a query such as;
  `boolean`
  `visitSize(EJBQLExpression expression)`
  `boolean`
  `visitSqrt(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitStringLiteral(EJBQLExpression expression)`
  `boolean`
  `visitSubselect(EJBQLExpression expression)`
  `boolean`
  `visitSubstring(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitSubtract(EJBQLExpression expression, int finishedChildIndex)`
  Called on visiting "subtract" expression and also after visiting every expression child.
  `boolean`
  `visitTrim(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitTrimBoth(EJBQLExpression expression)`
  `boolean`
  `visitTrimCharacter(EJBQLExpression expression)`
  `boolean`
  `visitTrimLeading(EJBQLExpression expression)`
  `boolean`
  `visitTrimTrailing(EJBQLExpression expression)`
  `boolean`
  `visitUpper(EJBQLExpression expression, int finishedChildIndex)`

  ### Methods inherited from class EJBQLBaseVisitor

  `visitAbstractSchemaName, visitAscending, visitAverage, visitClassName, visitConstructor, visitConstructorParameter, visitConstructorParameters, visitCount, visitDelete, visitDescending, visitDistinct, visitFrom, visitFromItem, visitGroupBy, visitHaving, visitIdentifier, visitInnerFetchJoin, visitInnerJoin, visitMax, visitMin, visitNegative, visitOrderBy, visitOrderByItem, visitOuterFetchJoin, visitOuterJoin, visitPatternValue, visitSelect, visitSelectClause, visitSelectExpression, visitSelectExpressions, visitSum, visitTok, visitUpdate, visitUpdateField, visitUpdateItem, visitUpdateValue, visitWhere`
  Modifier and Type
  Method
  Description
  `boolean`
  `visitAbstractSchemaName(EJBQLExpression expression)`
  `boolean`
  `visitAscending(EJBQLExpression expression)`
  `boolean`
  `visitAverage(EJBQLAggregateColumn expression)`
  `boolean`
  `visitClassName(EJBQLExpression expression)`
  `boolean`
  `visitConstructor(EJBQLExpression expression)`
  `boolean`
  `visitConstructorParameter(EJBQLExpression expression)`
  `boolean`
  `visitConstructorParameters(EJBQLExpression expression)`
  `boolean`
  `visitCount(EJBQLAggregateColumn expression)`
  `boolean`
  `visitDelete(EJBQLExpression expression)`
  `boolean`
  `visitDescending(EJBQLExpression expression)`
  `boolean`
  `visitDistinct(EJBQLExpression expression)`
  `boolean`
  `visitFrom(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitFromItem(EJBQLFromItem expression, int finishedChildIndex)`
  `boolean`
  `visitGroupBy(EJBQLExpression expression)`
  `boolean`
  `visitHaving(EJBQLExpression expression)`
  `boolean`
  `visitIdentifier(EJBQLExpression expression)`
  `boolean`
  `visitInnerFetchJoin(EJBQLJoin join)`
  `boolean`
  `visitInnerJoin(EJBQLJoin join)`
  `boolean`
  `visitMax(EJBQLAggregateColumn expression)`
  `boolean`
  `visitMin(EJBQLAggregateColumn expression)`
  `boolean`
  `visitNegative(EJBQLExpression expression)`
  `boolean`
  `visitOrderBy(EJBQLExpression expression)`
  `boolean`
  `visitOrderByItem(EJBQLExpression expression)`
  `boolean`
  `visitOuterFetchJoin(EJBQLJoin join)`
  `boolean`
  `visitOuterJoin(EJBQLJoin join)`
  `boolean`
  `visitPatternValue(EJBQLExpression expression)`
  `boolean`
  `visitSelect(EJBQLExpression expression)`
  `boolean`
  `visitSelectClause(EJBQLExpression expression)`
  `boolean`
  `visitSelectExpression(EJBQLExpression expression)`
  `boolean`
  `visitSelectExpressions(EJBQLExpression expression)`
  `boolean`
  `visitSum(EJBQLAggregateColumn expression)`
  `boolean`
  `visitTok(EJBQLExpression expression)`
  `boolean`
  `visitUpdate(EJBQLExpression expression)`
  `boolean`
  `visitUpdateField(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitUpdateItem(EJBQLExpression expression, int finishedChildIndex)`
  `boolean`
  `visitUpdateValue(EJBQLExpression expression)`
  `boolean`
  `visitWhere(EJBQLExpression expression)`

  ### Methods inherited from class Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Field Details

  - ### context

    protected EJBQLTranslationContext context

  - ### multiColumnOperands

    protected List<EJBQLMultiColumnOperand> multiColumnOperands

- ## Constructor Details

  - ### EJBQLConditionTranslator

    public EJBQLConditionTranslator(EJBQLTranslationContext context)

- ## Method Details

  - ### addMultiColumnOperand

    protected void addMultiColumnOperand(EJBQLMultiColumnOperand operand)

  - ### visitAggregate

    public boolean visitAggregate(EJBQLExpression expression)
    Specified by:
      `visitAggregate` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitAggregate` in class `EJBQLBaseVisitor`

  - ### visitAnd

    public boolean visitAnd(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "and" expression and also after visiting every expression child.
    Specified by:
      `visitAnd` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitAnd` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "and" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitBetween

    public boolean visitBetween(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "between" expression and also after visiting every expression child.
    Specified by:
      `visitBetween` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitBetween` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "between" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitExists

    public boolean visitExists(EJBQLExpression expression)
    Specified by:
      `visitExists` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitExists` in class `EJBQLBaseVisitor`

  - ### visitIsEmpty

    public boolean visitIsEmpty(EJBQLExpression expression)
    Specified by:
      `visitIsEmpty` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitIsEmpty` in class `EJBQLBaseVisitor`

  - ### visitSize

    public boolean visitSize(EJBQLExpression expression)
    Specified by:
      `visitSize` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitSize` in class `EJBQLBaseVisitor`

  - ### visitMemberOf

    public boolean visitMemberOf(EJBQLExpression expression)
    Specified by:
      `visitMemberOf` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitMemberOf` in class `EJBQLBaseVisitor`

  - ### visitAll

    public boolean visitAll(EJBQLExpression expression)
    Specified by:
      `visitAll` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitAll` in class `EJBQLBaseVisitor`

  - ### visitAny

    public boolean visitAny(EJBQLExpression expression)
    Specified by:
      `visitAny` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitAny` in class `EJBQLBaseVisitor`

  - ### visitOr

    public boolean visitOr(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "or" expression and also after visiting every expression child.
    Specified by:
      `visitOr` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitOr` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "or" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### checkNullParameter

    protected boolean checkNullParameter(EJBQLExpression expression, String toAppend)
    Checks expression for containing null input parameter. For that, we'll append IS NULL or IS NOT NULL instead of =null or <>null
    Returns:
      whether replacement was done and there's no need for normal expression processing

  - ### visitEquals

    public boolean visitEquals(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "equals" expression and also after visiting every expression child.
    Specified by:
      `visitEquals` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitEquals` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "equals" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitNamedInputParameterForIn

    public boolean visitNamedInputParameterForIn(EJBQLExpression expression)
    Description copied from interface: `EJBQLExpressionVisitor`

    This method is invoked from the processing of the `EJBQLIn` in order to handle a query such as;

    `p.toArtist IN (:artists)`
    Specified by:
      `visitNamedInputParameterForIn` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitNamedInputParameterForIn` in class `EJBQLBaseVisitor`

  - ### visitNamedInputParameter

    public boolean visitNamedInputParameter(EJBQLExpression expression)
    Specified by:
      `visitNamedInputParameter` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitNamedInputParameter` in class `EJBQLBaseVisitor`

  - ### visitNot

    public boolean visitNot(EJBQLExpression expression)
    Specified by:
      `visitNot` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitNot` in class `EJBQLBaseVisitor`

  - ### visitNotEquals

    public boolean visitNotEquals(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "!=" expression and also after visiting every expression child.
    Specified by:
      `visitNotEquals` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitNotEquals` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "!=" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitGreaterThan

    public boolean visitGreaterThan(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting ">=" expression and also after visiting every expression child.
    Specified by:
      `visitGreaterThan` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitGreaterThan` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an ">=" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitGreaterOrEqual

    public boolean visitGreaterOrEqual(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting ">=" expression and also after visiting every expression child.
    Specified by:
      `visitGreaterOrEqual` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitGreaterOrEqual` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an ">=" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitLessOrEqual

    public boolean visitLessOrEqual(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "<=" expression and also after visiting every expression child.
    Specified by:
      `visitLessOrEqual` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitLessOrEqual` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "<=" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitLessThan

    public boolean visitLessThan(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "<" expression and also after visiting every expression child.
    Specified by:
      `visitLessThan` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitLessThan` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "<" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitLike

    public boolean visitLike(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "LIKE" expression and also after visiting every expression child.
    Specified by:
      `visitLike` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitLike` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "LIKE" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitIn

    public boolean visitIn(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitIn` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitIn` in class `EJBQLBaseVisitor`

  - ### afterChild

    protected void afterChild(EJBQLExpression e, String text, int childIndex)

  - ### visitIdentificationVariable

    public boolean visitIdentificationVariable(EJBQLExpression expression)
    Specified by:
      `visitIdentificationVariable` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitIdentificationVariable` in class `EJBQLBaseVisitor`

  - ### visitDbPath

    public boolean visitDbPath(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitDbPath` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitDbPath` in class `EJBQLBaseVisitor`

  - ### visitPath

    public boolean visitPath(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "path" expression and also after visiting every expression child.
    Specified by:
      `visitPath` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitPath` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - a "path" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitIntegerLiteral

    public boolean visitIntegerLiteral(EJBQLIntegerLiteral expression)
    Specified by:
      `visitIntegerLiteral` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitIntegerLiteral` in class `EJBQLBaseVisitor`

  - ### visitDecimalLiteral

    public boolean visitDecimalLiteral(EJBQLDecimalLiteral expression)
    Specified by:
      `visitDecimalLiteral` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitDecimalLiteral` in class `EJBQLBaseVisitor`

  - ### visitEscapeCharacter

    public boolean visitEscapeCharacter(EJBQLExpression expression)
    Specified by:
      `visitEscapeCharacter` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitEscapeCharacter` in class `EJBQLBaseVisitor`

  - ### visitIsNull

    public boolean visitIsNull(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitIsNull` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitIsNull` in class `EJBQLBaseVisitor`

  - ### visitPositionalInputParameterForIn

    public boolean visitPositionalInputParameterForIn(EJBQLPositionalInputParameter expression)
    Description copied from interface: `EJBQLExpressionVisitor`

    This method is invoked from the processing of the `EJBQLIn` in order to handle a query such as;

    `p.toArtist IN (?1)`
    Specified by:
      `visitPositionalInputParameterForIn` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitPositionalInputParameterForIn` in class `EJBQLBaseVisitor`

  - ### visitPositionalInputParameter

    public boolean visitPositionalInputParameter(EJBQLPositionalInputParameter expression)
    Specified by:
      `visitPositionalInputParameter` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitPositionalInputParameter` in class `EJBQLBaseVisitor`

  - ### visitBooleanLiteral

    public boolean visitBooleanLiteral(EJBQLExpression expression)
    Specified by:
      `visitBooleanLiteral` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitBooleanLiteral` in class `EJBQLBaseVisitor`

  - ### visitStringLiteral

    public boolean visitStringLiteral(EJBQLExpression expression)
    Specified by:
      `visitStringLiteral` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitStringLiteral` in class `EJBQLBaseVisitor`

  - ### visitSubselect

    public boolean visitSubselect(EJBQLExpression expression)
    Specified by:
      `visitSubselect` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitSubselect` in class `EJBQLBaseVisitor`

  - ### visitAdd

    public boolean visitAdd(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "add" expression and also after visiting every expression child.
    Specified by:
      `visitAdd` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitAdd` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "add" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitSubtract

    public boolean visitSubtract(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "subtract" expression and also after visiting every expression child.
    Specified by:
      `visitSubtract` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitSubtract` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "subtract" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitMultiply

    public boolean visitMultiply(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "*" expression and also after visiting every expression child.
    Specified by:
      `visitMultiply` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitMultiply` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "*" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitDivide

    public boolean visitDivide(EJBQLExpression expression, int finishedChildIndex)
    Description copied from interface: `EJBQLExpressionVisitor`
    Called on visiting "divide" expression and also after visiting every expression child.
    Specified by:
      `visitDivide` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitDivide` in class `EJBQLBaseVisitor`
    Parameters:
      `expression` - an "divide" node being visited.
      `finishedChildIndex` - "-1" when the expression node is visited for the first time, before its children; otherwise this is an index of a child just visited.

  - ### visitCurrentDate

    public boolean visitCurrentDate(EJBQLExpression expression)
    Specified by:
      `visitCurrentDate` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitCurrentDate` in class `EJBQLBaseVisitor`

  - ### visitCurrentTime

    public boolean visitCurrentTime(EJBQLExpression expression)
    Specified by:
      `visitCurrentTime` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitCurrentTime` in class `EJBQLBaseVisitor`

  - ### visitCurrentTimestamp

    public boolean visitCurrentTimestamp(EJBQLExpression expression)
    Specified by:
      `visitCurrentTimestamp` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitCurrentTimestamp` in class `EJBQLBaseVisitor`

  - ### visitAbs

    public boolean visitAbs(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitAbs` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitAbs` in class `EJBQLBaseVisitor`

  - ### visitSqrt

    public boolean visitSqrt(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitSqrt` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitSqrt` in class `EJBQLBaseVisitor`

  - ### visitMod

    public boolean visitMod(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitMod` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitMod` in class `EJBQLBaseVisitor`

  - ### visitConcat

    public boolean visitConcat(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitConcat` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitConcat` in class `EJBQLBaseVisitor`

  - ### visitSubstring

    public boolean visitSubstring(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitSubstring` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitSubstring` in class `EJBQLBaseVisitor`

  - ### visitLower

    public boolean visitLower(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitLower` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitLower` in class `EJBQLBaseVisitor`

  - ### visitUpper

    public boolean visitUpper(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitUpper` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitUpper` in class `EJBQLBaseVisitor`

  - ### visitLength

    public boolean visitLength(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitLength` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitLength` in class `EJBQLBaseVisitor`

  - ### visitLocate

    public boolean visitLocate(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitLocate` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitLocate` in class `EJBQLBaseVisitor`

  - ### visitTrim

    public boolean visitTrim(EJBQLExpression expression, int finishedChildIndex)
    Specified by:
      `visitTrim` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitTrim` in class `EJBQLBaseVisitor`

  - ### visitTrimCharacter

    public boolean visitTrimCharacter(EJBQLExpression expression)
    Specified by:
      `visitTrimCharacter` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitTrimCharacter` in class `EJBQLBaseVisitor`

  - ### visitTrimLeading

    public boolean visitTrimLeading(EJBQLExpression expression)
    Specified by:
      `visitTrimLeading` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitTrimLeading` in class `EJBQLBaseVisitor`

  - ### visitTrimTrailing

    public boolean visitTrimTrailing(EJBQLExpression expression)
    Specified by:
      `visitTrimTrailing` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitTrimTrailing` in class `EJBQLBaseVisitor`

  - ### visitTrimBoth

    public boolean visitTrimBoth(EJBQLExpression expression)
    Specified by:
      `visitTrimBoth` in interface `EJBQLExpressionVisitor`
    Overrides:
      `visitTrimBoth` in class `EJBQLBaseVisitor`