@Override
  public String toString() {
    StringBuilder b = new StringBuilder();
    if (this instanceof IdentityExpression) {
      b.append(vectorExpressionParameters());
    } else {
      b.append(this.getClass().getSimpleName());
      String vectorExpressionParameters = vectorExpressionParameters();
      if (vectorExpressionParameters != null) {
        b.append("(");
        b.append(vectorExpressionParameters);
        b.append(")");
      }
      if (childExpressions != null) {
        b.append("(children: ");
        for (int i = 0; i < childExpressions.length; i++) {
          b.append(childExpressions[i].toString());
          if (i < childExpressions.length-1) {
            b.append(", ");
          }
        }
        b.append(")");
      }

      if (outputColumnNum != -1) {
        b.append(" -> ");
        b.append(outputColumnNum);
        b.append(":");
        b.append(getTypeName(outputTypeInfo, outputDataTypePhysicalVariation));
      }
     }

    return b.toString();
  }
A vector expression which implements a checked execution to account for overflow handling
should override this method and return true. In such a case Vectorizer will use Checked
variation of the vector expression to process data
@return true if vector expression implements a Checked variation of vector expression
ql/src/java/org/apache/hadoop/hive/ql/exec/vector/expressions/VectorExpression.java