UNPKG

ifc-expressions

Version:

Parsing and evaluation of IFC expressions

22 lines (21 loc) 925 B
import { ExpressionValue } from "../../value/ExpressionValue.js"; import { ExprEvalResult } from "../ExprEvalResult.js"; import { ExprType } from "../../type/ExprType.js"; import { FunctionExpr } from "./FunctionExpr.js"; export declare class FuncArg<T> { protected _required: boolean; protected _name: string; protected _defaultValue?: T; constructor(required: boolean, name: string, defaultValue?: T); getType(): ExprType; /** * For the value provided for a specific invocation of the function, return an appropriate result (maybe some kind of type conversion or type check might happen here) * * @param invocationValue */ transformValue(callingExpr: FunctionExpr, invocationValue: ExprEvalResult<ExpressionValue>): ExprEvalResult<ExpressionValue>; get required(): boolean; get name(): string; get defaultValue(): T | undefined; hasDefaultValue(): boolean; }