public class ExprUtils
extends java.lang.Object
Constructor and Description |
---|
ExprUtils() |
Modifier and Type | Method and Description |
---|---|
static ComparatorExpr |
bagComparator(int index,
ComparatorExpr expr)
Make a bag comparator expression.
|
static java.lang.String |
exprToString(ComparatorExpr expr)
Converting an expression to a string.
|
static ComparatorExpr |
negationComparator(ComparatorExpr expr)
Negate comparator
|
static ComparatorExpr |
primitiveComparator(int index,
int type)
Comparator for primitive types.
|
static ComparatorExpr |
tupleComparator(java.util.Collection<? extends ComparatorExpr> exprs)
Make a Tuple comparator expression.
|
static ComparatorExpr |
tupleComparator(ComparatorExpr... exprs)
Make a Tuple comparator expression.
|
public static ComparatorExpr bagComparator(int index, ComparatorExpr expr)
index
- the index of datum in the source tuple that is a DataBag
object.expr
- a comparator expression that corresponds to the member tuples in
the bag.
Example: suppose we have tuple schema as follows:
Tuple {
int a;
String b;
Bag {
Tuple {
Bytes c;
int d;
String e;
}
} f
}
We would like to sort by
Tuple(b, Bag(Negate(Tuple(e, c))))
, we can construct
the ComparatorExpr as follows;
ComparatorExpr expr = tupleComparator(
leafComparator(1, DataType.CHARARRAY),
bagComparator(2,
negateComparator(
tupleComparator(
leafCmparator(2, DataType.CHARARRAY),
leafComparator(0, DataType.BYTEARRAY)))))
public static java.lang.String exprToString(ComparatorExpr expr)
expr
- public static ComparatorExpr primitiveComparator(int index, int type)
index
- Index in the source tuple.type
- One of the constants defined in DataType
for primitive
types.public static ComparatorExpr negationComparator(ComparatorExpr expr)
expr
- expression to perform negation on.public static ComparatorExpr tupleComparator(java.util.Collection<? extends ComparatorExpr> exprs)
exprs
- member comparator expressions.public static ComparatorExpr tupleComparator(ComparatorExpr... exprs)
exprs
- member comparator expressions.Copyright © 2007-2012 The Apache Software Foundation