@jeanbenitez/logical-expression-parser
Version:
Logical expression parser and evaluates result, suitable for permissions management
15 lines (11 loc) • 404 B
JavaScript
const Tokenizer = require('./tokenizer');
const Polish = require('./polish');
const Node = require('./node');
const ast = (exp) => {
const tokens = Tokenizer(exp);
const polish = Polish.PolishNotation(tokens);
const gen = Polish.PolishGenerator(polish);
return Node.make(gen);
};
const parse = (exp, literalChecker) => Node.evaluate(ast(exp), literalChecker);
module.exports = { ast, parse };