UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

36 lines (35 loc) 1.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.LogicalLiteralExpr = void 0; const LiteralExpr_js_1 = require("../LiteralExpr.js"); const ExprKind_js_1 = require("../ExprKind.js"); const Types_js_1 = require("../../type/Types.js"); const LogicalValue_js_1 = require("../../value/LogicalValue.js"); class LogicalLiteralExpr extends LiteralExpr_js_1.LiteralExpr { constructor(value) { super(ExprKind_js_1.ExprKind.LOGICAL_LITERAL, value); } calculateResult(ctx) { return LogicalValue_js_1.LogicalValue.of(this.value); } buildExprString(builder) { switch (this.value) { case LogicalValue_js_1.LogicalValue.UNKNOWN_VALUE: builder.appendString(LogicalValue_js_1.LogicalValue.UNKNOWN_VALUE); break; case true: builder.appendString("TRUE"); break; case false: builder.appendString("FALSE"); break; default: throw new Error("Cannot build exprString for logical value " + JSON.stringify(this)); } } getType() { return Types_js_1.Type.LOGICAL; } } exports.LogicalLiteralExpr = LogicalLiteralExpr; //# sourceMappingURL=LogicalLiteralExpr.js.map