UNPKG

@schoenbergerb/logical-expression-parser

Version:

Logical expression parser and evaluates result, suitable for permissions management

27 lines 1 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.make = void 0; const token_type_1 = require("./token-type"); const make = (gen) => { const data = gen.next().value; switch (data.type) { case token_type_1.Token.LITERAL: return { op: token_type_1.Token.LEAF, literal: data.value }; case token_type_1.Token.OPERATOR_NOT: return { op: token_type_1.Token.OPERATOR_NOT, left: (0, exports.make)(gen) }; case token_type_1.Token.OPERATOR_AND: return { op: token_type_1.Token.OPERATOR_AND, left: (0, exports.make)(gen), right: (0, exports.make)(gen), }; case token_type_1.Token.OPERATOR_OR: return { op: token_type_1.Token.OPERATOR_OR, left: (0, exports.make)(gen), right: (0, exports.make)(gen), }; } }; exports.make = make; //# sourceMappingURL=make-ast.js.map