UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

32 lines (31 loc) 1.03 kB
import { LiteralExpr } from "../LiteralExpr.js"; import { ExprKind } from "../ExprKind.js"; import { Type } from "../../type/Types.js"; import { LogicalValue } from "../../value/LogicalValue.js"; export class LogicalLiteralExpr extends LiteralExpr { constructor(value) { super(ExprKind.LOGICAL_LITERAL, value); } calculateResult(ctx) { return LogicalValue.of(this.value); } buildExprString(builder) { switch (this.value) { case LogicalValue.UNKNOWN_VALUE: builder.appendString(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 Type.LOGICAL; } } //# sourceMappingURL=LogicalLiteralExpr.js.map