UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

49 lines (48 loc) 3.17 kB
import { ArrayExpr } from "./expression/structure/ArrayExpr.js"; import { Expr } from "./expression/Expr.js"; import { StringConcatExpr } from "./expression/string/StringConcatExpr.js"; import { StringLiteralExpr } from "./expression/string/StringLiteralExpr.js"; import { ElemObjectReferenceExpr } from "./expression/reference/ElemObjectReferenceExpr.js"; import { PropObjectReferenceExpr } from "./expression/reference/PropObjectReferenceExpr.js"; import { NumericValue } from "./value/NumericValue.js"; import { DivideExpr } from "./expression/numeric/DivideExpr.js"; import { StringValue } from "./value/StringValue.js"; import { MinusExpr } from "./expression/numeric/MinusExpr.js"; import { MultiplyExpr } from "./expression/numeric/MultiplyExpr.js"; import { PlusExpr } from "./expression/numeric/PlusExpr.js"; import { NumericLiteralExpr } from "./expression/numeric/NumericLiteralExpr.js"; import { Decimal } from "decimal.js"; import { ParenthesisExpr } from "./expression/structure/ParenthesisExpr.js"; import { PowerExpr } from "./expression/numeric/PowerExpr.js"; import { UnaryMinusExpr } from "./expression/numeric/UnaryMinusExpr.js"; import { FunctionExpr } from "./expression/function/FunctionExpr.js"; import { BooleanValue } from "./value/BooleanValue.js"; import { AndExpr } from "./expression/boolean/AndExpr.js"; import { OrExpr } from "./expression/boolean/OrExpr.js"; import { XorExpr } from "./expression/boolean/XorExpr.js"; import { BooleanLiteralExpr } from "./expression/boolean/BooleanLiteralExpr.js"; import { NotExpr } from "./expression/boolean/NotExpr.js"; import { Logical } from "./value/LogicalValue.js"; import { LogicalLiteralExpr } from "./expression/boolean/LogicalLiteralExpr.js"; export declare class E { static array(...elements: Array<Expr<any>>): ArrayExpr; static concat(left: Expr<StringValue>, right: Expr<StringValue>): StringConcatExpr; static string(literal: string): StringLiteralExpr; static element(): ElemObjectReferenceExpr; static property(): PropObjectReferenceExpr; static div(left: Expr<NumericValue>, right: Expr<NumericValue>): DivideExpr; static minus(left: Expr<NumericValue>, right: Expr<NumericValue>): MinusExpr; static multiply(left: Expr<NumericValue>, right: Expr<NumericValue>): MultiplyExpr; static plus(left: Expr<NumericValue>, right: Expr<NumericValue>): PlusExpr; static number(literal: number | string | Decimal): NumericLiteralExpr; static parenthesis(numericExpression: Expr<NumericValue>): ParenthesisExpr; static power(base: Expr<NumericValue>, power: Expr<NumericValue>): PowerExpr; static unaryMinus(numExpr: Expr<NumericValue>): UnaryMinusExpr; static fun(functionName: string, ...funcArgs: Array<Expr<any>>): FunctionExpr; static and(left: Expr<BooleanValue>, right: Expr<BooleanValue>): AndExpr; static or(left: Expr<BooleanValue>, right: Expr<BooleanValue>): OrExpr; static xor(left: Expr<BooleanValue>, right: Expr<BooleanValue>): XorExpr; static boolean(literal: boolean): BooleanLiteralExpr; static logical(literal: Logical): LogicalLiteralExpr; static not(booleanExpr: Expr<BooleanValue>): NotExpr; }