private String getQueryStringFromAst(ASTNode ast) { StringBuilder sb = new StringBuilder(); int startIdx = ast.getTokenStartIndex(); int endIdx = ast.getTokenStopIndex(); boolean queryNeedsQuotes = true; if (conf.getVar(ConfVars.HIVE_QUOTEDID_SUPPORT).equals("none")) { queryNeedsQuotes = false; } for (int idx = startIdx; idx <= endIdx; idx++) { Token curTok = ctx.getTokenRewriteStream().get(idx); if (curTok.getType() == Token.EOF) { continue; } else if (queryNeedsQuotes && curTok.getType() == HiveLexer.Identifier) { // The Tokens have no distinction between Identifiers and QuotedIdentifiers. // Ugly solution is just to surround all identifiers with quotes. sb.append('`'); // Re-escape any backtick (`) characters in the identifier. sb.append(curTok.getText().replaceAll("`", "``")); sb.append('`'); } else { sb.append(curTok.getText()); } } return sb.toString(); }
public String toDebugString(int start, int end) { StringBuilder buf = new StringBuilder(); for (int i=start; i>=MIN_TOKEN_INDEX && i<=end && i<tokens.size(); i++) { buf.append(get(i)); } return buf.toString(); } }
public String toDebugString(int start, int end) { StringBuilder buf = new StringBuilder(); for (int i=start; i>=MIN_TOKEN_INDEX && i<=end && i<tokens.size(); i++) { buf.append(get(i)); } return buf.toString(); } }
public String toDebugString(int start, int end) { StringBuilder buf = new StringBuilder(); for (int i=start; i>=MIN_TOKEN_INDEX && i<=end && i<tokens.size(); i++) { buf.append(get(i)); } return buf.toString(); } }
public String toDebugString(int start, int end) { StringBuilder buf = new StringBuilder(); for (int i=start; i>=MIN_TOKEN_INDEX && i<=end && i<tokens.size(); i++) { buf.append(get(i)); } return buf.toString(); } }
public String toDebugString(int start, int end) { StringBuilder buf = new StringBuilder(); for (int i=start; i>=MIN_TOKEN_INDEX && i<=end && i<tokens.size(); i++) { buf.append(get(i)); } return buf.toString(); } }
public String toDebugString(int start, int end) { StringBuffer buf = new StringBuffer(); for (int i=start; i>=MIN_TOKEN_INDEX && i<=end && i<tokens.size(); i++) { buf.append(get(i)); } return buf.toString(); } }