UNPKG

@opra/common

Version:
30 lines (29 loc) 866 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ArithmeticExpressionItem = exports.ArithmeticExpression = void 0; const expression_js_1 = require("../abstract/expression.js"); class ArithmeticExpression extends expression_js_1.Expression { constructor() { super(); this.items = []; } 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(''); } } exports.ArithmeticExpression = ArithmeticExpression; class ArithmeticExpressionItem { constructor(o) { Object.assign(this, o); } } exports.ArithmeticExpressionItem = ArithmeticExpressionItem;