diff --git ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExpressionDescriptor.java ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExpressionDescriptor.java index 8750a9a..59758d1 100644 --- ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExpressionDescriptor.java +++ ql/src/java/org/apache/hadoop/hive/ql/exec/vector/VectorExpressionDescriptor.java @@ -21,10 +21,14 @@ import org.apache.hadoop.hive.ql.exec.vector.expressions.VectorExpression; import org.apache.hadoop.hive.ql.metadata.HiveException; -import java.util.Arrays; - +/** + * Describes a vector expression and encapsulates the {@link Mode}, number of arguments, + * argument types {@link ArgumentType} and expression types {@link InputExpressionType}. + */ public class VectorExpressionDescriptor { + final static int MAX_NUM_ARGUMENTS = 3; + public enum ArgumentType { NONE(0), LONG(1), @@ -79,39 +83,20 @@ public int getValue() { } /** - * Each vector expression has a bitmap that determines the kind or a classification for - * the expression. Following parameters are used to identify the kind of an expression. - *
    - *
  1. The expression produces an output column (projection) or does in-place filtering - * (filter).
  2. - *
  3. Number if arguments the expression takes (unary, binary etc). For now we assume maximum 3 - * arguments.
  4. - *
  5. Types of each argument (long/double/string)
  6. - *
  7. The input to the expression is a column or a scalar.
  8. - *
- * The bitmap consists of 18 bits: - *