UNPKG

@opra/common

Version:
27 lines (26 loc) 608 B
import { Expression } from '../abstract/expression.js'; export class ArithmeticExpression extends Expression { items = []; constructor() { super(); } append(op, expression) { this.items.push(new ArithmeticExpressionItem({ op, expression, })); return this; } toString() { return this.items .map((child, i) => (i > 0 ? child.op : '') + child.expression) .join(''); } } export class ArithmeticExpressionItem { op; expression; constructor(o) { Object.assign(this, o); } }