ifc-expressions 0.2.1 → 0.2.3

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 (238) hide show
  1. package/dist/ExprVisitor.d.ts +3 -3
  2. package/dist/IfcExpression.d.ts +25 -23
  3. package/dist/IfcExpressionErrorListener.d.ts +1 -1
  4. package/dist/IfcExpressionUtils.d.ts +2 -0
  5. package/dist/cjs/ExprVisitor.js +126 -0
  6. package/dist/cjs/ExprVisitor.js.map +1 -0
  7. package/dist/cjs/IfcExpression.js +43 -40
  8. package/dist/cjs/IfcExpression.js.map +1 -0
  9. package/dist/cjs/IfcExpressionErrorListener.js +23 -0
  10. package/dist/cjs/IfcExpressionErrorListener.js.map +1 -0
  11. package/dist/cjs/IfcExpressionUtils.js +12 -0
  12. package/dist/cjs/IfcExpressionUtils.js.map +1 -0
  13. package/dist/cjs/SyntaxErrorException.js +24 -0
  14. package/dist/cjs/SyntaxErrorException.js.map +1 -0
  15. package/dist/cjs/context/IfcElementAccessor.js +34 -0
  16. package/dist/cjs/context/IfcElementAccessor.js.map +1 -0
  17. package/dist/cjs/context/IfcExpressionContext.js +3 -0
  18. package/dist/cjs/context/IfcExpressionContext.js.map +1 -0
  19. package/dist/cjs/context/IfcPropertyAccessor.js +28 -0
  20. package/dist/cjs/context/IfcPropertyAccessor.js.map +1 -0
  21. package/dist/cjs/context/IfcPropertySetAccessor.js +17 -0
  22. package/dist/cjs/context/IfcPropertySetAccessor.js.map +1 -0
  23. package/dist/cjs/context/IfcRootObjectAccessor.js +19 -0
  24. package/dist/cjs/context/IfcRootObjectAccessor.js.map +1 -0
  25. package/dist/cjs/context/IfcTypeObjectAccessor.js +22 -0
  26. package/dist/cjs/context/IfcTypeObjectAccessor.js.map +1 -0
  27. package/dist/cjs/context/NamedObjectAccessor.js +26 -0
  28. package/dist/cjs/context/NamedObjectAccessor.js.map +1 -0
  29. package/dist/cjs/context/ObjectAccessor.js +3 -0
  30. package/dist/cjs/context/ObjectAccessor.js.map +1 -0
  31. package/dist/cjs/expression/ArrayExpr.js +3 -0
  32. package/dist/cjs/expression/ArrayExpr.js.map +1 -0
  33. package/dist/cjs/expression/Expr.js +3 -0
  34. package/dist/cjs/expression/Expr.js.map +1 -0
  35. package/dist/cjs/expression/Expr0.js +8 -0
  36. package/dist/cjs/expression/Expr0.js.map +1 -0
  37. package/dist/cjs/expression/Expr1.js +10 -0
  38. package/dist/cjs/expression/Expr1.js.map +1 -0
  39. package/dist/cjs/expression/Expr2.js +11 -0
  40. package/dist/cjs/expression/Expr2.js.map +1 -0
  41. package/dist/cjs/expression/IfcExpressionEvaluationException.js +10 -0
  42. package/dist/cjs/expression/IfcExpressionEvaluationException.js.map +1 -0
  43. package/dist/cjs/expression/numeric/DivideExpr.js +18 -0
  44. package/dist/cjs/expression/numeric/DivideExpr.js.map +1 -0
  45. package/dist/cjs/expression/numeric/MinusExpr.js +18 -0
  46. package/dist/cjs/expression/numeric/MinusExpr.js.map +1 -0
  47. package/dist/cjs/expression/numeric/MultiplyByExpr.js +18 -0
  48. package/dist/cjs/expression/numeric/MultiplyByExpr.js.map +1 -0
  49. package/dist/cjs/expression/numeric/MultiplyExpr.js +18 -0
  50. package/dist/cjs/expression/numeric/MultiplyExpr.js.map +1 -0
  51. package/dist/cjs/expression/numeric/NumParenthesisExpr.js +14 -0
  52. package/dist/cjs/expression/numeric/NumParenthesisExpr.js.map +1 -0
  53. package/dist/cjs/expression/numeric/NumericLiteralExpr.js +14 -0
  54. package/dist/cjs/expression/numeric/NumericLiteralExpr.js.map +1 -0
  55. package/dist/cjs/expression/numeric/PlusExpr.js +18 -0
  56. package/dist/cjs/expression/numeric/PlusExpr.js.map +1 -0
  57. package/dist/cjs/expression/reference/AttributeReferenceExpr.js +16 -0
  58. package/dist/cjs/expression/reference/AttributeReferenceExpr.js.map +1 -0
  59. package/dist/cjs/expression/reference/ElemObjectReferenceExpr.js +14 -0
  60. package/dist/cjs/expression/reference/ElemObjectReferenceExpr.js.map +1 -0
  61. package/dist/cjs/expression/reference/NestedObjectChainEndExpr.js +14 -0
  62. package/dist/cjs/expression/reference/NestedObjectChainEndExpr.js.map +1 -0
  63. package/dist/cjs/expression/reference/NestedObjectChainExpr.js +15 -0
  64. package/dist/cjs/expression/reference/NestedObjectChainExpr.js.map +1 -0
  65. package/dist/cjs/expression/reference/ObjectReferenceExpr.js +3 -0
  66. package/dist/cjs/expression/reference/ObjectReferenceExpr.js.map +1 -0
  67. package/dist/cjs/expression/reference/PropObjectReferenceExpr.js +14 -0
  68. package/dist/cjs/expression/reference/PropObjectReferenceExpr.js.map +1 -0
  69. package/dist/cjs/expression/string/StringConcatExpr.js +15 -0
  70. package/dist/cjs/expression/string/StringConcatExpr.js.map +1 -0
  71. package/dist/cjs/expression/string/StringLiteralExpr.js +14 -0
  72. package/dist/cjs/expression/string/StringLiteralExpr.js.map +1 -0
  73. package/dist/cjs/gen/parser/IfcExpressionLexer.js +140 -0
  74. package/dist/cjs/gen/parser/IfcExpressionLexer.js.map +1 -0
  75. package/dist/cjs/gen/parser/IfcExpressionListener.js +12 -0
  76. package/dist/cjs/gen/parser/IfcExpressionListener.js.map +1 -0
  77. package/dist/cjs/gen/parser/IfcExpressionParser.js +1514 -0
  78. package/dist/cjs/gen/parser/IfcExpressionParser.js.map +1 -0
  79. package/dist/cjs/gen/parser/IfcExpressionVisitor.js +15 -0
  80. package/dist/cjs/gen/parser/IfcExpressionVisitor.js.map +1 -0
  81. package/dist/cjs/package.json +1 -0
  82. package/dist/cjs/value/BooleanValue.js +14 -0
  83. package/dist/cjs/value/BooleanValue.js.map +1 -0
  84. package/dist/cjs/value/LiteralValue.js +3 -0
  85. package/dist/cjs/value/LiteralValue.js.map +1 -0
  86. package/dist/cjs/value/LiteralValueAnyArity.js +3 -0
  87. package/dist/cjs/value/LiteralValueAnyArity.js.map +1 -0
  88. package/dist/cjs/value/LogicalValue.js +14 -0
  89. package/dist/cjs/value/LogicalValue.js.map +1 -0
  90. package/dist/cjs/value/NumericValue.js +18 -0
  91. package/dist/cjs/value/NumericValue.js.map +1 -0
  92. package/dist/cjs/value/PrimitiveValueType.js +3 -0
  93. package/dist/cjs/value/PrimitiveValueType.js.map +1 -0
  94. package/dist/cjs/value/ReferenceValue.js +14 -0
  95. package/dist/cjs/value/ReferenceValue.js.map +1 -0
  96. package/dist/cjs/value/StringValue.js +14 -0
  97. package/dist/cjs/value/StringValue.js.map +1 -0
  98. package/dist/cjs/value/Value.js +13 -0
  99. package/dist/cjs/value/Value.js.map +1 -0
  100. package/dist/context/IfcElementAccessor.d.ts +18 -0
  101. package/dist/context/IfcExpressionContext.d.ts +6 -0
  102. package/dist/context/IfcPropertyAccessor.d.ts +12 -0
  103. package/dist/context/IfcPropertySetAccessor.d.ts +11 -0
  104. package/dist/context/IfcRootObjectAccessor.d.ts +7 -0
  105. package/dist/context/IfcTypeObjectAccessor.d.ts +13 -0
  106. package/dist/context/NamedObjectAccessor.d.ts +10 -0
  107. package/dist/context/ObjectAccessor.d.ts +16 -0
  108. package/dist/expression/ArrayExpr.d.ts +3 -0
  109. package/dist/expression/Expr.d.ts +4 -0
  110. package/dist/expression/Expr0.d.ts +6 -0
  111. package/dist/expression/Expr1.d.ts +7 -0
  112. package/dist/expression/Expr2.d.ts +8 -0
  113. package/dist/expression/IfcExpressionEvaluationException.d.ts +3 -0
  114. package/dist/expression/numeric/DivideExpr.d.ts +8 -0
  115. package/dist/expression/numeric/MinusExpr.d.ts +8 -0
  116. package/dist/expression/numeric/MultiplyByExpr.d.ts +8 -0
  117. package/dist/expression/numeric/MultiplyExpr.d.ts +8 -0
  118. package/dist/expression/numeric/NumParenthesisExpr.d.ts +8 -0
  119. package/dist/expression/numeric/NumericLiteralExpr.d.ts +7 -0
  120. package/dist/expression/numeric/PlusExpr.d.ts +8 -0
  121. package/dist/expression/reference/AttributeReferenceExpr.d.ts +9 -0
  122. package/dist/expression/reference/ElemObjectReferenceExpr.d.ts +8 -0
  123. package/dist/expression/reference/NestedObjectChainEndExpr.d.ts +8 -0
  124. package/dist/expression/reference/NestedObjectChainExpr.d.ts +9 -0
  125. package/dist/expression/reference/ObjectReferenceExpr.d.ts +4 -0
  126. package/dist/expression/reference/PropObjectReferenceExpr.d.ts +8 -0
  127. package/dist/expression/string/StringConcatExpr.d.ts +8 -0
  128. package/dist/expression/string/StringLiteralExpr.d.ts +7 -0
  129. package/dist/gen/parser/IfcExpressionLexer.d.ts +43 -0
  130. package/dist/gen/parser/IfcExpressionListener.d.ts +262 -0
  131. package/dist/gen/parser/IfcExpressionParser.d.ts +265 -0
  132. package/dist/gen/parser/IfcExpressionVisitor.d.ts +169 -0
  133. package/dist/mjs/ExprVisitor.js +119 -0
  134. package/dist/mjs/ExprVisitor.js.map +1 -0
  135. package/dist/mjs/IfcExpression.js +48 -0
  136. package/dist/mjs/IfcExpression.js.map +1 -0
  137. package/dist/mjs/IfcExpressionErrorListener.js +19 -0
  138. package/dist/mjs/IfcExpressionErrorListener.js.map +1 -0
  139. package/dist/mjs/IfcExpressionUtils.js +7 -0
  140. package/dist/mjs/IfcExpressionUtils.js.map +1 -0
  141. package/dist/mjs/SyntaxErrorException.js +20 -0
  142. package/dist/mjs/SyntaxErrorException.js.map +1 -0
  143. package/dist/mjs/context/IfcElementAccessor.js +30 -0
  144. package/dist/mjs/context/IfcElementAccessor.js.map +1 -0
  145. package/dist/mjs/context/IfcExpressionContext.js +2 -0
  146. package/dist/mjs/context/IfcExpressionContext.js.map +1 -0
  147. package/dist/mjs/context/IfcPropertyAccessor.js +24 -0
  148. package/dist/mjs/context/IfcPropertyAccessor.js.map +1 -0
  149. package/dist/mjs/context/IfcPropertySetAccessor.js +13 -0
  150. package/dist/mjs/context/IfcPropertySetAccessor.js.map +1 -0
  151. package/dist/mjs/context/IfcRootObjectAccessor.js +15 -0
  152. package/dist/mjs/context/IfcRootObjectAccessor.js.map +1 -0
  153. package/dist/mjs/context/IfcTypeObjectAccessor.js +18 -0
  154. package/dist/mjs/context/IfcTypeObjectAccessor.js.map +1 -0
  155. package/dist/mjs/context/NamedObjectAccessor.js +22 -0
  156. package/dist/mjs/context/NamedObjectAccessor.js.map +1 -0
  157. package/dist/mjs/context/ObjectAccessor.js +2 -0
  158. package/dist/mjs/context/ObjectAccessor.js.map +1 -0
  159. package/dist/mjs/expression/ArrayExpr.js +2 -0
  160. package/dist/mjs/expression/ArrayExpr.js.map +1 -0
  161. package/dist/mjs/expression/Expr.js +2 -0
  162. package/dist/mjs/expression/Expr.js.map +1 -0
  163. package/dist/mjs/expression/Expr0.js +4 -0
  164. package/dist/mjs/expression/Expr0.js.map +1 -0
  165. package/dist/mjs/expression/Expr1.js +6 -0
  166. package/dist/mjs/expression/Expr1.js.map +1 -0
  167. package/dist/mjs/expression/Expr2.js +7 -0
  168. package/dist/mjs/expression/Expr2.js.map +1 -0
  169. package/dist/mjs/expression/IfcExpressionEvaluationException.js +6 -0
  170. package/dist/mjs/expression/IfcExpressionEvaluationException.js.map +1 -0
  171. package/dist/mjs/expression/numeric/DivideExpr.js +14 -0
  172. package/dist/mjs/expression/numeric/DivideExpr.js.map +1 -0
  173. package/dist/mjs/expression/numeric/MinusExpr.js +14 -0
  174. package/dist/mjs/expression/numeric/MinusExpr.js.map +1 -0
  175. package/dist/mjs/expression/numeric/MultiplyByExpr.js +14 -0
  176. package/dist/mjs/expression/numeric/MultiplyByExpr.js.map +1 -0
  177. package/dist/mjs/expression/numeric/MultiplyExpr.js +14 -0
  178. package/dist/mjs/expression/numeric/MultiplyExpr.js.map +1 -0
  179. package/dist/mjs/expression/numeric/NumParenthesisExpr.js +10 -0
  180. package/dist/mjs/expression/numeric/NumParenthesisExpr.js.map +1 -0
  181. package/dist/mjs/expression/numeric/NumericLiteralExpr.js +10 -0
  182. package/dist/mjs/expression/numeric/NumericLiteralExpr.js.map +1 -0
  183. package/dist/mjs/expression/numeric/PlusExpr.js +14 -0
  184. package/dist/mjs/expression/numeric/PlusExpr.js.map +1 -0
  185. package/dist/mjs/expression/reference/AttributeReferenceExpr.js +12 -0
  186. package/dist/mjs/expression/reference/AttributeReferenceExpr.js.map +1 -0
  187. package/dist/mjs/expression/reference/ElemObjectReferenceExpr.js +10 -0
  188. package/dist/mjs/expression/reference/ElemObjectReferenceExpr.js.map +1 -0
  189. package/dist/mjs/expression/reference/NestedObjectChainEndExpr.js +10 -0
  190. package/dist/mjs/expression/reference/NestedObjectChainEndExpr.js.map +1 -0
  191. package/dist/mjs/expression/reference/NestedObjectChainExpr.js +11 -0
  192. package/dist/mjs/expression/reference/NestedObjectChainExpr.js.map +1 -0
  193. package/dist/mjs/expression/reference/ObjectReferenceExpr.js +2 -0
  194. package/dist/mjs/expression/reference/ObjectReferenceExpr.js.map +1 -0
  195. package/dist/mjs/expression/reference/PropObjectReferenceExpr.js +10 -0
  196. package/dist/mjs/expression/reference/PropObjectReferenceExpr.js.map +1 -0
  197. package/dist/mjs/expression/string/StringConcatExpr.js +11 -0
  198. package/dist/mjs/expression/string/StringConcatExpr.js.map +1 -0
  199. package/dist/mjs/expression/string/StringLiteralExpr.js +10 -0
  200. package/dist/mjs/expression/string/StringLiteralExpr.js.map +1 -0
  201. package/dist/mjs/gen/parser/IfcExpressionLexer.js +138 -0
  202. package/dist/mjs/gen/parser/IfcExpressionLexer.js.map +1 -0
  203. package/dist/mjs/gen/parser/IfcExpressionListener.js +9 -0
  204. package/dist/mjs/gen/parser/IfcExpressionListener.js.map +1 -0
  205. package/dist/mjs/gen/parser/IfcExpressionParser.js +1487 -0
  206. package/dist/mjs/gen/parser/IfcExpressionParser.js.map +1 -0
  207. package/dist/mjs/gen/parser/IfcExpressionVisitor.js +12 -0
  208. package/dist/mjs/gen/parser/IfcExpressionVisitor.js.map +1 -0
  209. package/dist/mjs/package.json +1 -0
  210. package/dist/mjs/value/BooleanValue.js +10 -0
  211. package/dist/mjs/value/BooleanValue.js.map +1 -0
  212. package/dist/mjs/value/LiteralValue.js +2 -0
  213. package/dist/mjs/value/LiteralValue.js.map +1 -0
  214. package/dist/mjs/value/LiteralValueAnyArity.js +2 -0
  215. package/dist/mjs/value/LiteralValueAnyArity.js.map +1 -0
  216. package/dist/mjs/value/LogicalValue.js +10 -0
  217. package/dist/mjs/value/LogicalValue.js.map +1 -0
  218. package/dist/mjs/value/NumericValue.js +11 -0
  219. package/dist/mjs/value/NumericValue.js.map +1 -0
  220. package/dist/mjs/value/PrimitiveValueType.js +2 -0
  221. package/dist/mjs/value/PrimitiveValueType.js.map +1 -0
  222. package/dist/mjs/value/ReferenceValue.js +10 -0
  223. package/dist/mjs/value/ReferenceValue.js.map +1 -0
  224. package/dist/mjs/value/StringValue.js +10 -0
  225. package/dist/mjs/value/StringValue.js.map +1 -0
  226. package/dist/mjs/value/Value.js +9 -0
  227. package/dist/mjs/value/Value.js.map +1 -0
  228. package/dist/value/BooleanValue.d.ts +5 -0
  229. package/dist/value/LiteralValue.d.ts +6 -0
  230. package/dist/value/LiteralValueAnyArity.d.ts +2 -0
  231. package/dist/value/LogicalValue.d.ts +5 -0
  232. package/dist/value/NumericValue.d.ts +6 -0
  233. package/dist/value/PrimitiveValueType.d.ts +2 -0
  234. package/dist/value/ReferenceValue.d.ts +5 -0
  235. package/dist/value/StringValue.d.ts +5 -0
  236. package/dist/value/Value.d.ts +6 -0
  237. package/package.json +3 -2
  238. package/dist/utils.d.ts +0 -2
@@ -0,0 +1,7 @@
1
+ export function isNullish(val) {
2
+ return typeof val === "undefined" || val === null;
3
+ }
4
+ export function isPresent(val) {
5
+ return !isNullish(val);
6
+ }
7
+ //# sourceMappingURL=IfcExpressionUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["IfcExpressionUtils.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO,OAAO,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,IAAI,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAQ;IAChC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC","file":"IfcExpressionUtils.js","sourcesContent":["export function isNullish(val: any) {\n return typeof val === \"undefined\" || val === null;\n}\n\nexport function isPresent(val: any): boolean {\n return !isNullish(val);\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import { isPresent } from "./IfcExpressionUtils.js";
2
+ export class SyntaxErrorException extends Error {
3
+ constructor(offendingSymbol, line, column, msg) {
4
+ super(`Syntax Error in line ${line}, column ${column}` +
5
+ (isPresent(msg) ? `: ${msg}` : ""));
6
+ this._offendingSymbol = offendingSymbol;
7
+ this._line = line;
8
+ this._column = column;
9
+ }
10
+ get offendingSymbol() {
11
+ return this._offendingSymbol;
12
+ }
13
+ get line() {
14
+ return this._line;
15
+ }
16
+ get column() {
17
+ return this._column;
18
+ }
19
+ }
20
+ //# sourceMappingURL=SyntaxErrorException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["SyntaxErrorException.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAEpD,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAK7C,YACE,eAAsB,EACtB,IAAY,EACZ,MAAc,EACd,GAAW;QAEX,KAAK,CACH,wBAAwB,IAAI,YAAY,MAAM,EAAE;YAC9C,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CACrC,CAAC;QACF,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;QAClB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;IACxB,CAAC;IAED,IAAI,eAAe;QACjB,OAAO,IAAI,CAAC,gBAAgB,CAAC;IAC/B,CAAC;IAED,IAAI,IAAI;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,IAAI,MAAM;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;CACF","file":"SyntaxErrorException.js","sourcesContent":["import { Token } from \"antlr4\";\nimport { isPresent } from \"./IfcExpressionUtils.js\";\n\nexport class SyntaxErrorException extends Error {\n private readonly _offendingSymbol: Token;\n private readonly _line: number;\n private readonly _column: number;\n\n constructor(\n offendingSymbol: Token,\n line: number,\n column: number,\n msg: string\n ) {\n super(\n `Syntax Error in line ${line}, column ${column}` +\n (isPresent(msg) ? `: ${msg}` : \"\")\n );\n this._offendingSymbol = offendingSymbol;\n this._line = line;\n this._column = column;\n }\n\n get offendingSymbol(): Token {\n return this._offendingSymbol;\n }\n\n get line(): number {\n return this._line;\n }\n\n get column(): number {\n return this._column;\n }\n}\n"]}
@@ -0,0 +1,30 @@
1
+ import { IfcRootObjectAccessor } from "./IfcRootObjectAccessor.js";
2
+ import { StringValue } from "../value/StringValue.js";
3
+ import { isPresent } from "../IfcExpressionUtils.js";
4
+ export class IfcElementAccessor extends IfcRootObjectAccessor {
5
+ getNestedObjectAccessor(name) {
6
+ if (name === "type") {
7
+ return this.getTypeObjectAccessor();
8
+ }
9
+ let val = this.getIfcPropertyAccessor(name);
10
+ if (isPresent(val)) {
11
+ return val;
12
+ }
13
+ return this.getIfcPropertySetAccessor(name);
14
+ }
15
+ getAttribute(name) {
16
+ switch (name) {
17
+ case "ifcClass":
18
+ return new StringValue(this.getIfcClass());
19
+ default:
20
+ return super.getAttribute(name);
21
+ }
22
+ }
23
+ listNestedObjects() {
24
+ return ["type", ...this.listIfcProperties(), ...this.listIfcPropertySets()];
25
+ }
26
+ listAttributes() {
27
+ return ["ifcClass", ...super.listAttributes()];
28
+ }
29
+ }
30
+ //# sourceMappingURL=IfcElementAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/IfcElementAccessor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAInE,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,MAAM,OAAgB,kBAAmB,SAAQ,qBAAqB;IACpE,uBAAuB,CAAC,IAAY;QAClC,IAAI,IAAI,KAAK,MAAM,EAAE;YACnB,OAAO,IAAI,CAAC,qBAAqB,EAAE,CAAC;SACrC;QACD,IAAI,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;YAClB,OAAO,GAAG,CAAC;SACZ;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,QAAQ,IAAI,EAAE;YACZ,KAAK,UAAU;gBACb,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;YAC7C;gBACE,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;SACnC;IACH,CAAC;IAID,iBAAiB;QACf,OAAO,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;IAC9E,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,UAAU,EAAE,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACjD,CAAC;CAcF","file":"context/IfcElementAccessor.js","sourcesContent":["import { ObjectAccessor } from \"./ObjectAccessor.js\";\nimport { IfcRootObjectAccessor } from \"./IfcRootObjectAccessor.js\";\nimport { IfcTypeObjectAccessor } from \"./IfcTypeObjectAccessor.js\";\nimport { IfcPropertyAccessor } from \"./IfcPropertyAccessor.js\";\nimport { LiteralValueAnyArity } from \"../value/LiteralValueAnyArity.js\";\nimport { StringValue } from \"../value/StringValue.js\";\nimport { isPresent } from \"../IfcExpressionUtils.js\";\nimport { IfcPropertySetAccessor } from \"./IfcPropertySetAccessor.js\";\n\nexport abstract class IfcElementAccessor extends IfcRootObjectAccessor {\n getNestedObjectAccessor(name: string): ObjectAccessor | undefined {\n if (name === \"type\") {\n return this.getTypeObjectAccessor();\n }\n let val = this.getIfcPropertyAccessor(name);\n if (isPresent(val)) {\n return val;\n }\n return this.getIfcPropertySetAccessor(name);\n }\n\n getAttribute(name: string): LiteralValueAnyArity | undefined {\n switch (name) {\n case \"ifcClass\":\n return new StringValue(this.getIfcClass());\n default:\n return super.getAttribute(name);\n }\n }\n\n abstract getIfcClass(): string;\n\n listNestedObjects(): Array<string> {\n return [\"type\", ...this.listIfcProperties(), ...this.listIfcPropertySets()];\n }\n\n listAttributes(): Array<string> {\n return [\"ifcClass\", ...super.listAttributes()];\n }\n\n abstract listIfcProperties(): Array<string>;\n\n abstract listIfcPropertySets(): Array<string>;\n\n abstract getTypeObjectAccessor(): IfcTypeObjectAccessor | undefined;\n abstract getIfcPropertyAccessor(\n propertyName: string\n ): IfcPropertyAccessor | undefined;\n\n abstract getIfcPropertySetAccessor(\n name: string\n ): IfcPropertySetAccessor | undefined;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=IfcExpressionContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/IfcExpressionContext.ts"],"names":[],"mappings":"","file":"context/IfcExpressionContext.js","sourcesContent":["import { IfcPropertyAccessor } from \"./IfcPropertyAccessor.js\";\nimport { IfcElementAccessor } from \"./IfcElementAccessor.js\";\n\nexport interface IfcExpressionContext {\n resolvePropRef(): IfcPropertyAccessor;\n\n resolveElemRef(): IfcElementAccessor;\n}\n"]}
@@ -0,0 +1,24 @@
1
+ import { NamedObjectAccessor } from "./NamedObjectAccessor.js";
2
+ export class IfcPropertyAccessor extends NamedObjectAccessor {
3
+ getNestedObjectAccessor(name) {
4
+ switch (name) {
5
+ case "pset":
6
+ return this.getPropertySetAccessor();
7
+ }
8
+ return undefined;
9
+ }
10
+ listNestedObjects() {
11
+ return ["pset"];
12
+ }
13
+ listAttributes() {
14
+ return ["value", ...super.listAttributes()];
15
+ }
16
+ getAttribute(name) {
17
+ switch (name) {
18
+ case "value":
19
+ return this.getValue();
20
+ }
21
+ return super.getAttribute(name);
22
+ }
23
+ }
24
+ //# sourceMappingURL=IfcPropertyAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/IfcPropertyAccessor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAI/D,MAAM,OAAgB,mBAAoB,SAAQ,mBAAmB;IACnE,uBAAuB,CAAC,IAAY;QAClC,QAAQ,IAAI,EAAE;YACZ,KAAK,MAAM;gBACT,OAAO,IAAI,CAAC,sBAAsB,EAAE,CAAC;SACxC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,iBAAiB;QACf,OAAO,CAAC,MAAM,CAAC,CAAC;IAClB,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,QAAQ,IAAI,EAAE;YACZ,KAAK,OAAO;gBACV,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;SAC1B;QACD,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;CAIF","file":"context/IfcPropertyAccessor.js","sourcesContent":["import { ObjectAccessor } from \"./ObjectAccessor.js\";\nimport { NamedObjectAccessor } from \"./NamedObjectAccessor.js\";\nimport { IfcPropertySetAccessor } from \"./IfcPropertySetAccessor.js\";\nimport { LiteralValueAnyArity } from \"../value/LiteralValueAnyArity.js\";\n\nexport abstract class IfcPropertyAccessor extends NamedObjectAccessor {\n getNestedObjectAccessor(name: string): ObjectAccessor | undefined {\n switch (name) {\n case \"pset\":\n return this.getPropertySetAccessor();\n }\n return undefined;\n }\n\n listNestedObjects(): Array<string> {\n return [\"pset\"];\n }\n\n listAttributes(): Array<string> {\n return [\"value\", ...super.listAttributes()];\n }\n\n getAttribute(name: string): LiteralValueAnyArity | undefined {\n switch (name) {\n case \"value\":\n return this.getValue();\n }\n return super.getAttribute(name);\n }\n\n protected abstract getValue(): LiteralValueAnyArity;\n protected abstract getPropertySetAccessor(): IfcPropertySetAccessor;\n}\n"]}
@@ -0,0 +1,13 @@
1
+ import { IfcRootObjectAccessor } from "./IfcRootObjectAccessor.js";
2
+ export class IfcPropertySetAccessor extends IfcRootObjectAccessor {
3
+ listAttributes() {
4
+ return [...super.listAttributes(), ...this.listIfcProperties()];
5
+ }
6
+ getAttribute(name) {
7
+ return super.getAttribute(name);
8
+ }
9
+ getNestedObjectAccessor(name) {
10
+ return this.getIfcPropertyAccessor(name);
11
+ }
12
+ }
13
+ //# sourceMappingURL=IfcPropertySetAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/IfcPropertySetAccessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAKnE,MAAM,OAAgB,sBAAuB,SAAQ,qBAAqB;IACxE,cAAc;QACZ,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,EAAE,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAClE,CAAC;IAED,YAAY,CAAC,IAAY;QACvB,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,uBAAuB,CAAC,IAAY;QAClC,OAAO,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC3C,CAAC;CAMF","file":"context/IfcPropertySetAccessor.js","sourcesContent":["import { IfcRootObjectAccessor } from \"./IfcRootObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../value/LiteralValueAnyArity.js\";\nimport { IfcPropertyAccessor } from \"./IfcPropertyAccessor.js\";\nimport { ObjectAccessor } from \"./ObjectAccessor.js\";\n\nexport abstract class IfcPropertySetAccessor extends IfcRootObjectAccessor {\n listAttributes(): Array<string> {\n return [...super.listAttributes(), ...this.listIfcProperties()];\n }\n\n getAttribute(name: string): LiteralValueAnyArity | undefined {\n return super.getAttribute(name);\n }\n\n getNestedObjectAccessor(name: string): ObjectAccessor | undefined {\n return this.getIfcPropertyAccessor(name);\n }\n\n protected abstract listIfcProperties(): Array<string>;\n protected abstract getIfcPropertyAccessor(\n name: string\n ): IfcPropertyAccessor | undefined;\n}\n"]}
@@ -0,0 +1,15 @@
1
+ import { NamedObjectAccessor } from "./NamedObjectAccessor.js";
2
+ import { StringValue } from "../value/StringValue.js";
3
+ export class IfcRootObjectAccessor extends NamedObjectAccessor {
4
+ getAttribute(name) {
5
+ switch (name) {
6
+ case "guid":
7
+ return new StringValue(this.getGuid());
8
+ }
9
+ return super.getAttribute(name);
10
+ }
11
+ listAttributes() {
12
+ return ["guid", ...super.listAttributes()];
13
+ }
14
+ }
15
+ //# sourceMappingURL=IfcRootObjectAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/IfcRootObjectAccessor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,OAAgB,qBAAsB,SAAQ,mBAAmB;IACrE,YAAY,CAAC,IAAY;QACvB,QAAQ,IAAI,EAAE;YACZ,KAAK,MAAM;gBACT,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;SAC1C;QACD,OAAO,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAID,cAAc;QACZ,OAAO,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IAC7C,CAAC;CACF","file":"context/IfcRootObjectAccessor.js","sourcesContent":["import { NamedObjectAccessor } from \"./NamedObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../value/LiteralValueAnyArity.js\";\nimport { StringValue } from \"../value/StringValue.js\";\n\nexport abstract class IfcRootObjectAccessor extends NamedObjectAccessor {\n getAttribute(name: string): LiteralValueAnyArity | undefined {\n switch (name) {\n case \"guid\":\n return new StringValue(this.getGuid());\n }\n return super.getAttribute(name);\n }\n\n abstract getGuid(): string;\n\n listAttributes(): Array<string> {\n return [\"guid\", ...super.listAttributes()];\n }\n}\n"]}
@@ -0,0 +1,18 @@
1
+ import { IfcRootObjectAccessor } from "./IfcRootObjectAccessor.js";
2
+ import { isPresent } from "../IfcExpressionUtils.js";
3
+ export class IfcTypeObjectAccessor extends IfcRootObjectAccessor {
4
+ getNestedObjectAccessor(name) {
5
+ let val = this.getIfcPropertyAccessor(name);
6
+ if (isPresent(val)) {
7
+ return val;
8
+ }
9
+ return this.getIfcPropertySetAccessor(name);
10
+ }
11
+ listNestedObjects() {
12
+ return [...this.listIfcPropertyNames(), ...this.listIfcPropertySetNames()];
13
+ }
14
+ listAttributes() {
15
+ return [...super.listAttributes()];
16
+ }
17
+ }
18
+ //# sourceMappingURL=IfcTypeObjectAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/IfcTypeObjectAccessor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAGrD,MAAM,OAAgB,qBAAsB,SAAQ,qBAAqB;IACvE,uBAAuB,CAAC,IAAY;QAClC,IAAI,GAAG,GAAG,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,CAAC;QAC5C,IAAI,SAAS,CAAC,GAAG,CAAC,EAAE;YAClB,OAAO,GAAG,CAAC;SACZ;QACD,OAAO,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IAED,iBAAiB;QACf,OAAO,CAAC,GAAG,IAAI,CAAC,oBAAoB,EAAE,EAAE,GAAG,IAAI,CAAC,uBAAuB,EAAE,CAAC,CAAC;IAC7E,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,GAAG,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACrC,CAAC;CAYF","file":"context/IfcTypeObjectAccessor.js","sourcesContent":["import { ObjectAccessor } from \"./ObjectAccessor.js\";\nimport { IfcRootObjectAccessor } from \"./IfcRootObjectAccessor.js\";\nimport { IfcPropertySetAccessor } from \"./IfcPropertySetAccessor.js\";\nimport { isPresent } from \"../IfcExpressionUtils.js\";\nimport { IfcPropertyAccessor } from \"./IfcPropertyAccessor.js\";\n\nexport abstract class IfcTypeObjectAccessor extends IfcRootObjectAccessor {\n getNestedObjectAccessor(name: string): ObjectAccessor | undefined {\n let val = this.getIfcPropertyAccessor(name);\n if (isPresent(val)) {\n return val;\n }\n return this.getIfcPropertySetAccessor(name);\n }\n\n listNestedObjects(): Array<string> {\n return [...this.listIfcPropertyNames(), ...this.listIfcPropertySetNames()];\n }\n\n listAttributes(): Array<string> {\n return [...super.listAttributes()];\n }\n\n protected abstract getIfcPropertySetAccessor(\n name: string\n ): IfcPropertySetAccessor | undefined;\n\n protected abstract getIfcPropertyAccessor(\n name: string\n ): IfcPropertyAccessor | undefined;\n\n abstract listIfcPropertySetNames(): Array<string>;\n abstract listIfcPropertyNames(): Array<string>;\n}\n"]}
@@ -0,0 +1,22 @@
1
+ import { StringValue } from "../value/StringValue.js";
2
+ export class NamedObjectAccessor {
3
+ getAttribute(name) {
4
+ switch (name) {
5
+ case "name":
6
+ return new StringValue(this.getName());
7
+ case "description":
8
+ return new StringValue(this.getDescription());
9
+ }
10
+ return undefined;
11
+ }
12
+ listAttributes() {
13
+ return ["name", "description"];
14
+ }
15
+ getNestedObjectAccessor(name) {
16
+ return undefined;
17
+ }
18
+ listNestedObjects() {
19
+ return [];
20
+ }
21
+ }
22
+ //# sourceMappingURL=NamedObjectAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/NamedObjectAccessor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEtD,MAAM,OAAgB,mBAAmB;IAKvC,YAAY,CAAC,IAAY;QACvB,QAAQ,IAAI,EAAE;YACZ,KAAK,MAAM;gBACT,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;YACzC,KAAK,aAAa;gBAChB,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;SACjD;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,cAAc;QACZ,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACjC,CAAC;IAED,uBAAuB,CAAC,IAAY;QAClC,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,iBAAiB;QACf,OAAO,EAAE,CAAC;IACZ,CAAC;CACF","file":"context/NamedObjectAccessor.js","sourcesContent":["import { ObjectAccessor } from \"./ObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../value/LiteralValueAnyArity.js\";\nimport { StringValue } from \"../value/StringValue.js\";\n\nexport abstract class NamedObjectAccessor implements ObjectAccessor {\n abstract getName(): string;\n\n abstract getDescription(): string;\n\n getAttribute(name: string): LiteralValueAnyArity | undefined {\n switch (name) {\n case \"name\":\n return new StringValue(this.getName());\n case \"description\":\n return new StringValue(this.getDescription());\n }\n return undefined;\n }\n\n listAttributes(): Array<string> {\n return [\"name\", \"description\"];\n }\n\n getNestedObjectAccessor(name: string): ObjectAccessor | undefined {\n return undefined;\n }\n\n listNestedObjects(): Array<string> {\n return [];\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ObjectAccessor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["context/ObjectAccessor.ts"],"names":[],"mappings":"","file":"context/ObjectAccessor.js","sourcesContent":["import { LiteralValueAnyArity } from \"../value/LiteralValueAnyArity.js\";\n\nexport interface ObjectAccessor {\n /**\n * If there is a nested object with the specified name (.e.g the 'pset' in $prop.pset),\n * return an ObjectAccessor for it.\n * @param name\n */\n getNestedObjectAccessor(name: string): ObjectAccessor | undefined;\n\n /**\n * If the object has the attribute of the specified name, return it as (an array of (array of)) LiteralValue.\n * @param name\n */\n getAttribute(name: string): LiteralValueAnyArity | undefined;\n\n listNestedObjects(): Array<string>;\n\n listAttributes(): Array<string>;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ArrayExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/ArrayExpr.ts"],"names":[],"mappings":"","file":"expression/ArrayExpr.js","sourcesContent":["export interface ArrayExpr<T> {\n evaluate(): Array<T>;\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=Expr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/Expr.ts"],"names":[],"mappings":"","file":"expression/Expr.js","sourcesContent":["import { IfcExpressionContext } from \"../context/IfcExpressionContext.js\";\n\nexport interface Expr<T> {\n evaluate(ctx: IfcExpressionContext): T;\n}\n"]}
@@ -0,0 +1,4 @@
1
+ export class Expr0 {
2
+ constructor() { }
3
+ }
4
+ //# sourceMappingURL=Expr0.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/Expr0.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,KAAK;IACzB,gBAAyB,CAAC;CAG3B","file":"expression/Expr0.js","sourcesContent":["import { Expr } from \"./Expr.js\";\nimport { IfcExpressionContext } from \"../context/IfcExpressionContext.js\";\n\nexport abstract class Expr0<E> implements Expr<E> {\n protected constructor() {}\n\n abstract evaluate(ctx: IfcExpressionContext): E;\n}\n"]}
@@ -0,0 +1,6 @@
1
+ export class Expr1 {
2
+ constructor(value) {
3
+ this.value = value;
4
+ }
5
+ }
6
+ //# sourceMappingURL=Expr1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/Expr1.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,KAAK;IAGzB,YAAsB,KAAQ;QAC5B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CAGF","file":"expression/Expr1.js","sourcesContent":["import { Expr } from \"./Expr.js\";\nimport { IfcExpressionContext } from \"../context/IfcExpressionContext.js\";\n\nexport abstract class Expr1<V, E> implements Expr<E> {\n readonly value: V;\n\n protected constructor(value: V) {\n this.value = value;\n }\n\n abstract evaluate(ctx: IfcExpressionContext): E;\n}\n"]}
@@ -0,0 +1,7 @@
1
+ export class Expr2 {
2
+ constructor(left, right) {
3
+ this.left = left;
4
+ this.right = right;
5
+ }
6
+ }
7
+ //# sourceMappingURL=Expr2.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/Expr2.ts"],"names":[],"mappings":"AAGA,MAAM,OAAgB,KAAK;IAIzB,YAAsB,IAAO,EAAE,KAAQ;QACrC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;CAGF","file":"expression/Expr2.js","sourcesContent":["import { Expr } from \"./Expr.js\";\nimport { IfcExpressionContext } from \"../context/IfcExpressionContext.js\";\n\nexport abstract class Expr2<L, R, E> implements Expr<E> {\n readonly left: L;\n readonly right: R;\n\n protected constructor(left: L, right: R) {\n this.left = left;\n this.right = right;\n }\n\n abstract evaluate(ctx: IfcExpressionContext): E;\n}\n"]}
@@ -0,0 +1,6 @@
1
+ export class IfcExpressionEvaluationException extends Error {
2
+ constructor(message) {
3
+ super(message);
4
+ }
5
+ }
6
+ //# sourceMappingURL=IfcExpressionEvaluationException.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/IfcExpressionEvaluationException.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,gCAAiC,SAAQ,KAAK;IACzD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;IACjB,CAAC;CACF","file":"expression/IfcExpressionEvaluationException.js","sourcesContent":["export class IfcExpressionEvaluationException extends Error {\n constructor(message: string) {\n super(message);\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ import { NumericValue } from "../../value/NumericValue.js";
3
+ export class DivideExpr extends Expr2 {
4
+ constructor(left, right) {
5
+ super(left, right);
6
+ }
7
+ evaluate(ctx) {
8
+ return NumericValue.of(this.left
9
+ .evaluate(ctx)
10
+ .getValue()
11
+ .dividedBy(this.right.evaluate(ctx).getValue()));
12
+ }
13
+ }
14
+ //# sourceMappingURL=DivideExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/DivideExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,OAAO,UAAW,SAAQ,KAI/B;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,YAAY,CAAC,EAAE,CACpB,IAAI,CAAC,IAAI;aACN,QAAQ,CAAC,GAAG,CAAC;aACb,QAAQ,EAAE;aACV,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAClD,CAAC;IACJ,CAAC;CACF","file":"expression/numeric/DivideExpr.js","sourcesContent":["import { Expr2 } from \"../Expr2.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class DivideExpr extends Expr2<\n Expr<NumericValue>,\n Expr<NumericValue>,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return NumericValue.of(\n this.left\n .evaluate(ctx)\n .getValue()\n .dividedBy(this.right.evaluate(ctx).getValue())\n );\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ import { NumericValue } from "../../value/NumericValue.js";
3
+ export class MinusExpr extends Expr2 {
4
+ constructor(left, right) {
5
+ super(left, right);
6
+ }
7
+ evaluate(ctx) {
8
+ return NumericValue.of(this.left
9
+ .evaluate(ctx)
10
+ .getValue()
11
+ .minus(this.right.evaluate(ctx).getValue()));
12
+ }
13
+ }
14
+ //# sourceMappingURL=MinusExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/MinusExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,OAAO,SAAU,SAAQ,KAI9B;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,YAAY,CAAC,EAAE,CACpB,IAAI,CAAC,IAAI;aACN,QAAQ,CAAC,GAAG,CAAC;aACb,QAAQ,EAAE;aACV,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC9C,CAAC;IACJ,CAAC;CACF","file":"expression/numeric/MinusExpr.js","sourcesContent":["import { Expr2 } from \"../Expr2.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class MinusExpr extends Expr2<\n Expr<NumericValue>,\n Expr<NumericValue>,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return NumericValue.of(\n this.left\n .evaluate(ctx)\n .getValue()\n .minus(this.right.evaluate(ctx).getValue())\n );\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ import { NumericValue } from "../../value/NumericValue.js";
3
+ export class PlusExpr extends Expr2 {
4
+ constructor(left, right) {
5
+ super(left, right);
6
+ }
7
+ evaluate(ctx) {
8
+ return NumericValue.of(this.left
9
+ .evaluate(ctx)
10
+ .getValue()
11
+ .mul(this.right.evaluate(ctx).getValue()));
12
+ }
13
+ }
14
+ //# sourceMappingURL=MultiplyByExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/MultiplyByExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,OAAO,QAAS,SAAQ,KAI7B;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,YAAY,CAAC,EAAE,CACpB,IAAI,CAAC,IAAI;aACN,QAAQ,CAAC,GAAG,CAAC;aACb,QAAQ,EAAE;aACV,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC5C,CAAC;IACJ,CAAC;CACF","file":"expression/numeric/MultiplyByExpr.js","sourcesContent":["import { Expr2 } from \"../Expr2.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class PlusExpr extends Expr2<\n Expr<NumericValue>,\n Expr<NumericValue>,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return NumericValue.of(\n this.left\n .evaluate(ctx)\n .getValue()\n .mul(this.right.evaluate(ctx).getValue())\n );\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ import { NumericValue } from "../../value/NumericValue.js";
3
+ export class MultiplyExpr extends Expr2 {
4
+ constructor(left, right) {
5
+ super(left, right);
6
+ }
7
+ evaluate(ctx) {
8
+ return NumericValue.of(this.left
9
+ .evaluate(ctx)
10
+ .getValue()
11
+ .mul(this.right.evaluate(ctx).getValue()));
12
+ }
13
+ }
14
+ //# sourceMappingURL=MultiplyExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/MultiplyExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,OAAO,YAAa,SAAQ,KAIjC;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,YAAY,CAAC,EAAE,CACpB,IAAI,CAAC,IAAI;aACN,QAAQ,CAAC,GAAG,CAAC;aACb,QAAQ,EAAE;aACV,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC5C,CAAC;IACJ,CAAC;CACF","file":"expression/numeric/MultiplyExpr.js","sourcesContent":["import { Expr2 } from \"../Expr2.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class MultiplyExpr extends Expr2<\n Expr<NumericValue>,\n Expr<NumericValue>,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return NumericValue.of(\n this.left\n .evaluate(ctx)\n .getValue()\n .mul(this.right.evaluate(ctx).getValue())\n );\n }\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { Expr1 } from "../Expr1.js";
2
+ export class NumParenthesisExpr extends Expr1 {
3
+ constructor(expression) {
4
+ super(expression);
5
+ }
6
+ evaluate(ctx) {
7
+ return this.value.evaluate(ctx);
8
+ }
9
+ }
10
+ //# sourceMappingURL=NumParenthesisExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/NumParenthesisExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAKpC,MAAM,OAAO,kBAAmB,SAAQ,KAGvC;IACC,YAAY,UAA8B;QACxC,KAAK,CAAC,UAAU,CAAC,CAAC;IACpB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IAClC,CAAC;CACF","file":"expression/numeric/NumParenthesisExpr.js","sourcesContent":["import { Expr1 } from \"../Expr1.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class NumParenthesisExpr extends Expr1<\n Expr<NumericValue>,\n NumericValue\n> {\n constructor(expression: Expr<NumericValue>) {\n super(expression);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return this.value.evaluate(ctx);\n }\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { Expr1 } from "../Expr1.js";
2
+ export class NumericLiteralExpr extends Expr1 {
3
+ constructor(value) {
4
+ super(value);
5
+ }
6
+ evaluate(ctx) {
7
+ return this.value;
8
+ }
9
+ }
10
+ //# sourceMappingURL=NumericLiteralExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/NumericLiteralExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,MAAM,OAAO,kBAAmB,SAAQ,KAAiC;IACvE,YAAY,KAAmB;QAC7B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF","file":"expression/numeric/NumericLiteralExpr.js","sourcesContent":["import { Expr1 } from \"../Expr1.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class NumericLiteralExpr extends Expr1<NumericValue, NumericValue> {\n constructor(value: NumericValue) {\n super(value);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return this.value;\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ import { NumericValue } from "../../value/NumericValue.js";
3
+ export class PlusExpr extends Expr2 {
4
+ constructor(left, right) {
5
+ super(left, right);
6
+ }
7
+ evaluate(ctx) {
8
+ return NumericValue.of(this.left
9
+ .evaluate(ctx)
10
+ .getValue()
11
+ .plus(this.right.evaluate(ctx).getValue()));
12
+ }
13
+ }
14
+ //# sourceMappingURL=PlusExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/numeric/PlusExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,MAAM,OAAO,QAAS,SAAQ,KAI7B;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,YAAY,CAAC,EAAE,CACpB,IAAI,CAAC,IAAI;aACN,QAAQ,CAAC,GAAG,CAAC;aACb,QAAQ,EAAE;aACV,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAC7C,CAAC;IACJ,CAAC;CACF","file":"expression/numeric/PlusExpr.js","sourcesContent":["import { Expr2 } from \"../Expr2.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { NumericValue } from \"../../value/NumericValue.js\";\n\nexport class PlusExpr extends Expr2<\n Expr<NumericValue>,\n Expr<NumericValue>,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): NumericValue {\n return NumericValue.of(\n this.left\n .evaluate(ctx)\n .getValue()\n .plus(this.right.evaluate(ctx).getValue())\n );\n }\n}\n"]}
@@ -0,0 +1,12 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ export class AttributeReferenceExpr extends Expr2 {
3
+ constructor(left, right) {
4
+ super(left, right);
5
+ }
6
+ evaluate(ctx) {
7
+ const oa = this.left.evaluate(ctx);
8
+ const valueAccessor = this.right.evaluate(ctx);
9
+ return valueAccessor(oa);
10
+ }
11
+ }
12
+ //# sourceMappingURL=AttributeReferenceExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/reference/AttributeReferenceExpr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAMpC,MAAM,OAAO,sBAAuB,SAAQ,KAI3C;IACC,YAAY,IAAyB,EAAE,KAA4B;QACjE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,MAAM,EAAE,GAAmB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC/C,OAAO,aAAa,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACF","file":"expression/reference/AttributeReferenceExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { Expr2 } from \"../Expr2.js\";\nimport { NestedObjectChainExpr } from \"./NestedObjectChainExpr.js\";\nimport { ObjectReferenceExpr } from \"./ObjectReferenceExpr.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\n\nexport class AttributeReferenceExpr extends Expr2<\n ObjectReferenceExpr,\n NestedObjectChainExpr,\n LiteralValueAnyArity\n> {\n constructor(left: ObjectReferenceExpr, right: NestedObjectChainExpr) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): LiteralValueAnyArity {\n const oa: ObjectAccessor = this.left.evaluate(ctx);\n const valueAccessor = this.right.evaluate(ctx);\n return valueAccessor(oa);\n }\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { Expr0 } from "../Expr0.js";
2
+ export class ElemObjectReferenceExpr extends Expr0 {
3
+ constructor() {
4
+ super();
5
+ }
6
+ evaluate(ctx) {
7
+ return ctx.resolveElemRef();
8
+ }
9
+ }
10
+ //# sourceMappingURL=ElemObjectReferenceExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/reference/ElemObjectReferenceExpr.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEpC,MAAM,OAAO,uBACX,SAAQ,KAAqB;IAG7B;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,GAAG,CAAC,cAAc,EAAE,CAAC;IAC9B,CAAC;CACF","file":"expression/reference/ElemObjectReferenceExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { ObjectReferenceExpr } from \"./ObjectReferenceExpr.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { Expr0 } from \"../Expr0.js\";\n\nexport class ElemObjectReferenceExpr\n extends Expr0<ObjectAccessor>\n implements ObjectReferenceExpr\n{\n constructor() {\n super();\n }\n\n evaluate(ctx: IfcExpressionContext): ObjectAccessor {\n return ctx.resolveElemRef();\n }\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { Expr1 } from "../Expr1.js";
2
+ export class NestedObjectChainEndExpr extends Expr1 {
3
+ constructor(value) {
4
+ super(value);
5
+ }
6
+ evaluate(ctx) {
7
+ return (oa) => oa.getAttribute(this.value);
8
+ }
9
+ }
10
+ //# sourceMappingURL=NestedObjectChainEndExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/reference/NestedObjectChainEndExpr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,MAAM,OAAO,wBAAyB,SAAQ,KAG7C;IACC,YAAY,KAAa;QACvB,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED,QAAQ,CACN,GAAyB;QAEzB,OAAO,CAAC,EAAkB,EAAE,EAAE,CAAC,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC7D,CAAC;CACF","file":"expression/reference/NestedObjectChainEndExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { Expr1 } from \"../Expr1.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\n\nexport class NestedObjectChainEndExpr extends Expr1<\n string,\n (oa: ObjectAccessor) => LiteralValueAnyArity\n> {\n constructor(value: string) {\n super(value);\n }\n\n evaluate(\n ctx: IfcExpressionContext\n ): (oa: ObjectAccessor) => LiteralValueAnyArity {\n return (oa: ObjectAccessor) => oa.getAttribute(this.value);\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ export class NestedObjectChainExpr extends Expr2 {
3
+ constructor(left, right) {
4
+ super(left, right);
5
+ }
6
+ evaluate(ctx) {
7
+ const nextLink = this.right.evaluate(ctx);
8
+ return (oa) => nextLink(oa.getNestedObjectAccessor(this.left));
9
+ }
10
+ }
11
+ //# sourceMappingURL=NestedObjectChainExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/reference/NestedObjectChainExpr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAKpC,MAAM,OAAO,qBAAsB,SAAQ,KAI1C;IACC,YAAY,IAAY,EAAE,KAA4B;QACpD,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CACN,GAAyB;QAEzB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1C,OAAO,CAAC,EAAkB,EAAE,EAAE,CAC5B,QAAQ,CAAC,EAAE,CAAC,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACpD,CAAC;CACF","file":"expression/reference/NestedObjectChainExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { Expr2 } from \"../Expr2.js\";\nimport { NestedObjectChainEndExpr } from \"./NestedObjectChainEndExpr.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\n\nexport class NestedObjectChainExpr extends Expr2<\n string,\n NestedObjectChainExpr | NestedObjectChainEndExpr,\n (oa: ObjectAccessor) => LiteralValueAnyArity\n> {\n constructor(left: string, right: NestedObjectChainExpr) {\n super(left, right);\n }\n\n evaluate(\n ctx: IfcExpressionContext\n ): (oa: ObjectAccessor) => LiteralValueAnyArity {\n const nextLink = this.right.evaluate(ctx);\n return (oa: ObjectAccessor) =>\n nextLink(oa.getNestedObjectAccessor(this.left));\n }\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=ObjectReferenceExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/reference/ObjectReferenceExpr.ts"],"names":[],"mappings":"","file":"expression/reference/ObjectReferenceExpr.js","sourcesContent":["import { Expr } from \"../Expr.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\n\nexport interface ObjectReferenceExpr extends Expr<ObjectAccessor> {}\n"]}
@@ -0,0 +1,10 @@
1
+ import { Expr0 } from "../Expr0.js";
2
+ export class PropObjectReferenceExpr extends Expr0 {
3
+ constructor() {
4
+ super();
5
+ }
6
+ evaluate(ctx) {
7
+ return ctx.resolvePropRef();
8
+ }
9
+ }
10
+ //# sourceMappingURL=PropObjectReferenceExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/reference/PropObjectReferenceExpr.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,MAAM,OAAO,uBACX,SAAQ,KAAqB;IAG7B;QACE,KAAK,EAAE,CAAC;IACV,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,GAAG,CAAC,cAAc,EAAE,CAAC;IAC9B,CAAC;CACF","file":"expression/reference/PropObjectReferenceExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { ObjectReferenceExpr } from \"./ObjectReferenceExpr.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\n\nexport class PropObjectReferenceExpr\n extends Expr0<ObjectAccessor>\n implements ObjectReferenceExpr\n{\n constructor() {\n super();\n }\n\n evaluate(ctx: IfcExpressionContext): ObjectAccessor {\n return ctx.resolvePropRef();\n }\n}\n"]}
@@ -0,0 +1,11 @@
1
+ import { Expr2 } from "../Expr2.js";
2
+ import { StringValue } from "../../value/StringValue.js";
3
+ export class StringConcatExpr extends Expr2 {
4
+ constructor(left, right) {
5
+ super(left, right);
6
+ }
7
+ evaluate(ctx) {
8
+ return StringValue.of(this.left.evaluate(ctx).getValue() + this.right.evaluate(ctx).getValue());
9
+ }
10
+ }
11
+ //# sourceMappingURL=StringConcatExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/string/StringConcatExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAEzD,MAAM,OAAO,gBAAiB,SAAQ,KAIrC;IACC,YAAY,IAAuB,EAAE,KAAwB;QAC3D,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACrB,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,WAAW,CAAC,EAAE,CACnB,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CACzE,CAAC;IACJ,CAAC;CACF","file":"expression/string/StringConcatExpr.js","sourcesContent":["import { Expr2 } from \"../Expr2.js\";\nimport { Expr } from \"../Expr.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { StringValue } from \"../../value/StringValue.js\";\n\nexport class StringConcatExpr extends Expr2<\n Expr<StringValue>,\n Expr<StringValue>,\n StringValue\n> {\n constructor(left: Expr<StringValue>, right: Expr<StringValue>) {\n super(left, right);\n }\n\n evaluate(ctx: IfcExpressionContext): StringValue {\n return StringValue.of(\n this.left.evaluate(ctx).getValue() + this.right.evaluate(ctx).getValue()\n );\n }\n}\n"]}
@@ -0,0 +1,10 @@
1
+ import { Expr1 } from "../Expr1.js";
2
+ export class StringLiteralExpr extends Expr1 {
3
+ constructor(value) {
4
+ super(value);
5
+ }
6
+ evaluate(ctx) {
7
+ return this.value;
8
+ }
9
+ }
10
+ //# sourceMappingURL=StringLiteralExpr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["expression/string/StringLiteralExpr.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAIpC,MAAM,OAAO,iBAAkB,SAAQ,KAA+B;IACpE,YAAY,KAAkB;QAC5B,KAAK,CAAC,KAAK,CAAC,CAAC;IACf,CAAC;IAED,QAAQ,CAAC,GAAyB;QAChC,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF","file":"expression/string/StringLiteralExpr.js","sourcesContent":["import { Expr1 } from \"../Expr1.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { StringValue } from \"../../value/StringValue.js\";\n\nexport class StringLiteralExpr extends Expr1<StringValue, StringValue> {\n constructor(value: StringValue) {\n super(value);\n }\n\n evaluate(ctx: IfcExpressionContext): StringValue {\n return this.value;\n }\n}\n"]}