@1771technologies/lytenyte-pro
Version:
Blazingly fast headless React data grid with 100s of features.
22 lines (21 loc) • 717 B
JavaScript
import { evaluateNode } from "./evaluate.js";
export function evaluateBinary(node, context, depth, plugins, options) {
const left = evaluateNode(node.left, context, depth + 1, plugins, options);
const right = evaluateNode(node.right, context, depth + 1, plugins, options);
switch (node.operator) {
case "+":
return left + right;
case "-":
return left - right;
case "*":
return left * right;
case "/":
return left / right;
case "%":
return left % right;
case "**":
return left ** right;
default:
throw new Error(`Unknown binary operator: ${node.operator}`);
}
}