ifc-expressions 2.3.0 → 3.0.0-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (185) hide show
  1. package/README.md +255 -30
  2. package/dist/IfcExpression.d.ts +24 -26
  3. package/dist/IfcExpressionErrorListener.d.ts +3 -3
  4. package/dist/IfcExpressionOptions.d.ts +4 -0
  5. package/dist/autocomplete/CompletionItem.d.ts +24 -0
  6. package/dist/autocomplete/IfcExpressionAutocomplete.d.ts +11 -0
  7. package/dist/builtin/BuiltinRuntimeValueConverter.d.ts +7 -0
  8. package/dist/builtin/BuiltinVariableRegistry.d.ts +50 -0
  9. package/dist/cjs/IfcExpression.js +112 -37
  10. package/dist/cjs/IfcExpression.js.map +1 -1
  11. package/dist/cjs/IfcExpressionErrorListener.js +3 -8
  12. package/dist/cjs/IfcExpressionErrorListener.js.map +1 -1
  13. package/dist/cjs/IfcExpressionOptions.js +3 -0
  14. package/dist/cjs/IfcExpressionOptions.js.map +1 -0
  15. package/dist/cjs/autocomplete/CompletionItem.js +3 -0
  16. package/dist/cjs/autocomplete/CompletionItem.js.map +1 -0
  17. package/dist/cjs/autocomplete/IfcExpressionAutocomplete.js +654 -0
  18. package/dist/cjs/autocomplete/IfcExpressionAutocomplete.js.map +1 -0
  19. package/dist/cjs/builtin/BuiltinRuntimeValueConverter.js +124 -0
  20. package/dist/cjs/builtin/BuiltinRuntimeValueConverter.js.map +1 -0
  21. package/dist/cjs/builtin/BuiltinVariableRegistry.js +405 -0
  22. package/dist/cjs/builtin/BuiltinVariableRegistry.js.map +1 -0
  23. package/dist/cjs/compiler/ExprCompiler.js +44 -41
  24. package/dist/cjs/compiler/ExprCompiler.js.map +1 -1
  25. package/dist/cjs/compiler/ExprManager.js.map +1 -1
  26. package/dist/cjs/compiler/IfcExpressionValidationListener.js +85 -25
  27. package/dist/cjs/compiler/IfcExpressionValidationListener.js.map +1 -1
  28. package/dist/cjs/compiler/TypeManager.js.map +1 -1
  29. package/dist/cjs/context/IfcExpressionContext.js.map +1 -1
  30. package/dist/cjs/context/NopContext.js +3 -0
  31. package/dist/cjs/context/NopContext.js.map +1 -1
  32. package/dist/cjs/documentation/Documentation.js +11 -0
  33. package/dist/cjs/documentation/Documentation.js.map +1 -0
  34. package/dist/cjs/error/ExpressionTypeError.js.map +1 -1
  35. package/dist/cjs/error/IfcExpressionBuiltinConfigException.js +10 -0
  36. package/dist/cjs/error/IfcExpressionBuiltinConfigException.js.map +1 -0
  37. package/dist/cjs/error/InvalidSyntaxException.js.map +1 -1
  38. package/dist/cjs/error/NoSuchFunctionException.js.map +1 -1
  39. package/dist/cjs/error/NoSuchMemberException.js +13 -0
  40. package/dist/cjs/error/NoSuchMemberException.js.map +1 -0
  41. package/dist/cjs/error/ValidationException.js.map +1 -1
  42. package/dist/cjs/error/WrongFunctionArgumentTypeException.js.map +1 -1
  43. package/dist/cjs/expression/ExprKind.js +3 -0
  44. package/dist/cjs/expression/ExprKind.js.map +1 -1
  45. package/dist/cjs/expression/function/Func.js +18 -14
  46. package/dist/cjs/expression/function/Func.js.map +1 -1
  47. package/dist/cjs/expression/function/FuncArg.js +11 -5
  48. package/dist/cjs/expression/function/FuncArg.js.map +1 -1
  49. package/dist/cjs/expression/function/IfcExpressionFunctions.js +198 -42
  50. package/dist/cjs/expression/function/IfcExpressionFunctions.js.map +1 -1
  51. package/dist/cjs/expression/function/impl/CHOOSE.js.map +1 -1
  52. package/dist/cjs/expression/function/impl/IF.js.map +1 -1
  53. package/dist/cjs/expression/function/impl/MAP.js.map +1 -1
  54. package/dist/cjs/expression/function/impl/ReplacePattern.js +20 -2
  55. package/dist/cjs/expression/function/impl/ReplacePattern.js.map +1 -1
  56. package/dist/cjs/expression/reference/BuiltinFunctionCallExpr.js +59 -0
  57. package/dist/cjs/expression/reference/BuiltinFunctionCallExpr.js.map +1 -0
  58. package/dist/cjs/expression/reference/BuiltinPropertyAccessExpr.js +34 -0
  59. package/dist/cjs/expression/reference/BuiltinPropertyAccessExpr.js.map +1 -0
  60. package/dist/cjs/expression/reference/BuiltinRootReferenceExpr.js +29 -0
  61. package/dist/cjs/expression/reference/BuiltinRootReferenceExpr.js.map +1 -0
  62. package/dist/cjs/gen/parser/IfcExpressionLexer.js +126 -104
  63. package/dist/cjs/gen/parser/IfcExpressionLexer.js.map +1 -1
  64. package/dist/cjs/gen/parser/IfcExpressionListener.js +7 -4
  65. package/dist/cjs/gen/parser/IfcExpressionListener.js.map +1 -1
  66. package/dist/cjs/gen/parser/IfcExpressionParser.js +739 -682
  67. package/dist/cjs/gen/parser/IfcExpressionParser.js.map +1 -1
  68. package/dist/cjs/gen/parser/IfcExpressionVisitor.js +4 -4
  69. package/dist/cjs/gen/parser/IfcExpressionVisitor.js.map +1 -1
  70. package/dist/cjs/index.js +4 -1
  71. package/dist/cjs/index.js.map +1 -1
  72. package/dist/cjs/type/ContextObjectType.js +45 -0
  73. package/dist/cjs/type/ContextObjectType.js.map +1 -0
  74. package/dist/cjs/type/Types.js +4 -6
  75. package/dist/cjs/type/Types.js.map +1 -1
  76. package/dist/cjs/value/ContextObjectValue.js +23 -0
  77. package/dist/cjs/value/ContextObjectValue.js.map +1 -0
  78. package/dist/cjs/value/ExpressionValue.js.map +1 -1
  79. package/dist/cjs/value/Value.js.map +1 -1
  80. package/dist/compiler/ExprCompiler.d.ts +8 -3
  81. package/dist/compiler/ExprManager.d.ts +1 -1
  82. package/dist/compiler/IfcExpressionValidationListener.d.ts +9 -3
  83. package/dist/compiler/TypeManager.d.ts +1 -1
  84. package/dist/context/IfcExpressionContext.d.ts +3 -4
  85. package/dist/context/NopContext.d.ts +1 -0
  86. package/dist/documentation/Documentation.d.ts +12 -0
  87. package/dist/error/ExpressionTypeError.d.ts +1 -1
  88. package/dist/error/IfcExpressionBuiltinConfigException.d.ts +3 -0
  89. package/dist/error/InvalidSyntaxException.d.ts +1 -1
  90. package/dist/error/NoSuchFunctionException.d.ts +1 -1
  91. package/dist/error/NoSuchMemberException.d.ts +6 -0
  92. package/dist/error/ValidationException.d.ts +1 -1
  93. package/dist/error/WrongFunctionArgumentTypeException.d.ts +1 -1
  94. package/dist/expression/ExprKind.d.ts +3 -0
  95. package/dist/expression/function/Func.d.ts +7 -21
  96. package/dist/expression/function/FuncArg.d.ts +6 -5
  97. package/dist/expression/function/IfcExpressionFunctions.d.ts +1 -0
  98. package/dist/expression/function/impl/CHOOSE.d.ts +1 -1
  99. package/dist/expression/function/impl/IF.d.ts +1 -1
  100. package/dist/expression/function/impl/MAP.d.ts +1 -1
  101. package/dist/expression/reference/BuiltinFunctionCallExpr.d.ts +19 -0
  102. package/dist/expression/reference/BuiltinPropertyAccessExpr.d.ts +15 -0
  103. package/dist/expression/reference/BuiltinRootReferenceExpr.d.ts +14 -0
  104. package/dist/gen/parser/IfcExpressionLexer.d.ts +9 -8
  105. package/dist/gen/parser/IfcExpressionListener.d.ts +89 -59
  106. package/dist/gen/parser/IfcExpressionParser.d.ts +192 -169
  107. package/dist/gen/parser/IfcExpressionVisitor.d.ts +51 -35
  108. package/dist/index.d.ts +2 -2
  109. package/dist/mjs/IfcExpression.js +104 -32
  110. package/dist/mjs/IfcExpression.js.map +1 -1
  111. package/dist/mjs/IfcExpressionErrorListener.js +3 -8
  112. package/dist/mjs/IfcExpressionErrorListener.js.map +1 -1
  113. package/dist/mjs/IfcExpressionOptions.js +2 -0
  114. package/dist/mjs/IfcExpressionOptions.js.map +1 -0
  115. package/dist/mjs/autocomplete/CompletionItem.js +2 -0
  116. package/dist/mjs/autocomplete/CompletionItem.js.map +1 -0
  117. package/dist/mjs/autocomplete/IfcExpressionAutocomplete.js +650 -0
  118. package/dist/mjs/autocomplete/IfcExpressionAutocomplete.js.map +1 -0
  119. package/dist/mjs/builtin/BuiltinRuntimeValueConverter.js +117 -0
  120. package/dist/mjs/builtin/BuiltinRuntimeValueConverter.js.map +1 -0
  121. package/dist/mjs/builtin/BuiltinVariableRegistry.js +399 -0
  122. package/dist/mjs/builtin/BuiltinVariableRegistry.js.map +1 -0
  123. package/dist/mjs/compiler/ExprCompiler.js +43 -40
  124. package/dist/mjs/compiler/ExprCompiler.js.map +1 -1
  125. package/dist/mjs/compiler/ExprManager.js.map +1 -1
  126. package/dist/mjs/compiler/IfcExpressionValidationListener.js +85 -22
  127. package/dist/mjs/compiler/IfcExpressionValidationListener.js.map +1 -1
  128. package/dist/mjs/compiler/TypeManager.js.map +1 -1
  129. package/dist/mjs/context/IfcExpressionContext.js.map +1 -1
  130. package/dist/mjs/context/NopContext.js +3 -0
  131. package/dist/mjs/context/NopContext.js.map +1 -1
  132. package/dist/mjs/documentation/Documentation.js +7 -0
  133. package/dist/mjs/documentation/Documentation.js.map +1 -0
  134. package/dist/mjs/error/ExpressionTypeError.js.map +1 -1
  135. package/dist/mjs/error/IfcExpressionBuiltinConfigException.js +6 -0
  136. package/dist/mjs/error/IfcExpressionBuiltinConfigException.js.map +1 -0
  137. package/dist/mjs/error/InvalidSyntaxException.js.map +1 -1
  138. package/dist/mjs/error/NoSuchFunctionException.js.map +1 -1
  139. package/dist/mjs/error/NoSuchMemberException.js +9 -0
  140. package/dist/mjs/error/NoSuchMemberException.js.map +1 -0
  141. package/dist/mjs/error/ValidationException.js.map +1 -1
  142. package/dist/mjs/error/WrongFunctionArgumentTypeException.js.map +1 -1
  143. package/dist/mjs/expression/ExprKind.js +3 -0
  144. package/dist/mjs/expression/ExprKind.js.map +1 -1
  145. package/dist/mjs/expression/function/Func.js +18 -14
  146. package/dist/mjs/expression/function/Func.js.map +1 -1
  147. package/dist/mjs/expression/function/FuncArg.js +11 -5
  148. package/dist/mjs/expression/function/FuncArg.js.map +1 -1
  149. package/dist/mjs/expression/function/IfcExpressionFunctions.js +198 -42
  150. package/dist/mjs/expression/function/IfcExpressionFunctions.js.map +1 -1
  151. package/dist/mjs/expression/function/impl/CHOOSE.js.map +1 -1
  152. package/dist/mjs/expression/function/impl/IF.js.map +1 -1
  153. package/dist/mjs/expression/function/impl/MAP.js.map +1 -1
  154. package/dist/mjs/expression/function/impl/ReplacePattern.js +20 -2
  155. package/dist/mjs/expression/function/impl/ReplacePattern.js.map +1 -1
  156. package/dist/mjs/expression/reference/BuiltinFunctionCallExpr.js +55 -0
  157. package/dist/mjs/expression/reference/BuiltinFunctionCallExpr.js.map +1 -0
  158. package/dist/mjs/expression/reference/BuiltinPropertyAccessExpr.js +30 -0
  159. package/dist/mjs/expression/reference/BuiltinPropertyAccessExpr.js.map +1 -0
  160. package/dist/mjs/expression/reference/BuiltinRootReferenceExpr.js +25 -0
  161. package/dist/mjs/expression/reference/BuiltinRootReferenceExpr.js.map +1 -0
  162. package/dist/mjs/gen/parser/IfcExpressionLexer.js +101 -104
  163. package/dist/mjs/gen/parser/IfcExpressionLexer.js.map +1 -1
  164. package/dist/mjs/gen/parser/IfcExpressionListener.js +5 -3
  165. package/dist/mjs/gen/parser/IfcExpressionListener.js.map +1 -1
  166. package/dist/mjs/gen/parser/IfcExpressionParser.js +700 -670
  167. package/dist/mjs/gen/parser/IfcExpressionParser.js.map +1 -1
  168. package/dist/mjs/gen/parser/IfcExpressionVisitor.js +2 -3
  169. package/dist/mjs/gen/parser/IfcExpressionVisitor.js.map +1 -1
  170. package/dist/mjs/index.js +1 -1
  171. package/dist/mjs/index.js.map +1 -1
  172. package/dist/mjs/type/ContextObjectType.js +41 -0
  173. package/dist/mjs/type/ContextObjectType.js.map +1 -0
  174. package/dist/mjs/type/Types.js +4 -6
  175. package/dist/mjs/type/Types.js.map +1 -1
  176. package/dist/mjs/value/ContextObjectValue.js +19 -0
  177. package/dist/mjs/value/ContextObjectValue.js.map +1 -0
  178. package/dist/mjs/value/ExpressionValue.js.map +1 -1
  179. package/dist/mjs/value/Value.js.map +1 -1
  180. package/dist/type/ContextObjectType.d.ts +17 -0
  181. package/dist/type/Types.d.ts +2 -6
  182. package/dist/value/ContextObjectValue.d.ts +11 -0
  183. package/dist/value/ExpressionValue.d.ts +2 -1
  184. package/dist/value/Value.d.ts +1 -1
  185. package/package.json +5 -3
@@ -1,7 +1,8 @@
1
- import { ATN, DFA, FailedPredicateException, Parser, RuleContext, ParserRuleContext, TerminalNode, Token, TokenStream } from 'antlr4';
2
- import IfcExpressionListener from "./IfcExpressionListener.js";
3
- import IfcExpressionVisitor from "./IfcExpressionVisitor.js";
4
- export default class IfcExpressionParser extends Parser {
1
+ import * as antlr from "antlr4ng";
2
+ import { Token } from "antlr4ng";
3
+ import { IfcExpressionListener } from "./IfcExpressionListener.js";
4
+ import { IfcExpressionVisitor } from "./IfcExpressionVisitor.js";
5
+ export declare class IfcExpressionParser extends antlr.Parser {
5
6
  static readonly T__0 = 1;
6
7
  static readonly T__1 = 2;
7
8
  static readonly T__2 = 3;
@@ -26,34 +27,35 @@ export default class IfcExpressionParser extends Parser {
26
27
  static readonly NEWLINE = 22;
27
28
  static readonly BOOLEAN_BINARY_OP = 23;
28
29
  static readonly CMP_OP = 24;
29
- static readonly EOF: number;
30
30
  static readonly RULE_expr = 0;
31
31
  static readonly RULE_singleExpr = 1;
32
32
  static readonly RULE_methodCallChain = 2;
33
- static readonly RULE_functionCall = 3;
34
- static readonly RULE_exprList = 4;
35
- static readonly RULE_arrayExpr = 5;
36
- static readonly RULE_arrayElementList = 6;
37
- static readonly RULE_literal = 7;
38
- static readonly RULE_numLiteral = 8;
39
- static readonly RULE_stringLiteral = 9;
40
- static readonly RULE_booleanLiteral = 10;
41
- static readonly RULE_logicalLiteral = 11;
42
- static readonly RULE_variableRef = 12;
43
- static readonly literalNames: (string | null)[];
44
- static readonly symbolicNames: (string | null)[];
33
+ static readonly RULE_methodAccessor = 3;
34
+ static readonly RULE_functionCall = 4;
35
+ static readonly RULE_exprList = 5;
36
+ static readonly RULE_arrayExpr = 6;
37
+ static readonly RULE_arrayElementList = 7;
38
+ static readonly RULE_literal = 8;
39
+ static readonly RULE_numLiteral = 9;
40
+ static readonly RULE_stringLiteral = 10;
41
+ static readonly RULE_booleanLiteral = 11;
42
+ static readonly RULE_logicalLiteral = 12;
43
+ static readonly RULE_variableRef = 13;
44
+ static readonly literalNames: string[];
45
+ static readonly symbolicNames: string[];
45
46
  static readonly ruleNames: string[];
46
47
  get grammarFileName(): string;
47
48
  get literalNames(): (string | null)[];
48
49
  get symbolicNames(): (string | null)[];
49
50
  get ruleNames(): string[];
50
51
  get serializedATN(): number[];
51
- protected createFailedPredicateException(predicate?: string, message?: string): FailedPredicateException;
52
- constructor(input: TokenStream);
52
+ protected createFailedPredicateException(predicate?: string, message?: string): antlr.FailedPredicateException;
53
+ constructor(input: antlr.TokenStream);
53
54
  expr(): ExprContext;
54
55
  singleExpr(): SingleExprContext;
55
56
  singleExpr(_p: number): SingleExprContext;
56
57
  methodCallChain(): MethodCallChainContext;
58
+ methodAccessor(): MethodAccessorContext;
57
59
  functionCall(): FunctionCallContext;
58
60
  exprList(): ExprListContext;
59
61
  arrayExpr(): ArrayExprContext;
@@ -64,268 +66,289 @@ export default class IfcExpressionParser extends Parser {
64
66
  booleanLiteral(): BooleanLiteralContext;
65
67
  logicalLiteral(): LogicalLiteralContext;
66
68
  variableRef(): VariableRefContext;
67
- sempred(localctx: RuleContext, ruleIndex: number, predIndex: number): boolean;
69
+ sempred(localContext: antlr.ParserRuleContext | null, ruleIndex: number, predIndex: number): boolean;
68
70
  private singleExpr_sempred;
69
71
  static readonly _serializedATN: number[];
70
72
  private static __ATN;
71
- static get _ATN(): ATN;
72
- static DecisionsToDFA: DFA[];
73
+ static get _ATN(): antlr.ATN;
74
+ private static readonly vocabulary;
75
+ get vocabulary(): antlr.Vocabulary;
76
+ private static readonly decisionsToDFA;
73
77
  }
74
- export declare class ExprContext extends ParserRuleContext {
75
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
78
+ export declare class ExprContext extends antlr.ParserRuleContext {
79
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
76
80
  singleExpr(): SingleExprContext;
77
- EOF(): TerminalNode;
81
+ EOF(): antlr.TerminalNode;
78
82
  get ruleIndex(): number;
79
83
  enterRule(listener: IfcExpressionListener): void;
80
84
  exitRule(listener: IfcExpressionListener): void;
81
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
85
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
82
86
  }
83
- export declare class SingleExprContext extends ParserRuleContext {
84
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
87
+ export declare class SingleExprContext extends antlr.ParserRuleContext {
88
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
85
89
  get ruleIndex(): number;
86
90
  copyFrom(ctx: SingleExprContext): void;
87
91
  }
88
- export declare class SEComparisonContext extends SingleExprContext {
89
- _left: SingleExprContext;
90
- _right: SingleExprContext;
91
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
92
- CMP_OP(): TerminalNode;
93
- singleExpr_list(): SingleExprContext[];
94
- singleExpr(i: number): SingleExprContext;
95
- enterRule(listener: IfcExpressionListener): void;
96
- exitRule(listener: IfcExpressionListener): void;
97
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
98
- }
99
- export declare class SELiteralContext extends SingleExprContext {
100
- _sub: LiteralContext;
101
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
102
- literal(): LiteralContext;
92
+ export declare class SEUnaryMultipleMinusContext extends SingleExprContext {
93
+ _sub?: SingleExprContext;
94
+ constructor(ctx: SingleExprContext);
95
+ singleExpr(): SingleExprContext;
103
96
  enterRule(listener: IfcExpressionListener): void;
104
97
  exitRule(listener: IfcExpressionListener): void;
105
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
98
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
106
99
  }
107
100
  export declare class SEParenthesisContext extends SingleExprContext {
108
- _sub: SingleExprContext;
109
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
101
+ _sub?: SingleExprContext;
102
+ constructor(ctx: SingleExprContext);
110
103
  singleExpr(): SingleExprContext;
111
104
  enterRule(listener: IfcExpressionListener): void;
112
105
  exitRule(listener: IfcExpressionListener): void;
113
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
106
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
114
107
  }
115
- export declare class SEMulDivContext extends SingleExprContext {
116
- _left: SingleExprContext;
117
- _op: Token;
118
- _right: SingleExprContext;
119
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
120
- singleExpr_list(): SingleExprContext[];
121
- singleExpr(i: number): SingleExprContext;
108
+ export declare class SEUnaryMinusContext extends SingleExprContext {
109
+ _sub?: SingleExprContext;
110
+ constructor(ctx: SingleExprContext);
111
+ singleExpr(): SingleExprContext;
122
112
  enterRule(listener: IfcExpressionListener): void;
123
113
  exitRule(listener: IfcExpressionListener): void;
124
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
114
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
125
115
  }
126
- export declare class SEPowerContext extends SingleExprContext {
127
- _left: SingleExprContext;
128
- _op: Token;
129
- _right: SingleExprContext;
130
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
131
- singleExpr_list(): SingleExprContext[];
132
- singleExpr(i: number): SingleExprContext;
116
+ export declare class SENotContext extends SingleExprContext {
117
+ _sub?: SingleExprContext;
118
+ constructor(ctx: SingleExprContext);
119
+ singleExpr(): SingleExprContext;
133
120
  enterRule(listener: IfcExpressionListener): void;
134
121
  exitRule(listener: IfcExpressionListener): void;
135
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
122
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
136
123
  }
137
- export declare class SEBooleanBinaryOpContext extends SingleExprContext {
138
- _left: SingleExprContext;
139
- _op: Token;
140
- _right: SingleExprContext;
141
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
142
- singleExpr_list(): SingleExprContext[];
143
- singleExpr(i: number): SingleExprContext;
144
- BOOLEAN_BINARY_OP(): TerminalNode;
124
+ export declare class SEVariableRefContext extends SingleExprContext {
125
+ _sub?: VariableRefContext;
126
+ constructor(ctx: SingleExprContext);
127
+ variableRef(): VariableRefContext;
145
128
  enterRule(listener: IfcExpressionListener): void;
146
129
  exitRule(listener: IfcExpressionListener): void;
147
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
130
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
148
131
  }
149
132
  export declare class SEFunctionCallContext extends SingleExprContext {
150
- _sub: FunctionCallContext;
151
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
133
+ _sub?: FunctionCallContext;
134
+ constructor(ctx: SingleExprContext);
152
135
  functionCall(): FunctionCallContext;
153
136
  enterRule(listener: IfcExpressionListener): void;
154
137
  exitRule(listener: IfcExpressionListener): void;
155
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
138
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
139
+ }
140
+ export declare class SELiteralContext extends SingleExprContext {
141
+ _sub?: LiteralContext;
142
+ constructor(ctx: SingleExprContext);
143
+ literal(): LiteralContext;
144
+ enterRule(listener: IfcExpressionListener): void;
145
+ exitRule(listener: IfcExpressionListener): void;
146
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
156
147
  }
157
148
  export declare class SEArrayExprContext extends SingleExprContext {
158
- _sub: ArrayExprContext;
159
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
149
+ _sub?: ArrayExprContext;
150
+ constructor(ctx: SingleExprContext);
160
151
  arrayExpr(): ArrayExprContext;
161
152
  enterRule(listener: IfcExpressionListener): void;
162
153
  exitRule(listener: IfcExpressionListener): void;
163
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
154
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
164
155
  }
165
- export declare class SENotContext extends SingleExprContext {
166
- _sub: SingleExprContext;
167
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
168
- singleExpr(): SingleExprContext;
156
+ export declare class SEPowerContext extends SingleExprContext {
157
+ _left?: SingleExprContext;
158
+ _op?: Token | null;
159
+ _right?: SingleExprContext;
160
+ constructor(ctx: SingleExprContext);
161
+ singleExpr(): SingleExprContext[];
162
+ singleExpr(i: number): SingleExprContext | null;
169
163
  enterRule(listener: IfcExpressionListener): void;
170
164
  exitRule(listener: IfcExpressionListener): void;
171
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
165
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
172
166
  }
173
- export declare class SEVariableRefContext extends SingleExprContext {
174
- _sub: VariableRefContext;
175
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
176
- variableRef(): VariableRefContext;
167
+ export declare class SEMulDivContext extends SingleExprContext {
168
+ _left?: SingleExprContext;
169
+ _op?: Token | null;
170
+ _right?: SingleExprContext;
171
+ constructor(ctx: SingleExprContext);
172
+ singleExpr(): SingleExprContext[];
173
+ singleExpr(i: number): SingleExprContext | null;
177
174
  enterRule(listener: IfcExpressionListener): void;
178
175
  exitRule(listener: IfcExpressionListener): void;
179
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
176
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
180
177
  }
181
- export declare class SEUnaryMultipleMinusContext extends SingleExprContext {
182
- _sub: SingleExprContext;
183
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
184
- singleExpr(): SingleExprContext;
178
+ export declare class SEAddSubContext extends SingleExprContext {
179
+ _left?: SingleExprContext;
180
+ _op?: Token | null;
181
+ _right?: SingleExprContext;
182
+ constructor(ctx: SingleExprContext);
183
+ singleExpr(): SingleExprContext[];
184
+ singleExpr(i: number): SingleExprContext | null;
185
185
  enterRule(listener: IfcExpressionListener): void;
186
186
  exitRule(listener: IfcExpressionListener): void;
187
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
187
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
188
188
  }
189
- export declare class SEUnaryMinusContext extends SingleExprContext {
190
- _sub: SingleExprContext;
191
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
192
- singleExpr(): SingleExprContext;
189
+ export declare class SEComparisonContext extends SingleExprContext {
190
+ _left?: SingleExprContext;
191
+ _right?: SingleExprContext;
192
+ constructor(ctx: SingleExprContext);
193
+ CMP_OP(): antlr.TerminalNode;
194
+ singleExpr(): SingleExprContext[];
195
+ singleExpr(i: number): SingleExprContext | null;
193
196
  enterRule(listener: IfcExpressionListener): void;
194
197
  exitRule(listener: IfcExpressionListener): void;
195
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
198
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
196
199
  }
197
- export declare class SEAddSubContext extends SingleExprContext {
198
- _left: SingleExprContext;
199
- _op: Token;
200
- _right: SingleExprContext;
201
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
202
- singleExpr_list(): SingleExprContext[];
203
- singleExpr(i: number): SingleExprContext;
200
+ export declare class SEBooleanBinaryOpContext extends SingleExprContext {
201
+ _left?: SingleExprContext;
202
+ _op?: Token | null;
203
+ _right?: SingleExprContext;
204
+ constructor(ctx: SingleExprContext);
205
+ singleExpr(): SingleExprContext[];
206
+ singleExpr(i: number): SingleExprContext | null;
207
+ BOOLEAN_BINARY_OP(): antlr.TerminalNode;
204
208
  enterRule(listener: IfcExpressionListener): void;
205
209
  exitRule(listener: IfcExpressionListener): void;
206
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
210
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
207
211
  }
208
212
  export declare class SEMethodCallContext extends SingleExprContext {
209
- _target: SingleExprContext;
210
- _call: MethodCallChainContext;
211
- constructor(parser: IfcExpressionParser, ctx: SingleExprContext);
213
+ _target?: SingleExprContext;
214
+ _call?: MethodCallChainContext;
215
+ constructor(ctx: SingleExprContext);
212
216
  singleExpr(): SingleExprContext;
213
217
  methodCallChain(): MethodCallChainContext;
214
218
  enterRule(listener: IfcExpressionListener): void;
215
219
  exitRule(listener: IfcExpressionListener): void;
216
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
220
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
217
221
  }
218
- export declare class MethodCallChainContext extends ParserRuleContext {
219
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
222
+ export declare class MethodCallChainContext extends antlr.ParserRuleContext {
223
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
220
224
  get ruleIndex(): number;
221
225
  copyFrom(ctx: MethodCallChainContext): void;
222
226
  }
223
227
  export declare class MethodCallChainInnerContext extends MethodCallChainContext {
224
- _target: FunctionCallContext;
225
- _call: MethodCallChainContext;
226
- constructor(parser: IfcExpressionParser, ctx: MethodCallChainContext);
227
- DOT(): TerminalNode;
228
- functionCall(): FunctionCallContext;
228
+ _target?: MethodAccessorContext;
229
+ _call?: MethodCallChainContext;
230
+ constructor(ctx: MethodCallChainContext);
231
+ DOT(): antlr.TerminalNode;
232
+ methodAccessor(): MethodAccessorContext;
229
233
  methodCallChain(): MethodCallChainContext;
230
234
  enterRule(listener: IfcExpressionListener): void;
231
235
  exitRule(listener: IfcExpressionListener): void;
232
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
236
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
233
237
  }
234
238
  export declare class MethodCallChainEndContext extends MethodCallChainContext {
235
- _call: FunctionCallContext;
236
- constructor(parser: IfcExpressionParser, ctx: MethodCallChainContext);
237
- DOT(): TerminalNode;
239
+ _call?: MethodAccessorContext;
240
+ constructor(ctx: MethodCallChainContext);
241
+ DOT(): antlr.TerminalNode;
242
+ methodAccessor(): MethodAccessorContext;
243
+ enterRule(listener: IfcExpressionListener): void;
244
+ exitRule(listener: IfcExpressionListener): void;
245
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
246
+ }
247
+ export declare class MethodAccessorContext extends antlr.ParserRuleContext {
248
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
249
+ get ruleIndex(): number;
250
+ copyFrom(ctx: MethodAccessorContext): void;
251
+ }
252
+ export declare class MethodFunctionCallContext extends MethodAccessorContext {
253
+ constructor(ctx: MethodAccessorContext);
238
254
  functionCall(): FunctionCallContext;
239
255
  enterRule(listener: IfcExpressionListener): void;
240
256
  exitRule(listener: IfcExpressionListener): void;
241
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
257
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
242
258
  }
243
- export declare class FunctionCallContext extends ParserRuleContext {
244
- _sub: ExprListContext;
245
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
246
- IDENTIFIER(): TerminalNode;
247
- exprList(): ExprListContext;
259
+ export declare class MethodPropertyAccessContext extends MethodAccessorContext {
260
+ constructor(ctx: MethodAccessorContext);
261
+ IDENTIFIER(): antlr.TerminalNode;
262
+ enterRule(listener: IfcExpressionListener): void;
263
+ exitRule(listener: IfcExpressionListener): void;
264
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
265
+ }
266
+ export declare class FunctionCallContext extends antlr.ParserRuleContext {
267
+ _sub?: ExprListContext;
268
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
269
+ IDENTIFIER(): antlr.TerminalNode;
270
+ exprList(): ExprListContext | null;
248
271
  get ruleIndex(): number;
249
272
  enterRule(listener: IfcExpressionListener): void;
250
273
  exitRule(listener: IfcExpressionListener): void;
251
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
274
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
252
275
  }
253
- export declare class ExprListContext extends ParserRuleContext {
254
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
276
+ export declare class ExprListContext extends antlr.ParserRuleContext {
277
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
255
278
  singleExpr(): SingleExprContext;
256
- exprList(): ExprListContext;
279
+ exprList(): ExprListContext | null;
257
280
  get ruleIndex(): number;
258
281
  enterRule(listener: IfcExpressionListener): void;
259
282
  exitRule(listener: IfcExpressionListener): void;
260
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
283
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
261
284
  }
262
- export declare class ArrayExprContext extends ParserRuleContext {
263
- _sub: ArrayElementListContext;
264
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
265
- arrayElementList(): ArrayElementListContext;
285
+ export declare class ArrayExprContext extends antlr.ParserRuleContext {
286
+ _sub?: ArrayElementListContext;
287
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
288
+ arrayElementList(): ArrayElementListContext | null;
266
289
  get ruleIndex(): number;
267
290
  enterRule(listener: IfcExpressionListener): void;
268
291
  exitRule(listener: IfcExpressionListener): void;
269
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
292
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
270
293
  }
271
- export declare class ArrayElementListContext extends ParserRuleContext {
272
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
294
+ export declare class ArrayElementListContext extends antlr.ParserRuleContext {
295
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
273
296
  singleExpr(): SingleExprContext;
274
- arrayElementList(): ArrayElementListContext;
297
+ arrayElementList(): ArrayElementListContext | null;
275
298
  get ruleIndex(): number;
276
299
  enterRule(listener: IfcExpressionListener): void;
277
300
  exitRule(listener: IfcExpressionListener): void;
278
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
301
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
279
302
  }
280
- export declare class LiteralContext extends ParserRuleContext {
281
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
282
- numLiteral(): NumLiteralContext;
283
- stringLiteral(): StringLiteralContext;
284
- booleanLiteral(): BooleanLiteralContext;
285
- logicalLiteral(): LogicalLiteralContext;
303
+ export declare class LiteralContext extends antlr.ParserRuleContext {
304
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
305
+ numLiteral(): NumLiteralContext | null;
306
+ stringLiteral(): StringLiteralContext | null;
307
+ booleanLiteral(): BooleanLiteralContext | null;
308
+ logicalLiteral(): LogicalLiteralContext | null;
286
309
  get ruleIndex(): number;
287
310
  enterRule(listener: IfcExpressionListener): void;
288
311
  exitRule(listener: IfcExpressionListener): void;
289
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
312
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
290
313
  }
291
- export declare class NumLiteralContext extends ParserRuleContext {
292
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
293
- INT(): TerminalNode;
294
- FLOAT(): TerminalNode;
314
+ export declare class NumLiteralContext extends antlr.ParserRuleContext {
315
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
316
+ INT(): antlr.TerminalNode | null;
317
+ FLOAT(): antlr.TerminalNode | null;
295
318
  get ruleIndex(): number;
296
319
  enterRule(listener: IfcExpressionListener): void;
297
320
  exitRule(listener: IfcExpressionListener): void;
298
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
321
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
299
322
  }
300
- export declare class StringLiteralContext extends ParserRuleContext {
301
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
302
- QUOTED_STRING(): TerminalNode;
323
+ export declare class StringLiteralContext extends antlr.ParserRuleContext {
324
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
325
+ QUOTED_STRING(): antlr.TerminalNode;
303
326
  get ruleIndex(): number;
304
327
  enterRule(listener: IfcExpressionListener): void;
305
328
  exitRule(listener: IfcExpressionListener): void;
306
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
329
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
307
330
  }
308
- export declare class BooleanLiteralContext extends ParserRuleContext {
309
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
310
- BOOLEAN(): TerminalNode;
331
+ export declare class BooleanLiteralContext extends antlr.ParserRuleContext {
332
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
333
+ BOOLEAN(): antlr.TerminalNode;
311
334
  get ruleIndex(): number;
312
335
  enterRule(listener: IfcExpressionListener): void;
313
336
  exitRule(listener: IfcExpressionListener): void;
314
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
337
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
315
338
  }
316
- export declare class LogicalLiteralContext extends ParserRuleContext {
317
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
318
- LOGICAL_UNKNOWN(): TerminalNode;
339
+ export declare class LogicalLiteralContext extends antlr.ParserRuleContext {
340
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
341
+ LOGICAL_UNKNOWN(): antlr.TerminalNode;
319
342
  get ruleIndex(): number;
320
343
  enterRule(listener: IfcExpressionListener): void;
321
344
  exitRule(listener: IfcExpressionListener): void;
322
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
345
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
323
346
  }
324
- export declare class VariableRefContext extends ParserRuleContext {
325
- constructor(parser?: IfcExpressionParser, parent?: ParserRuleContext, invokingState?: number);
326
- IDENTIFIER(): TerminalNode;
347
+ export declare class VariableRefContext extends antlr.ParserRuleContext {
348
+ constructor(parent: antlr.ParserRuleContext | null, invokingState: number);
349
+ IDENTIFIER(): antlr.TerminalNode;
327
350
  get ruleIndex(): number;
328
351
  enterRule(listener: IfcExpressionListener): void;
329
352
  exitRule(listener: IfcExpressionListener): void;
330
- accept<Result>(visitor: IfcExpressionVisitor<Result>): Result;
353
+ accept<Result>(visitor: IfcExpressionVisitor<Result>): Result | null;
331
354
  }