ifc-expressions
Version:
Parsing and evaluation of IFC expressions
18 lines (17 loc) • 894 B
TypeScript
import { ExprType } from "./ExprType.js";
import { BuiltinMemberDefinition, RegisteredBuiltinVariableDefinition } from "../builtin/BuiltinVariableRegistry.js";
export declare class ContextObjectType implements ExprType {
private readonly name;
private readonly baseType;
private readonly members;
constructor(name: string, baseType: ExprType, members: Map<string, BuiltinMemberDefinition>);
static fromBuiltinDefinition(definition: RegisteredBuiltinVariableDefinition): ContextObjectType;
getMemberDefinition(name: string): BuiltinMemberDefinition | undefined;
getMemberDefinitions(): Array<BuiltinMemberDefinition>;
getName(): string;
isSuperTypeOf(other: ExprType): boolean;
isSameTypeAs(other: ExprType): boolean;
isSubTypeOf(other: ExprType): boolean;
overlapsWith(other: ExprType): boolean;
isAssignableFrom(other: ExprType): boolean;
}