@qrvey/formula-lang
Version:
QFormula support for qrvey projects
22 lines • 1.05 kB
JavaScript
import { QFormulaLang } from './grammar/qformula.grammar';
import { calculateAST } from './parser/json-parser';
import { TranspileAST } from './transpiler/index';
export { QFormula as FormulaHighlight, QFormulaLang as FormulaLang, QFormulaParser as FormulaParser, } from './grammar/qformula.grammar';
export { calculateAST } from './parser/json-parser';
export { ENGINES, AST_PRIMITIVES } from './constants/index';
export { FUNCTION_LIST, getFunctionDetail } from './functions/index';
export { TranspileAST } from './transpiler/index';
export { BaseError, errorAnalyzer } from './errors';
export { cleanInvalidItemsInContext } from './utils';
export { getPrimitiveAsValue } from './utils/primitiveFunctions';
export function Transpile(program, engine, context) {
const parser = QFormulaLang.parser;
const tree = parser.parse(program);
if (!tree.topNode)
return;
const ast = calculateAST(program, tree, context);
if (!ast)
return;
return TranspileAST(ast, engine, context);
}
//# sourceMappingURL=index.js.map