@fink/larix
Version:
A parser for generating fink's AST.
26 lines (19 loc) • 749 B
JavaScript
const {
add_operator
} = require("@fink/prattler/expressions.js");
const {
infix_right,
prefix
} = require("../expressions.js");
const logical = token_type => infix_right(token_type, `logical`);
exports.logical = logical;
const prefix_logical = token_type => prefix(token_type, `logical`);
exports.prefix_logical = prefix_logical;
const add_logical_operators = ctx => {
let ˆpipe_result_1 = ctx;
ˆpipe_result_1 = add_operator(logical(`and`))(ˆpipe_result_1);
ˆpipe_result_1 = add_operator(logical(`or`))(ˆpipe_result_1);
ˆpipe_result_1 = add_operator(prefix_logical(`not`))(ˆpipe_result_1);
return ˆpipe_result_1 = add_operator(logical(`in`))(ˆpipe_result_1);
};
exports.add_logical_operators = add_logical_operators;