UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

16 lines (15 loc) 918 B
import { ExpressionValue } from "../../value/ExpressionValue.js"; import { Expr2 } from "../Expr2.js"; import { ExprKind } from "../ExprKind.js"; import { Expr } from "../Expr.js"; import { IfcExpressionContext } from "../../context/IfcExpressionContext.js"; import { ExprEvalError } from "../ExprEvalResult.js"; import { Comparable } from "../../value/Comparable.js"; import { BooleanValue } from "../../value/BooleanValue.js"; import { ExprType } from "../../type/ExprType.js"; export declare abstract class ComparisonOp<T extends ExpressionValue & Comparable<T>> extends Expr2<T, T, BooleanValue> { private readonly comparisonFunction; constructor(exprKind: ExprKind, left: Expr<T>, right: Expr<T>, cmp: (number: any) => boolean); protected calculateResult(ctx: IfcExpressionContext, localCtx: Map<string, any>, leftOperand: T, rightOperand: T): ExprEvalError | BooleanValue; getType(): ExprType; }