org.apache.lens.cube.parse
Class HQLParser
java.lang.Object
org.apache.lens.cube.parse.HQLParser
public final class HQLParser
- extends Object
Method Summary |
static void |
bft(org.apache.hadoop.hive.ql.parse.ASTNode root,
HQLParser.ASTNodeVisitor visitor)
Breadth first traversal of AST |
static org.apache.hadoop.hive.ql.parse.ASTNode |
copyAST(org.apache.hadoop.hive.ql.parse.ASTNode original)
|
static boolean |
equalsAST(org.apache.hadoop.hive.ql.parse.ASTNode n1,
org.apache.hadoop.hive.ql.parse.ASTNode n2)
|
static org.apache.hadoop.hive.ql.parse.ASTNode |
findNodeByPath(org.apache.hadoop.hive.ql.parse.ASTNode root,
int... path)
Find a node in the tree rooted at root, given the path of type of tokens from the root's children to the desired
node |
static String |
getColName(org.apache.hadoop.hive.ql.parse.ASTNode node)
|
static Map<Integer,String> |
getHiveTokenMapping()
|
static String |
getString(org.apache.hadoop.hive.ql.parse.ASTNode tree)
|
static boolean |
hasAggregate(org.apache.hadoop.hive.ql.parse.ASTNode node)
|
static boolean |
isAggregateAST(org.apache.hadoop.hive.ql.parse.ASTNode node)
|
static boolean |
isArithmeticOp(int tokenType)
|
static boolean |
isSelectASTNode(org.apache.hadoop.hive.ql.parse.ASTNode node)
|
static void |
main(String[] args)
|
static org.apache.hadoop.hive.ql.parse.ASTNode |
parseExpr(String expr)
|
static org.apache.hadoop.hive.ql.parse.ASTNode |
parseHQL(String query)
|
static void |
printAST(org.apache.hadoop.hive.ql.parse.ASTNode node)
|
static void |
printAST(Map<Integer,String> tokenMapping,
org.apache.hadoop.hive.ql.parse.ASTNode node,
int level,
int child)
Debug function for printing query AST to stdout |
static void |
toInfixString(org.apache.hadoop.hive.ql.parse.ASTNode root,
StringBuilder buf)
Recursively reconstruct query string given a query AST |
P_WSPACE
public static final Pattern P_WSPACE
BINARY_OPERATORS
public static final Set<Integer> BINARY_OPERATORS
ARITHMETIC_OPERATORS
public static final Set<Integer> ARITHMETIC_OPERATORS
UNARY_OPERATORS
public static final Set<Integer> UNARY_OPERATORS
isArithmeticOp
public static boolean isArithmeticOp(int tokenType)
parseHQL
public static org.apache.hadoop.hive.ql.parse.ASTNode parseHQL(String query)
throws org.apache.hadoop.hive.ql.parse.ParseException
- Throws:
org.apache.hadoop.hive.ql.parse.ParseException
parseExpr
public static org.apache.hadoop.hive.ql.parse.ASTNode parseExpr(String expr)
throws org.apache.hadoop.hive.ql.parse.ParseException
- Throws:
org.apache.hadoop.hive.ql.parse.ParseException
printAST
public static void printAST(org.apache.hadoop.hive.ql.parse.ASTNode node)
printAST
public static void printAST(Map<Integer,String> tokenMapping,
org.apache.hadoop.hive.ql.parse.ASTNode node,
int level,
int child)
- Debug function for printing query AST to stdout
- Parameters:
node
- level
-
getHiveTokenMapping
public static Map<Integer,String> getHiveTokenMapping()
throws Exception
- Throws:
Exception
findNodeByPath
public static org.apache.hadoop.hive.ql.parse.ASTNode findNodeByPath(org.apache.hadoop.hive.ql.parse.ASTNode root,
int... path)
- Find a node in the tree rooted at root, given the path of type of tokens from the root's children to the desired
node
- Parameters:
root
- path
- starts at the level of root's children
- Returns:
copyAST
public static org.apache.hadoop.hive.ql.parse.ASTNode copyAST(org.apache.hadoop.hive.ql.parse.ASTNode original)
bft
public static void bft(org.apache.hadoop.hive.ql.parse.ASTNode root,
HQLParser.ASTNodeVisitor visitor)
throws org.apache.hadoop.hive.ql.parse.SemanticException
- Breadth first traversal of AST
- Parameters:
root
- visitor
-
- Throws:
org.apache.hadoop.hive.ql.parse.SemanticException
toInfixString
public static void toInfixString(org.apache.hadoop.hive.ql.parse.ASTNode root,
StringBuilder buf)
- Recursively reconstruct query string given a query AST
- Parameters:
root
- buf
- preallocated builder where the reconstructed string will be written
main
public static void main(String[] args)
throws Exception
- Throws:
Exception
getString
public static String getString(org.apache.hadoop.hive.ql.parse.ASTNode tree)
getColName
public static String getColName(org.apache.hadoop.hive.ql.parse.ASTNode node)
isAggregateAST
public static boolean isAggregateAST(org.apache.hadoop.hive.ql.parse.ASTNode node)
isSelectASTNode
public static boolean isSelectASTNode(org.apache.hadoop.hive.ql.parse.ASTNode node)
- Parameters:
node
- an ASTNode
- Returns:
- true when input node is a SELECT AST Node. Otherwise, false.
hasAggregate
public static boolean hasAggregate(org.apache.hadoop.hive.ql.parse.ASTNode node)
equalsAST
public static boolean equalsAST(org.apache.hadoop.hive.ql.parse.ASTNode n1,
org.apache.hadoop.hive.ql.parse.ASTNode n2)
Copyright © 2014–2015 Apache Software Foundation. All rights reserved.