UNPKG

subscript

Version:

Modular expression parser & evaluator

13 lines (11 loc) 618 B
// Arithmetic operators - eval half import { operator, compile } from '../../parse.js'; operator('+', (a, b) => b !== undefined ? (a = compile(a), b = compile(b), ctx => a(ctx) + b(ctx)) : (a = compile(a), ctx => +a(ctx))); operator('-', (a, b) => b !== undefined ? (a = compile(a), b = compile(b), ctx => a(ctx) - b(ctx)) : (a = compile(a), ctx => -a(ctx))); operator('*', (a, b) => (a = compile(a), b = compile(b), ctx => a(ctx) * b(ctx))); operator('/', (a, b) => (a = compile(a), b = compile(b), ctx => a(ctx) / b(ctx))); operator('%', (a, b) => (a = compile(a), b = compile(b), ctx => a(ctx) % b(ctx)));