UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

24 lines (23 loc) 881 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PowerExpr = void 0; const Expr2_js_1 = require("../Expr2.js"); const NumericValue_js_1 = require("../../value/NumericValue.js"); const ExprKind_js_1 = require("../ExprKind.js"); const Types_js_1 = require("../../type/Types.js"); class PowerExpr extends Expr2_js_1.Expr2 { constructor(left, right) { super(ExprKind_js_1.ExprKind.NUM_POWER, left, right); } calculateResult(ctx, localCtx, leftOperand, rightOperand) { return NumericValue_js_1.NumericValue.of(leftOperand.getValue().pow(rightOperand.getValue())); } buildExprString(builder) { builder.appendExpr(this.left).appendString(" ^ ").appendExpr(this.right); } getType() { return Types_js_1.Type.NUMERIC; } } exports.PowerExpr = PowerExpr; //# sourceMappingURL=PowerExpr.js.map