complete ts type, add test

This commit is contained in:
HSunboy
2019-05-14 16:57:09 +08:00
parent c20549970f
commit 41aed6b4ce
10 changed files with 314 additions and 1117 deletions

View File

@ -3,40 +3,33 @@ Object.defineProperty(exports, "__esModule", { value: true });
// import * as sqlSyntaxParser from '../core/sqlSyntaxParser';
const sqlSyntaxParser = require("../core/sqlSyntaxParser");
const sqlAutoCompleteParser = require("../core/sqlAutoCompleteParser");
var sqlType;
(function (sqlType) {
sqlType["Hive"] = "hive";
sqlType["None"] = "sql";
sqlType["Impala"] = "impala";
})(sqlType || (sqlType = {}));
function sqlToParserArgs(sql) {
let preSql = '', sufSql = '';
if (Object.prototype.toString.call(sql) == '[object Array]') {
preSql = sql[0];
sufSql = sql[1];
}
return [preSql, sufSql];
}
/**
* 自动补全提示
* @param {(string | Array<string>)} sql
* @param {string} [type="hive"]
* 校验语法
*/
function parseSyntax(sql, type) {
if (typeof type == "undefined") {
type = "hive";
}
let sql1 = sql;
let sql2 = '';
if (sql instanceof Array) {
sql1 = sql[0];
sql2 = sql[1];
}
// @ts-nocheck
return sqlSyntaxParser.parser.parseSyntax(sql1, sql2, type, false);
function parseSyntax(sql, type = sqlType.Hive) {
const parserArgs = sqlToParserArgs(sql);
return sqlSyntaxParser.parser.parseSyntax(parserArgs[0], parserArgs[1], type, false);
}
exports.parseSyntax = parseSyntax;
/**
* 自动补全提示
* @param {(string | Array<string>)} sql
* @param {string} [type="hive"]
*/
function parserSql(sql, type) {
if (typeof type == "undefined") {
type = "hive";
}
let sql1 = sql;
let sql2 = '';
if (sql instanceof Array) {
sql1 = sql[0];
sql2 = sql[1];
}
return sqlAutoCompleteParser.parser.parseSql(sql1, sql2, type, false);
function parserSql(sql, type = sqlType.Hive) {
const parserArgs = sqlToParserArgs(sql);
return sqlAutoCompleteParser.parser.parseSql(parserArgs[0], parserArgs[1], type, false);
}
exports.parserSql = parserSql;