ifc-expressions 0.3.1 → 0.3.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 (98) hide show
  1. package/dist/cjs/expression/Expr0.js +4 -4
  2. package/dist/cjs/expression/Expr0.js.map +1 -1
  3. package/dist/cjs/expression/Expr1.js +10 -10
  4. package/dist/cjs/expression/Expr1.js.map +1 -1
  5. package/dist/cjs/expression/Expr2.js +13 -13
  6. package/dist/cjs/expression/Expr2.js.map +1 -1
  7. package/dist/cjs/expression/Expr2LeftBeforeRight.js +15 -15
  8. package/dist/cjs/expression/Expr2LeftBeforeRight.js.map +1 -1
  9. package/dist/cjs/expression/ExprBase.js +3 -3
  10. package/dist/cjs/expression/ExprBase.js.map +1 -1
  11. package/dist/cjs/expression/ExprEvalResult.js +2 -2
  12. package/dist/cjs/expression/ExprEvalResult.js.map +1 -1
  13. package/dist/cjs/expression/LiteralExpr.js +4 -4
  14. package/dist/cjs/expression/LiteralExpr.js.map +1 -1
  15. package/dist/cjs/expression/function/Func.js +9 -9
  16. package/dist/cjs/expression/function/Func.js.map +1 -1
  17. package/dist/cjs/expression/function/FuncArg.js +2 -2
  18. package/dist/cjs/expression/function/FuncArg.js.map +1 -1
  19. package/dist/cjs/expression/function/FunctionExpr.js +5 -5
  20. package/dist/cjs/expression/function/FunctionExpr.js.map +1 -1
  21. package/dist/cjs/expression/function/IfcExpressionFunctions.js +4 -4
  22. package/dist/cjs/expression/function/IfcExpressionFunctions.js.map +1 -1
  23. package/dist/cjs/expression/function/arg/FuncArgBase.js +2 -2
  24. package/dist/cjs/expression/function/arg/FuncArgBase.js.map +1 -1
  25. package/dist/cjs/expression/function/arg/FuncArgInt.js +5 -5
  26. package/dist/cjs/expression/function/arg/FuncArgInt.js.map +1 -1
  27. package/dist/cjs/expression/function/arg/FuncArgNumeric.js +4 -4
  28. package/dist/cjs/expression/function/arg/FuncArgNumeric.js.map +1 -1
  29. package/dist/cjs/expression/function/impl/MAP.js +6 -6
  30. package/dist/cjs/expression/function/impl/MAP.js.map +1 -1
  31. package/dist/cjs/expression/numeric/DivideExpr.js +2 -2
  32. package/dist/cjs/expression/numeric/DivideExpr.js.map +1 -1
  33. package/dist/cjs/expression/reference/AttributeReferenceExpr.js +7 -7
  34. package/dist/cjs/expression/reference/AttributeReferenceExpr.js.map +1 -1
  35. package/dist/cjs/expression/reference/NestedObjectChainEndExpr.js +9 -9
  36. package/dist/cjs/expression/reference/NestedObjectChainEndExpr.js.map +1 -1
  37. package/dist/cjs/expression/reference/NestedObjectChainExpr.js +14 -14
  38. package/dist/cjs/expression/reference/NestedObjectChainExpr.js.map +1 -1
  39. package/dist/cjs/expression/structure/ArrayExpr.js +3 -3
  40. package/dist/cjs/expression/structure/ArrayExpr.js.map +1 -1
  41. package/dist/expression/Expr0.d.ts +2 -2
  42. package/dist/expression/Expr1.d.ts +2 -2
  43. package/dist/expression/Expr2.d.ts +2 -2
  44. package/dist/expression/Expr2LeftBeforeRight.d.ts +2 -2
  45. package/dist/expression/ExprBase.d.ts +1 -1
  46. package/dist/expression/LiteralExpr.d.ts +2 -2
  47. package/dist/expression/function/Func.d.ts +1 -1
  48. package/dist/expression/function/IfcExpressionFunctions.d.ts +1 -1
  49. package/dist/expression/function/arg/FuncArgBase.d.ts +1 -1
  50. package/dist/expression/function/arg/FuncArgInt.d.ts +2 -2
  51. package/dist/expression/function/arg/FuncArgNumeric.d.ts +2 -2
  52. package/dist/expression/function/impl/MAP.d.ts +1 -1
  53. package/dist/expression/numeric/DivideExpr.d.ts +1 -1
  54. package/dist/expression/reference/AttributeReferenceExpr.d.ts +1 -1
  55. package/dist/expression/reference/NestedObjectChainEndExpr.d.ts +1 -1
  56. package/dist/expression/reference/NestedObjectChainExpr.d.ts +1 -1
  57. package/dist/expression/structure/ArrayExpr.d.ts +1 -1
  58. package/dist/mjs/expression/Expr0.js +2 -2
  59. package/dist/mjs/expression/Expr0.js.map +1 -1
  60. package/dist/mjs/expression/Expr1.js +3 -3
  61. package/dist/mjs/expression/Expr1.js.map +1 -1
  62. package/dist/mjs/expression/Expr2.js +3 -3
  63. package/dist/mjs/expression/Expr2.js.map +1 -1
  64. package/dist/mjs/expression/Expr2LeftBeforeRight.js +3 -3
  65. package/dist/mjs/expression/Expr2LeftBeforeRight.js.map +1 -1
  66. package/dist/mjs/expression/ExprBase.js +1 -1
  67. package/dist/mjs/expression/ExprBase.js.map +1 -1
  68. package/dist/mjs/expression/ExprEvalResult.js +1 -1
  69. package/dist/mjs/expression/ExprEvalResult.js.map +1 -1
  70. package/dist/mjs/expression/LiteralExpr.js +2 -2
  71. package/dist/mjs/expression/LiteralExpr.js.map +1 -1
  72. package/dist/mjs/expression/function/Func.js +2 -2
  73. package/dist/mjs/expression/function/Func.js.map +1 -1
  74. package/dist/mjs/expression/function/FuncArg.js +1 -1
  75. package/dist/mjs/expression/function/FuncArg.js.map +1 -1
  76. package/dist/mjs/expression/function/FunctionExpr.js +2 -2
  77. package/dist/mjs/expression/function/FunctionExpr.js.map +1 -1
  78. package/dist/mjs/expression/function/IfcExpressionFunctions.js +2 -2
  79. package/dist/mjs/expression/function/IfcExpressionFunctions.js.map +1 -1
  80. package/dist/mjs/expression/function/arg/FuncArgBase.js +1 -1
  81. package/dist/mjs/expression/function/arg/FuncArgBase.js.map +1 -1
  82. package/dist/mjs/expression/function/arg/FuncArgInt.js +2 -2
  83. package/dist/mjs/expression/function/arg/FuncArgInt.js.map +1 -1
  84. package/dist/mjs/expression/function/arg/FuncArgNumeric.js +2 -2
  85. package/dist/mjs/expression/function/arg/FuncArgNumeric.js.map +1 -1
  86. package/dist/mjs/expression/function/impl/MAP.js +1 -1
  87. package/dist/mjs/expression/function/impl/MAP.js.map +1 -1
  88. package/dist/mjs/expression/numeric/DivideExpr.js +1 -1
  89. package/dist/mjs/expression/numeric/DivideExpr.js.map +1 -1
  90. package/dist/mjs/expression/reference/AttributeReferenceExpr.js +2 -2
  91. package/dist/mjs/expression/reference/AttributeReferenceExpr.js.map +1 -1
  92. package/dist/mjs/expression/reference/NestedObjectChainEndExpr.js +3 -3
  93. package/dist/mjs/expression/reference/NestedObjectChainEndExpr.js.map +1 -1
  94. package/dist/mjs/expression/reference/NestedObjectChainExpr.js +3 -3
  95. package/dist/mjs/expression/reference/NestedObjectChainExpr.js.map +1 -1
  96. package/dist/mjs/expression/structure/ArrayExpr.js +1 -1
  97. package/dist/mjs/expression/structure/ArrayExpr.js.map +1 -1
  98. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/function/FunctionExpr.ts"],"names":[],"mappings":";;;AAEA,4DAAwE;AAExE,gDAA0C;AAC1C,0CAAoC;AAGpC,qEAAkE;AAClE,iEAAqD;AAErD,MAAa,YAAa,SAAQ,gBAA2B;IAK3D,YAAY,IAAY,EAAE,QAAmC;QAC3D,KAAK,CAAC,sBAAQ,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,sBAAsB,GAAG,+CAAsB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,IAAA,8BAAS,EAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE;YAC1C,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SACnD;IACH,CAAC;IAES,UAAU,CAClB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC5D,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACpC;QACD,MAAM,gBAAgB,GAAG,+CAAsB,CAAC,aAAa,CAC3D,IAAI,CAAC,IAAI,EACT,iBAAiB,CAClB,CAAC;QACF,IAAI,IAAA,qCAAiB,EAAC,gBAAgB,CAAC,EAAE;YACvC,OAAO,gBAAgB,CAAC,MAAM,CAAC;SAChC;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AAjCD,oCAiCC","file":"expression/function/FunctionExpr.js","sourcesContent":["import { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { ExprEvalError, isExprEvalSuccess } from \"../ExprEvalResult.js\";\nimport { Expr } from \"../Expr.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { LiteralValue } from \"../../value/LiteralValue.js\";\nimport { Func } from \"./Func.js\";\nimport { IfcExpressionFunctions } from \"./IfcExpressionFunctions\";\nimport { isNullish } from \"../../IfcExpressionUtils\";\n\nexport class FunctionExpr extends Expr0<LiteralValueAnyArity> {\n private name: string;\n private elements: Array<Expr<LiteralValue>>;\n private functionImplementation: Func;\n\n constructor(name: string, elements: Array<Expr<LiteralValue>>) {\n super(ExprKind.ARRAY);\n this.name = name;\n this.elements = elements;\n this.functionImplementation = IfcExpressionFunctions.getFunction(this.name);\n if (isNullish(this.functionImplementation)) {\n throw new Error(`No such function: ${this.name}`);\n }\n }\n\n protected doEvaluate(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): ExprEvalError | LiteralValueAnyArity {\n const functionArguments = [];\n for (let i = 0; i < this.elements.length; i++) {\n const evalResult = this.elements[i].evaluate(ctx, localCtx);\n functionArguments.push(evalResult);\n }\n const evaluationResult = IfcExpressionFunctions.applyFunction(\n this.name,\n functionArguments\n );\n if (isExprEvalSuccess(evaluationResult)) {\n return evaluationResult.result;\n }\n return evaluationResult;\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/function/FunctionExpr.ts"],"names":[],"mappings":";;;AAEA,4DAAwE;AAExE,gDAA0C;AAC1C,0CAAoC;AAGpC,2EAAqE;AACrE,uEAAwD;AAExD,MAAa,YAAa,SAAQ,gBAA2B;IAK3D,YAAY,IAAY,EAAE,QAAmC;QAC3D,KAAK,CAAC,sBAAQ,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,sBAAsB,GAAG,kDAAsB,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5E,IAAI,IAAA,iCAAS,EAAC,IAAI,CAAC,sBAAsB,CAAC,EAAE;YAC1C,MAAM,IAAI,KAAK,CAAC,qBAAqB,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;SACnD;IACH,CAAC;IAES,UAAU,CAClB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,iBAAiB,GAAG,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC5D,iBAAiB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACpC;QACD,MAAM,gBAAgB,GAAG,kDAAsB,CAAC,aAAa,CAC3D,IAAI,CAAC,IAAI,EACT,iBAAiB,CAClB,CAAC;QACF,IAAI,IAAA,qCAAiB,EAAC,gBAAgB,CAAC,EAAE;YACvC,OAAO,gBAAgB,CAAC,MAAM,CAAC;SAChC;QACD,OAAO,gBAAgB,CAAC;IAC1B,CAAC;CACF;AAjCD,oCAiCC","file":"expression/function/FunctionExpr.js","sourcesContent":["import { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { ExprEvalError, isExprEvalSuccess } from \"../ExprEvalResult.js\";\nimport { Expr } from \"../Expr.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { LiteralValue } from \"../../value/LiteralValue.js\";\nimport { Func } from \"./Func.js\";\nimport { IfcExpressionFunctions } from \"./IfcExpressionFunctions.js\";\nimport { isNullish } from \"../../IfcExpressionUtils.js\";\n\nexport class FunctionExpr extends Expr0<LiteralValueAnyArity> {\n private name: string;\n private elements: Array<Expr<LiteralValue>>;\n private functionImplementation: Func;\n\n constructor(name: string, elements: Array<Expr<LiteralValue>>) {\n super(ExprKind.ARRAY);\n this.name = name;\n this.elements = elements;\n this.functionImplementation = IfcExpressionFunctions.getFunction(this.name);\n if (isNullish(this.functionImplementation)) {\n throw new Error(`No such function: ${this.name}`);\n }\n }\n\n protected doEvaluate(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): ExprEvalError | LiteralValueAnyArity {\n const functionArguments = [];\n for (let i = 0; i < this.elements.length; i++) {\n const evalResult = this.elements[i].evaluate(ctx, localCtx);\n functionArguments.push(evalResult);\n }\n const evaluationResult = IfcExpressionFunctions.applyFunction(\n this.name,\n functionArguments\n );\n if (isExprEvalSuccess(evaluationResult)) {\n return evaluationResult.result;\n }\n return evaluationResult;\n }\n}\n"]}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.IfcExpressionFunctions = void 0;
4
- const ExprEvalResult_1 = require("../ExprEvalResult");
5
- const IfcExpressionUtils_1 = require("../../IfcExpressionUtils");
4
+ const ExprEvalResult_js_1 = require("../ExprEvalResult.js");
5
+ const IfcExpressionUtils_js_1 = require("../../IfcExpressionUtils.js");
6
6
  const ExprKind_js_1 = require("../ExprKind.js");
7
7
  const MAP_js_1 = require("./impl/MAP.js");
8
8
  const ROUND_js_1 = require("./impl/ROUND.js");
@@ -16,8 +16,8 @@ class IfcExpressionFunctions {
16
16
  }
17
17
  static applyFunction(name, functionArgs) {
18
18
  const func = IfcExpressionFunctions.getFunction(name);
19
- if ((0, IfcExpressionUtils_1.isNullish)(func)) {
20
- return new ExprEvalResult_1.ExprEvalFunctionEvaluationErrorObj(ExprKind_js_1.ExprKind.FUNCTION, ExprEvalResult_1.ExprEvalStatus.UNKNOWN_FUNCTION, `No such function ${name}`, name);
19
+ if ((0, IfcExpressionUtils_js_1.isNullish)(func)) {
20
+ return new ExprEvalResult_js_1.ExprEvalFunctionEvaluationErrorObj(ExprKind_js_1.ExprKind.FUNCTION, ExprEvalResult_js_1.ExprEvalStatus.UNKNOWN_FUNCTION, `No such function ${name}`, name);
21
21
  }
22
22
  return func.evaluate(functionArgs);
23
23
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/function/IfcExpressionFunctions.ts"],"names":[],"mappings":";;;AAAA,sDAI2B;AAG3B,iEAAqD;AACrD,gDAA0C;AAC1C,0CAAoC;AACpC,8CAAwC;AAExC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CACpC,IAAI,GAAG,CAAe;IACpB,CAAC,KAAK,EAAE,IAAI,YAAG,EAAE,CAAC;IAClB,CAAC,OAAO,EAAE,IAAI,gBAAK,EAAE,CAAC;CACvB,CAAC,CACH,CAAC;AAEF,MAAa,sBAAsB;IAC1B,MAAM,CAAC,WAAW,CAAC,IAAY;QACpC,OAAO,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAEM,MAAM,CAAC,aAAa,CACzB,IAAY,EACZ,YAAyD;QAEzD,MAAM,IAAI,GAAG,sBAAsB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,IAAA,8BAAS,EAAC,IAAI,CAAC,EAAE;YACnB,OAAO,IAAI,mDAAkC,CAC3C,sBAAQ,CAAC,QAAQ,EACjB,+BAAc,CAAC,gBAAgB,EAC/B,oBAAoB,IAAI,EAAE,EAC1B,IAAI,CACL,CAAC;SACH;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;CACF;AApBD,wDAoBC","file":"expression/function/IfcExpressionFunctions.js","sourcesContent":["import {\n ExprEvalFunctionEvaluationErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n} from \"../ExprEvalResult\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { Func } from \"./Func.js\";\nimport { isNullish } from \"../../IfcExpressionUtils\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport { MAP } from \"./impl/MAP.js\";\nimport { ROUND } from \"./impl/ROUND.js\";\n\nconst builtinFunctions = Object.freeze(\n new Map<string, Func>([\n [\"MAP\", new MAP()],\n [\"ROUND\", new ROUND()],\n ])\n);\n\nexport class IfcExpressionFunctions {\n public static getFunction(name: string) {\n return builtinFunctions.get(name);\n }\n\n public static applyFunction(\n name: string,\n functionArgs: Array<ExprEvalResult<LiteralValueAnyArity>>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const func = IfcExpressionFunctions.getFunction(name);\n if (isNullish(func)) {\n return new ExprEvalFunctionEvaluationErrorObj(\n ExprKind.FUNCTION,\n ExprEvalStatus.UNKNOWN_FUNCTION,\n `No such function ${name}`,\n name\n );\n }\n return func.evaluate(functionArgs);\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/function/IfcExpressionFunctions.ts"],"names":[],"mappings":";;;AAAA,4DAI8B;AAG9B,uEAAwD;AACxD,gDAA0C;AAC1C,0CAAoC;AACpC,8CAAwC;AAExC,MAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,CACpC,IAAI,GAAG,CAAe;IACpB,CAAC,KAAK,EAAE,IAAI,YAAG,EAAE,CAAC;IAClB,CAAC,OAAO,EAAE,IAAI,gBAAK,EAAE,CAAC;CACvB,CAAC,CACH,CAAC;AAEF,MAAa,sBAAsB;IAC1B,MAAM,CAAC,WAAW,CAAC,IAAY;QACpC,OAAO,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACpC,CAAC;IAEM,MAAM,CAAC,aAAa,CACzB,IAAY,EACZ,YAAyD;QAEzD,MAAM,IAAI,GAAG,sBAAsB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QACtD,IAAI,IAAA,iCAAS,EAAC,IAAI,CAAC,EAAE;YACnB,OAAO,IAAI,sDAAkC,CAC3C,sBAAQ,CAAC,QAAQ,EACjB,kCAAc,CAAC,gBAAgB,EAC/B,oBAAoB,IAAI,EAAE,EAC1B,IAAI,CACL,CAAC;SACH;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;IACrC,CAAC;CACF;AApBD,wDAoBC","file":"expression/function/IfcExpressionFunctions.js","sourcesContent":["import {\n ExprEvalFunctionEvaluationErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n} from \"../ExprEvalResult.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { Func } from \"./Func.js\";\nimport { isNullish } from \"../../IfcExpressionUtils.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport { MAP } from \"./impl/MAP.js\";\nimport { ROUND } from \"./impl/ROUND.js\";\n\nconst builtinFunctions = Object.freeze(\n new Map<string, Func>([\n [\"MAP\", new MAP()],\n [\"ROUND\", new ROUND()],\n ])\n);\n\nexport class IfcExpressionFunctions {\n public static getFunction(name: string) {\n return builtinFunctions.get(name);\n }\n\n public static applyFunction(\n name: string,\n functionArgs: Array<ExprEvalResult<LiteralValueAnyArity>>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const func = IfcExpressionFunctions.getFunction(name);\n if (isNullish(func)) {\n return new ExprEvalFunctionEvaluationErrorObj(\n ExprKind.FUNCTION,\n ExprEvalStatus.UNKNOWN_FUNCTION,\n `No such function ${name}`,\n name\n );\n }\n return func.evaluate(functionArgs);\n }\n}\n"]}
@@ -2,13 +2,13 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FuncArgBase = void 0;
4
4
  const FuncArg_js_1 = require("../FuncArg.js");
5
- const ExprEvalResult_1 = require("../../ExprEvalResult");
5
+ const ExprEvalResult_js_1 = require("../../ExprEvalResult.js");
6
6
  class FuncArgBase extends FuncArg_js_1.FuncArg {
7
7
  constructor(required, name, defaultValue) {
8
8
  super(required, name, defaultValue);
9
9
  }
10
10
  transformValue(invocationValue) {
11
- if ((0, ExprEvalResult_1.isExprEvalSuccess)(invocationValue)) {
11
+ if ((0, ExprEvalResult_js_1.isExprEvalSuccess)(invocationValue)) {
12
12
  return this.transformForTypeCheck(invocationValue);
13
13
  }
14
14
  return this.transformForError(invocationValue);
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/function/arg/FuncArgBase.ts"],"names":[],"mappings":";;;AAAA,8CAAwC;AACxC,yDAK8B;AAG9B,MAAsB,WAAe,SAAQ,oBAAU;IACrD,YAAY,QAAiB,EAAE,IAAY,EAAE,YAAgB;QAC3D,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;IAED,cAAc,CACZ,eAAqD;QAErD,IAAI,IAAA,kCAAiB,EAAC,eAAe,CAAC,EAAE;YACtC,OAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACO,qBAAqB,CAC7B,eAAsD;QAEtD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACO,iBAAiB,CACzB,eAA8B;QAE9B,OAAO,eAAe,CAAC;IACzB,CAAC;CACF;AAnCD,kCAmCC","file":"expression/function/arg/FuncArgBase.js","sourcesContent":["import { FuncArg } from \"../FuncArg.js\";\nimport {\n ExprEvalError,\n ExprEvalResult,\n ExprEvalSuccess,\n isExprEvalSuccess,\n} from \"../../ExprEvalResult\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\n\nexport abstract class FuncArgBase<T> extends FuncArg<T> {\n constructor(required: boolean, name: string, defaultValue?: T) {\n super(required, name, defaultValue);\n }\n\n transformValue(\n invocationValue: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalSuccess(invocationValue)) {\n return this.transformForTypeCheck(invocationValue);\n }\n return this.transformForError(invocationValue);\n }\n\n /**\n * Override to type-check the successfully evaluated invocationValue.\n * @param result\n * @protected\n */\n protected transformForTypeCheck(\n invocationValue: ExprEvalSuccess<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n return invocationValue;\n }\n\n /**\n * Override to transform the error result obtained from evaluating the invocation value.\n * @param invocationValue\n * @protected\n */\n protected transformForError(\n invocationValue: ExprEvalError\n ): ExprEvalResult<LiteralValueAnyArity> {\n return invocationValue;\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/function/arg/FuncArgBase.ts"],"names":[],"mappings":";;;AAAA,8CAAwC;AACxC,+DAKiC;AAGjC,MAAsB,WAAe,SAAQ,oBAAU;IACrD,YAAY,QAAiB,EAAE,IAAY,EAAE,YAAgB;QAC3D,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;IAED,cAAc,CACZ,eAAqD;QAErD,IAAI,IAAA,qCAAiB,EAAC,eAAe,CAAC,EAAE;YACtC,OAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;SACpD;QACD,OAAO,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,CAAC;IACjD,CAAC;IAED;;;;OAIG;IACO,qBAAqB,CAC7B,eAAsD;QAEtD,OAAO,eAAe,CAAC;IACzB,CAAC;IAED;;;;OAIG;IACO,iBAAiB,CACzB,eAA8B;QAE9B,OAAO,eAAe,CAAC;IACzB,CAAC;CACF;AAnCD,kCAmCC","file":"expression/function/arg/FuncArgBase.js","sourcesContent":["import { FuncArg } from \"../FuncArg.js\";\nimport {\n ExprEvalError,\n ExprEvalResult,\n ExprEvalSuccess,\n isExprEvalSuccess,\n} from \"../../ExprEvalResult.js\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\n\nexport abstract class FuncArgBase<T> extends FuncArg<T> {\n constructor(required: boolean, name: string, defaultValue?: T) {\n super(required, name, defaultValue);\n }\n\n transformValue(\n invocationValue: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalSuccess(invocationValue)) {\n return this.transformForTypeCheck(invocationValue);\n }\n return this.transformForError(invocationValue);\n }\n\n /**\n * Override to type-check the successfully evaluated invocationValue.\n * @param result\n * @protected\n */\n protected transformForTypeCheck(\n invocationValue: ExprEvalSuccess<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n return invocationValue;\n }\n\n /**\n * Override to transform the error result obtained from evaluating the invocation value.\n * @param invocationValue\n * @protected\n */\n protected transformForError(\n invocationValue: ExprEvalError\n ): ExprEvalResult<LiteralValueAnyArity> {\n return invocationValue;\n }\n}\n"]}
@@ -1,24 +1,24 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FuncArgInt = void 0;
4
- const FuncArgBase_1 = require("./FuncArgBase");
5
- const ExprEvalResult_1 = require("../../ExprEvalResult");
4
+ const FuncArgBase_js_1 = require("./FuncArgBase.js");
5
+ const ExprEvalResult_js_1 = require("../../ExprEvalResult.js");
6
6
  const ExprKind_js_1 = require("../../ExprKind.js");
7
7
  const NumericValue_js_1 = require("../../../value/NumericValue.js");
8
- class FuncArgInt extends FuncArgBase_1.FuncArgBase {
8
+ class FuncArgInt extends FuncArgBase_js_1.FuncArgBase {
9
9
  constructor(required, name, defaultValue) {
10
10
  super(required, name, defaultValue);
11
11
  }
12
12
  transformForTypeCheck(invocationValue) {
13
13
  const result = invocationValue.result;
14
14
  if (!NumericValue_js_1.NumericValue.isNumericValueType(result)) {
15
- return new ExprEvalResult_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Argument ${this.name} must be a NumericValue, but was ${result}`, result);
15
+ return new ExprEvalResult_js_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Argument ${this.name} must be a NumericValue, but was ${result}`, result);
16
16
  }
17
17
  const value = result.numericValue;
18
18
  if (value.isInteger()) {
19
19
  return invocationValue;
20
20
  }
21
- return new ExprEvalResult_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Value of argument ${this.name} must be an integer, but was ${value}`, value);
21
+ return new ExprEvalResult_js_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Value of argument ${this.name} must be an integer, but was ${value}`, value);
22
22
  }
23
23
  }
24
24
  exports.FuncArgInt = FuncArgInt;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/function/arg/FuncArgInt.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,yDAI8B;AAC9B,mDAA6C;AAC7C,oEAA8D;AAE9D,MAAa,UAAW,SAAQ,yBAAyB;IACvD,YAAY,QAAiB,EAAE,IAAY,EAAE,YAA2B;QACtE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;IAES,qBAAqB,CAC7B,eAAsD;QAEtD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QACtC,IAAI,CAAC,8BAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE;YAC5C,OAAO,IAAI,qCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,YAAY,IAAI,CAAC,IAAI,oCAAoC,MAAM,EAAE,EACjE,MAAM,CACP,CAAC;SACH;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC;QAClC,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;YACrB,OAAO,eAAe,CAAC;SACxB;QACD,OAAO,IAAI,qCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,qBAAqB,IAAI,CAAC,IAAI,gCAAgC,KAAK,EAAE,EACrE,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AA1BD,gCA0BC","file":"expression/function/arg/FuncArgInt.js","sourcesContent":["import { FuncArgBase } from \"./FuncArgBase\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\nimport {\n ExprEvalResult,\n ExprEvalSuccess,\n ExprEvalTypeErrorObj,\n} from \"../../ExprEvalResult\";\nimport { ExprKind } from \"../../ExprKind.js\";\nimport { NumericValue } from \"../../../value/NumericValue.js\";\n\nexport class FuncArgInt extends FuncArgBase<NumericValue> {\n constructor(required: boolean, name: string, defaultValue?: NumericValue) {\n super(required, name, defaultValue);\n }\n\n protected transformForTypeCheck(\n invocationValue: ExprEvalSuccess<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const result = invocationValue.result;\n if (!NumericValue.isNumericValueType(result)) {\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Argument ${this.name} must be a NumericValue, but was ${result}`,\n result\n );\n }\n const value = result.numericValue;\n if (value.isInteger()) {\n return invocationValue;\n }\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Value of argument ${this.name} must be an integer, but was ${value}`,\n value\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/function/arg/FuncArgInt.ts"],"names":[],"mappings":";;;AAAA,qDAA+C;AAE/C,+DAIiC;AACjC,mDAA6C;AAC7C,oEAA8D;AAE9D,MAAa,UAAW,SAAQ,4BAAyB;IACvD,YAAY,QAAiB,EAAE,IAAY,EAAE,YAA2B;QACtE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;IAES,qBAAqB,CAC7B,eAAsD;QAEtD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QACtC,IAAI,CAAC,8BAAY,CAAC,kBAAkB,CAAC,MAAM,CAAC,EAAE;YAC5C,OAAO,IAAI,wCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,YAAY,IAAI,CAAC,IAAI,oCAAoC,MAAM,EAAE,EACjE,MAAM,CACP,CAAC;SACH;QACD,MAAM,KAAK,GAAG,MAAM,CAAC,YAAY,CAAC;QAClC,IAAI,KAAK,CAAC,SAAS,EAAE,EAAE;YACrB,OAAO,eAAe,CAAC;SACxB;QACD,OAAO,IAAI,wCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,qBAAqB,IAAI,CAAC,IAAI,gCAAgC,KAAK,EAAE,EACrE,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AA1BD,gCA0BC","file":"expression/function/arg/FuncArgInt.js","sourcesContent":["import { FuncArgBase } from \"./FuncArgBase.js\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\nimport {\n ExprEvalResult,\n ExprEvalSuccess,\n ExprEvalTypeErrorObj,\n} from \"../../ExprEvalResult.js\";\nimport { ExprKind } from \"../../ExprKind.js\";\nimport { NumericValue } from \"../../../value/NumericValue.js\";\n\nexport class FuncArgInt extends FuncArgBase<NumericValue> {\n constructor(required: boolean, name: string, defaultValue?: NumericValue) {\n super(required, name, defaultValue);\n }\n\n protected transformForTypeCheck(\n invocationValue: ExprEvalSuccess<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const result = invocationValue.result;\n if (!NumericValue.isNumericValueType(result)) {\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Argument ${this.name} must be a NumericValue, but was ${result}`,\n result\n );\n }\n const value = result.numericValue;\n if (value.isInteger()) {\n return invocationValue;\n }\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Value of argument ${this.name} must be an integer, but was ${value}`,\n value\n );\n }\n}\n"]}
@@ -1,11 +1,11 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.FuncArgNumeric = void 0;
4
- const FuncArgBase_1 = require("./FuncArgBase");
5
- const ExprEvalResult_1 = require("../../ExprEvalResult");
4
+ const FuncArgBase_js_1 = require("./FuncArgBase.js");
5
+ const ExprEvalResult_js_1 = require("../../ExprEvalResult.js");
6
6
  const ExprKind_js_1 = require("../../ExprKind.js");
7
7
  const decimal_js_1 = require("decimal.js");
8
- class FuncArgNumeric extends FuncArgBase_1.FuncArgBase {
8
+ class FuncArgNumeric extends FuncArgBase_js_1.FuncArgBase {
9
9
  constructor(required, name, defaultValue) {
10
10
  super(required, name, defaultValue);
11
11
  }
@@ -15,7 +15,7 @@ class FuncArgNumeric extends FuncArgBase_1.FuncArgBase {
15
15
  if (decimal_js_1.Decimal.isDecimal(value)) {
16
16
  return invocationValue;
17
17
  }
18
- return new ExprEvalResult_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Argument ${this.name} must be a number, but was ${JSON.stringify(value)}`, value);
18
+ return new ExprEvalResult_js_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Argument ${this.name} must be a number, but was ${JSON.stringify(value)}`, value);
19
19
  }
20
20
  }
21
21
  exports.FuncArgNumeric = FuncArgNumeric;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/function/arg/FuncArgNumeric.ts"],"names":[],"mappings":";;;AAAA,+CAA4C;AAE5C,yDAI8B;AAC9B,mDAA6C;AAE7C,2CAAqC;AAErC,MAAa,cAAe,SAAQ,yBAAyB;IAC3D,YAAY,QAAiB,EAAE,IAAY,EAAE,YAA2B;QACtE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;IAES,qBAAqB,CAC7B,eAAsD;QAEtD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,oBAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YAC5B,OAAO,eAAe,CAAC;SACxB;QACD,OAAO,IAAI,qCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,YAAY,IAAI,CAAC,IAAI,8BAA8B,IAAI,CAAC,SAAS,CAC/D,KAAK,CACN,EAAE,EACH,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AArBD,wCAqBC","file":"expression/function/arg/FuncArgNumeric.js","sourcesContent":["import { FuncArgBase } from \"./FuncArgBase\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\nimport {\n ExprEvalResult,\n ExprEvalSuccess,\n ExprEvalTypeErrorObj,\n} from \"../../ExprEvalResult\";\nimport { ExprKind } from \"../../ExprKind.js\";\nimport { NumericValue } from \"../../../value/NumericValue.js\";\nimport { Decimal } from \"decimal.js\";\n\nexport class FuncArgNumeric extends FuncArgBase<NumericValue> {\n constructor(required: boolean, name: string, defaultValue?: NumericValue) {\n super(required, name, defaultValue);\n }\n\n protected transformForTypeCheck(\n invocationValue: ExprEvalSuccess<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const result = invocationValue.result;\n const value = result.getValue();\n if (Decimal.isDecimal(value)) {\n return invocationValue;\n }\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Argument ${this.name} must be a number, but was ${JSON.stringify(\n value\n )}`,\n value\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/function/arg/FuncArgNumeric.ts"],"names":[],"mappings":";;;AAAA,qDAA+C;AAE/C,+DAIiC;AACjC,mDAA6C;AAE7C,2CAAqC;AAErC,MAAa,cAAe,SAAQ,4BAAyB;IAC3D,YAAY,QAAiB,EAAE,IAAY,EAAE,YAA2B;QACtE,KAAK,CAAC,QAAQ,EAAE,IAAI,EAAE,YAAY,CAAC,CAAC;IACtC,CAAC;IAES,qBAAqB,CAC7B,eAAsD;QAEtD,MAAM,MAAM,GAAG,eAAe,CAAC,MAAM,CAAC;QACtC,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAC;QAChC,IAAI,oBAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE;YAC5B,OAAO,eAAe,CAAC;SACxB;QACD,OAAO,IAAI,wCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,YAAY,IAAI,CAAC,IAAI,8BAA8B,IAAI,CAAC,SAAS,CAC/D,KAAK,CACN,EAAE,EACH,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AArBD,wCAqBC","file":"expression/function/arg/FuncArgNumeric.js","sourcesContent":["import { FuncArgBase } from \"./FuncArgBase.js\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\nimport {\n ExprEvalResult,\n ExprEvalSuccess,\n ExprEvalTypeErrorObj,\n} from \"../../ExprEvalResult.js\";\nimport { ExprKind } from \"../../ExprKind.js\";\nimport { NumericValue } from \"../../../value/NumericValue.js\";\nimport { Decimal } from \"decimal.js\";\n\nexport class FuncArgNumeric extends FuncArgBase<NumericValue> {\n constructor(required: boolean, name: string, defaultValue?: NumericValue) {\n super(required, name, defaultValue);\n }\n\n protected transformForTypeCheck(\n invocationValue: ExprEvalSuccess<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const result = invocationValue.result;\n const value = result.getValue();\n if (Decimal.isDecimal(value)) {\n return invocationValue;\n }\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Argument ${this.name} must be a number, but was ${JSON.stringify(\n value\n )}`,\n value\n );\n }\n}\n"]}
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MAP = void 0;
4
4
  const Func_js_1 = require("../Func.js");
5
- const ExprEvalResult_1 = require("../../ExprEvalResult");
5
+ const ExprEvalResult_js_1 = require("../../ExprEvalResult.js");
6
6
  const IfcExpression_js_1 = require("../../../IfcExpression.js");
7
7
  const FuncArg_js_1 = require("../FuncArg.js");
8
8
  const ExprKind_js_1 = require("../../ExprKind.js");
@@ -30,13 +30,13 @@ class MAP extends Func_js_1.Func {
30
30
  }
31
31
  if (matchIndex === -1) {
32
32
  if ((0, IfcExpression_js_1.isNullish)(defaultValue)) {
33
- return new ExprEvalResult_1.ExprEvalFunctionEvaluationErrorObj(ExprKind_js_1.ExprKind.FUNCTION, ExprEvalResult_1.ExprEvalStatus.UNDEFINED_RESULT, "Input value not found in left column. No default return value specified, therefore the result of MAP() is undefined ", this.name);
33
+ return new ExprEvalResult_js_1.ExprEvalFunctionEvaluationErrorObj(ExprKind_js_1.ExprKind.FUNCTION, ExprEvalResult_js_1.ExprEvalStatus.UNDEFINED_RESULT, "Input value not found in left column. No default return value specified, therefore the result of MAP() is undefined ", this.name);
34
34
  }
35
35
  else {
36
- return new ExprEvalResult_1.ExprEvalSuccessObj(defaultValue);
36
+ return new ExprEvalResult_js_1.ExprEvalSuccessObj(defaultValue);
37
37
  }
38
38
  }
39
- return new ExprEvalResult_1.ExprEvalSuccessObj(rightColumn[matchIndex]);
39
+ return new ExprEvalResult_js_1.ExprEvalSuccessObj(rightColumn[matchIndex]);
40
40
  }
41
41
  }
42
42
  exports.MAP = MAP;
@@ -48,7 +48,7 @@ class MappingsArg extends FuncArg_js_1.FuncArg {
48
48
  super(required, name);
49
49
  }
50
50
  transformValue(invocationValue) {
51
- if ((0, ExprEvalResult_1.isExprEvalSuccess)(invocationValue)) {
51
+ if ((0, ExprEvalResult_js_1.isExprEvalSuccess)(invocationValue)) {
52
52
  const mappings = invocationValue.result;
53
53
  if (!Array.isArray(mappings.getValue())) {
54
54
  return this.makeError(mappings, "The value is not an array");
@@ -71,7 +71,7 @@ class MappingsArg extends FuncArg_js_1.FuncArg {
71
71
  return invocationValue;
72
72
  }
73
73
  makeError(mappings, problem) {
74
- return new ExprEvalResult_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Argument ${this.name} must be an array containing two arrays of the same length (i.e., a 2xn matrix: 2 rows, N columns). Problem: ${problem}.`, mappings);
74
+ return new ExprEvalResult_js_1.ExprEvalTypeErrorObj(ExprKind_js_1.ExprKind.FUNCTION_ARGUMENTS, `Argument ${this.name} must be an array containing two arrays of the same length (i.e., a 2xn matrix: 2 rows, N columns). Problem: ${problem}.`, mappings);
75
75
  }
76
76
  }
77
77
  //# sourceMappingURL=MAP.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/function/impl/MAP.ts"],"names":[],"mappings":";;;AAAA,wCAAkC;AAElC,yDAO8B;AAC9B,gEAAoE;AACpE,8CAAwC;AACxC,mDAA6C;AAG7C,MAAa,GAAI,SAAQ,cAAI;IAK3B;QACE,KAAK,CAAC,KAAK,EAAE;YACX,IAAI,oBAAO,CAAC,IAAI,EAAE,GAAG,CAAC,sBAAsB,CAAC;YAC7C,IAAI,WAAW,CAAC,IAAI,EAAE,GAAG,CAAC,iBAAiB,CAAC;YAC5C,IAAI,oBAAO,CAAC,KAAK,EAAE,GAAG,CAAC,sBAAsB,CAAC;SAC/C,CAAC,CAAC;IACL,CAAC;IAES,eAAe,CACvB,kBAAqD;QAErD,MAAM,QAAQ,GAAG,kBAAkB,CAAC,GAAG,CACrC,GAAG,CAAC,iBAAiB,CACG,CAAC;QAC3B,MAAM,KAAK,GAAG,kBAAkB,CAAC,GAAG,CAClC,GAAG,CAAC,sBAAsB,CACQ,CAAC;QACrC,MAAM,YAAY,GAAG,kBAAkB,CAAC,GAAG,CACzC,GAAG,CAAC,sBAAsB,CACA,CAAC;QAC7B,IAAI,UAAU,GAAG,CAAC,CAAC,CAAC;QACpB,MAAM,UAAU,GACd,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CACtB,CAAC,QAAQ,EAAE,CAAC;QACb,MAAM,WAAW,GACf,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CACtB,CAAC,QAAQ,EAAE,CAAC;QACb,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC;QACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE;YACpC,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE;gBAC/B,UAAU,GAAG,CAAC,CAAC;gBACf,MAAM;aACP;SACF;QACD,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE;YACrB,IAAI,IAAA,4BAAS,EAAC,YAAY,CAAC,EAAE;gBAC3B,OAAO,IAAI,mDAAkC,CAC3C,sBAAQ,CAAC,QAAQ,EACjB,+BAAc,CAAC,gBAAgB,EAC/B,sHAAsH,EACtH,IAAI,CAAC,IAAI,CACV,CAAC;aACH;iBAAM;gBACL,OAAO,IAAI,mCAAkB,CAAC,YAAY,CAAC,CAAC;aAC7C;SACF;QACD,OAAO,IAAI,mCAAkB,CAC3B,WAAW,CAAC,UAAU,CAAyB,CAChD,CAAC;IACJ,CAAC;;AAtDH,kBAuDC;AAtDyB,qBAAiB,GAAG,UAAU,CAAC;AAC/B,0BAAsB,GAAG,OAAO,CAAC;AACjC,0BAAsB,GAAG,cAAc,CAAC;AAsDlE,MAAM,WAAY,SAAQ,oBAAY;IACpC,YAAY,QAAiB,EAAE,IAAY;QACzC,KAAK,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC;IAED,cAAc,CACZ,eAAqD;QAErD,IAAI,IAAA,kCAAiB,EAAC,eAAe,CAAC,EAAE;YACtC,MAAM,QAAQ,GAAG,eAAe,CAAC,MAAoB,CAAC;YACtD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,EAAE;gBACvC,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,2BAA2B,CAAC,CAAC;aAC9D;YACD,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;gBACpC,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,8BAA8B,CAAC,CAAC;aACjE;YACD,MAAM,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAA0B,CAAC;YACrE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC,EAAE;gBAC3C,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,EACR,uDAAuD,CACxD,CAAC;aACH;YACD,MAAM,aAAa,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,CAA0B,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC,EAAE;gBAC5C,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,EACR,wDAAwD,CACzD,CAAC;aACH;YACD,IAAI,YAAY,CAAC,QAAQ,EAAE,CAAC,MAAM,KAAK,aAAa,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE;gBACtE,OAAO,IAAI,CAAC,SAAS,CACnB,QAAQ,EACR,kEACE,YAAY,CAAC,QAAQ,EAAE,CAAC,MAC1B,QAAQ,aAAa,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,CAC1C,CAAC;aACH;SACF;QACD,OAAO,eAAe,CAAC;IACzB,CAAC;IAEO,SAAS,CAAC,QAA8B,EAAE,OAAe;QAC/D,OAAO,IAAI,qCAAoB,CAC7B,sBAAQ,CAAC,kBAAkB,EAC3B,YAAY,IAAI,CAAC,IAAI,gHAAgH,OAAO,GAAG,EAC/I,QAAQ,CACT,CAAC;IACJ,CAAC;CACF","file":"expression/function/impl/MAP.js","sourcesContent":["import { Func } from \"../Func.js\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\nimport {\n ExprEvalFunctionEvaluationErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n ExprEvalSuccessObj,\n ExprEvalTypeErrorObj,\n isExprEvalSuccess,\n} from \"../../ExprEvalResult\";\nimport { isNullish, LiteralValue } from \"../../../IfcExpression.js\";\nimport { FuncArg } from \"../FuncArg.js\";\nimport { ExprKind } from \"../../ExprKind.js\";\nimport { ArrayValue } from \"../../../value/ArrayValue.js\";\n\nexport class MAP extends Func {\n private static readonly ARG_NAME_MAPPINGS = \"mappings\";\n private static readonly ARG_NAME_MAPPING_INPUT = \"input\";\n private static readonly ARG_NAME_DEFAULT_VALUE = \"defaultValue\";\n\n constructor() {\n super(\"MAP\", [\n new FuncArg(true, MAP.ARG_NAME_MAPPING_INPUT),\n new MappingsArg(true, MAP.ARG_NAME_MAPPINGS),\n new FuncArg(false, MAP.ARG_NAME_DEFAULT_VALUE),\n ]);\n }\n\n protected calculateResult(\n evaluatedArguments: Map<string, LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const mappings = evaluatedArguments.get(\n MAP.ARG_NAME_MAPPINGS\n ) as unknown as ArrayValue;\n const input = evaluatedArguments.get(\n MAP.ARG_NAME_MAPPING_INPUT\n ) as unknown as LiteralValueAnyArity;\n const defaultValue = evaluatedArguments.get(\n MAP.ARG_NAME_DEFAULT_VALUE\n ) as unknown as LiteralValue;\n let matchIndex = -1;\n const leftColumn = (\n mappings.getValue()[0] as unknown as ArrayValue\n ).getValue();\n const rightColumn = (\n mappings.getValue()[1] as unknown as ArrayValue\n ).getValue();\n const numMappings = leftColumn.length;\n for (let i = 0; i < numMappings; i++) {\n if (leftColumn[i].equals(input)) {\n matchIndex = i;\n break;\n }\n }\n if (matchIndex === -1) {\n if (isNullish(defaultValue)) {\n return new ExprEvalFunctionEvaluationErrorObj(\n ExprKind.FUNCTION,\n ExprEvalStatus.UNDEFINED_RESULT,\n \"Input value not found in left column. No default return value specified, therefore the result of MAP() is undefined \",\n this.name\n );\n } else {\n return new ExprEvalSuccessObj(defaultValue);\n }\n }\n return new ExprEvalSuccessObj(\n rightColumn[matchIndex] as LiteralValueAnyArity\n );\n }\n}\n\nclass MappingsArg extends FuncArg<any> {\n constructor(required: boolean, name: string) {\n super(required, name);\n }\n\n transformValue(\n invocationValue: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalSuccess(invocationValue)) {\n const mappings = invocationValue.result as ArrayValue;\n if (!Array.isArray(mappings.getValue())) {\n return this.makeError(mappings, \"The value is not an array\");\n }\n if (mappings.getValue().length !== 2) {\n return this.makeError(mappings, \"The array is not of length 2\");\n }\n const firstElement = mappings.getValue()[0] as unknown as ArrayValue;\n if (!Array.isArray(firstElement.getValue())) {\n return this.makeError(\n mappings,\n \"The first element of the array is not itself an array\"\n );\n }\n const secondElement = mappings.getValue()[1] as unknown as ArrayValue;\n if (!Array.isArray(secondElement.getValue())) {\n return this.makeError(\n mappings,\n \"The second element of the array is not itself an array\"\n );\n }\n if (firstElement.getValue().length !== secondElement.getValue().length) {\n return this.makeError(\n mappings,\n `The first element of the array and the second differ in length ${\n firstElement.getValue().length\n } and ${secondElement.getValue().length}`\n );\n }\n }\n return invocationValue;\n }\n\n private makeError(mappings: LiteralValueAnyArity, problem: string) {\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Argument ${this.name} must be an array containing two arrays of the same length (i.e., a 2xn matrix: 2 rows, N columns). Problem: ${problem}.`,\n mappings\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/function/impl/MAP.ts"],"names":[],"mappings":"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","file":"expression/function/impl/MAP.js","sourcesContent":["import { Func } from \"../Func.js\";\nimport { LiteralValueAnyArity } from \"../../../value/LiteralValueAnyArity.js\";\nimport {\n ExprEvalFunctionEvaluationErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n ExprEvalSuccessObj,\n ExprEvalTypeErrorObj,\n isExprEvalSuccess,\n} from \"../../ExprEvalResult.js\";\nimport { isNullish, LiteralValue } from \"../../../IfcExpression.js\";\nimport { FuncArg } from \"../FuncArg.js\";\nimport { ExprKind } from \"../../ExprKind.js\";\nimport { ArrayValue } from \"../../../value/ArrayValue.js\";\n\nexport class MAP extends Func {\n private static readonly ARG_NAME_MAPPINGS = \"mappings\";\n private static readonly ARG_NAME_MAPPING_INPUT = \"input\";\n private static readonly ARG_NAME_DEFAULT_VALUE = \"defaultValue\";\n\n constructor() {\n super(\"MAP\", [\n new FuncArg(true, MAP.ARG_NAME_MAPPING_INPUT),\n new MappingsArg(true, MAP.ARG_NAME_MAPPINGS),\n new FuncArg(false, MAP.ARG_NAME_DEFAULT_VALUE),\n ]);\n }\n\n protected calculateResult(\n evaluatedArguments: Map<string, LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n const mappings = evaluatedArguments.get(\n MAP.ARG_NAME_MAPPINGS\n ) as unknown as ArrayValue;\n const input = evaluatedArguments.get(\n MAP.ARG_NAME_MAPPING_INPUT\n ) as unknown as LiteralValueAnyArity;\n const defaultValue = evaluatedArguments.get(\n MAP.ARG_NAME_DEFAULT_VALUE\n ) as unknown as LiteralValue;\n let matchIndex = -1;\n const leftColumn = (\n mappings.getValue()[0] as unknown as ArrayValue\n ).getValue();\n const rightColumn = (\n mappings.getValue()[1] as unknown as ArrayValue\n ).getValue();\n const numMappings = leftColumn.length;\n for (let i = 0; i < numMappings; i++) {\n if (leftColumn[i].equals(input)) {\n matchIndex = i;\n break;\n }\n }\n if (matchIndex === -1) {\n if (isNullish(defaultValue)) {\n return new ExprEvalFunctionEvaluationErrorObj(\n ExprKind.FUNCTION,\n ExprEvalStatus.UNDEFINED_RESULT,\n \"Input value not found in left column. No default return value specified, therefore the result of MAP() is undefined \",\n this.name\n );\n } else {\n return new ExprEvalSuccessObj(defaultValue);\n }\n }\n return new ExprEvalSuccessObj(\n rightColumn[matchIndex] as LiteralValueAnyArity\n );\n }\n}\n\nclass MappingsArg extends FuncArg<any> {\n constructor(required: boolean, name: string) {\n super(required, name);\n }\n\n transformValue(\n invocationValue: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalSuccess(invocationValue)) {\n const mappings = invocationValue.result as ArrayValue;\n if (!Array.isArray(mappings.getValue())) {\n return this.makeError(mappings, \"The value is not an array\");\n }\n if (mappings.getValue().length !== 2) {\n return this.makeError(mappings, \"The array is not of length 2\");\n }\n const firstElement = mappings.getValue()[0] as unknown as ArrayValue;\n if (!Array.isArray(firstElement.getValue())) {\n return this.makeError(\n mappings,\n \"The first element of the array is not itself an array\"\n );\n }\n const secondElement = mappings.getValue()[1] as unknown as ArrayValue;\n if (!Array.isArray(secondElement.getValue())) {\n return this.makeError(\n mappings,\n \"The second element of the array is not itself an array\"\n );\n }\n if (firstElement.getValue().length !== secondElement.getValue().length) {\n return this.makeError(\n mappings,\n `The first element of the array and the second differ in length ${\n firstElement.getValue().length\n } and ${secondElement.getValue().length}`\n );\n }\n }\n return invocationValue;\n }\n\n private makeError(mappings: LiteralValueAnyArity, problem: string) {\n return new ExprEvalTypeErrorObj(\n ExprKind.FUNCTION_ARGUMENTS,\n `Argument ${this.name} must be an array containing two arrays of the same length (i.e., a 2xn matrix: 2 rows, N columns). Problem: ${problem}.`,\n mappings\n );\n }\n}\n"]}
@@ -4,7 +4,7 @@ exports.DivideExpr = void 0;
4
4
  const Expr2_js_1 = require("../Expr2.js");
5
5
  const NumericValue_js_1 = require("../../value/NumericValue.js");
6
6
  const ExprKind_js_1 = require("../ExprKind.js");
7
- const ExprEvalResult_1 = require("../ExprEvalResult");
7
+ const ExprEvalResult_js_1 = require("../ExprEvalResult.js");
8
8
  class DivideExpr extends Expr2_js_1.Expr2 {
9
9
  constructor(left, right) {
10
10
  super(ExprKind_js_1.ExprKind.NUM_DIVIDE, left, right);
@@ -13,7 +13,7 @@ class DivideExpr extends Expr2_js_1.Expr2 {
13
13
  return NumericValue_js_1.NumericValue.of(left.getValue().dividedBy(right.getValue()));
14
14
  }
15
15
  handleError(error, leftResult, rightResult) {
16
- return new ExprEvalResult_1.ExprEvalError2Obj(error, leftResult, rightResult, ExprEvalResult_1.ExprEvalStatus.MATH_ERROR, error);
16
+ return new ExprEvalResult_js_1.ExprEvalError2Obj(error, leftResult, rightResult, ExprEvalResult_js_1.ExprEvalStatus.MATH_ERROR, error);
17
17
  }
18
18
  }
19
19
  exports.DivideExpr = DivideExpr;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/numeric/DivideExpr.ts"],"names":[],"mappings":";;;AAAA,0CAAoC;AAGpC,iEAA2D;AAC3D,gDAA0C;AAC1C,sDAK2B;AAE3B,MAAa,UAAW,SAAQ,gBAI/B;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,sBAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,eAAe,CACvB,GAAyB,EACzB,QAA0B,EAC1B,IAAkB,EAClB,KAAmB;QAEnB,OAAO,8BAAY,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;IAES,WAAW,CACnB,KAAU,EACV,UAAwC,EACxC,WAAyC;QAEzC,OAAO,IAAI,kCAAiB,CAC1B,KAAK,EACL,UAAU,EACV,WAAW,EACX,+BAAc,CAAC,UAAU,EACzB,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AA/BD,gCA+BC","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\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalError2Obj,\n ExprEvalResult,\n ExprEvalStatus,\n} from \"../ExprEvalResult\";\n\nexport class DivideExpr extends Expr2<\n NumericValue,\n NumericValue,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(ExprKind.NUM_DIVIDE, left, right);\n }\n\n protected calculateResult(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n left: NumericValue,\n right: NumericValue\n ): NumericValue | ExprEvalError {\n return NumericValue.of(left.getValue().dividedBy(right.getValue()));\n }\n\n protected handleError(\n error: any,\n leftResult: ExprEvalResult<NumericValue>,\n rightResult: ExprEvalResult<NumericValue>\n ): ExprEvalError {\n return new ExprEvalError2Obj(\n error,\n leftResult,\n rightResult,\n ExprEvalStatus.MATH_ERROR,\n error\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/numeric/DivideExpr.ts"],"names":[],"mappings":";;;AAAA,0CAAoC;AAGpC,iEAA2D;AAC3D,gDAA0C;AAC1C,4DAK8B;AAE9B,MAAa,UAAW,SAAQ,gBAI/B;IACC,YAAY,IAAwB,EAAE,KAAyB;QAC7D,KAAK,CAAC,sBAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC1C,CAAC;IAES,eAAe,CACvB,GAAyB,EACzB,QAA0B,EAC1B,IAAkB,EAClB,KAAmB;QAEnB,OAAO,8BAAY,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,SAAS,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IACtE,CAAC;IAES,WAAW,CACnB,KAAU,EACV,UAAwC,EACxC,WAAyC;QAEzC,OAAO,IAAI,qCAAiB,CAC1B,KAAK,EACL,UAAU,EACV,WAAW,EACX,kCAAc,CAAC,UAAU,EACzB,KAAK,CACN,CAAC;IACJ,CAAC;CACF;AA/BD,gCA+BC","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\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalError2Obj,\n ExprEvalResult,\n ExprEvalStatus,\n} from \"../ExprEvalResult.js\";\n\nexport class DivideExpr extends Expr2<\n NumericValue,\n NumericValue,\n NumericValue\n> {\n constructor(left: Expr<NumericValue>, right: Expr<NumericValue>) {\n super(ExprKind.NUM_DIVIDE, left, right);\n }\n\n protected calculateResult(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n left: NumericValue,\n right: NumericValue\n ): NumericValue | ExprEvalError {\n return NumericValue.of(left.getValue().dividedBy(right.getValue()));\n }\n\n protected handleError(\n error: any,\n leftResult: ExprEvalResult<NumericValue>,\n rightResult: ExprEvalResult<NumericValue>\n ): ExprEvalError {\n return new ExprEvalError2Obj(\n error,\n leftResult,\n rightResult,\n ExprEvalStatus.MATH_ERROR,\n error\n );\n }\n}\n"]}
@@ -3,27 +3,27 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.AttributeReferenceExpr = void 0;
4
4
  const Expr2_js_1 = require("../Expr2.js");
5
5
  const ExprKind_js_1 = require("../ExprKind.js");
6
- const ExprEvalResult_1 = require("../ExprEvalResult");
7
- const LocalContextKeys_1 = require("../LocalContextKeys");
6
+ const ExprEvalResult_js_1 = require("../ExprEvalResult.js");
7
+ const LocalContextKeys_js_1 = require("../LocalContextKeys.js");
8
8
  class AttributeReferenceExpr extends Expr2_js_1.Expr2 {
9
9
  constructor(left, right) {
10
10
  super(ExprKind_js_1.ExprKind.REF_ATTRIBUTE, left, right);
11
11
  }
12
12
  onAfterLeftRecursion(ctx, localCtx, leftResult) {
13
- localCtx.set(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR, leftResult);
13
+ localCtx.set(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR, leftResult);
14
14
  }
15
15
  calculateResult(ctx, localCtx, objectAccessor, dereferencedValue) {
16
- localCtx.delete(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR);
16
+ localCtx.delete(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR);
17
17
  return dereferencedValue;
18
18
  }
19
19
  makeResultForRightSubExprError(ctx, localCtx, leftResult, rightResult) {
20
- if ((0, ExprEvalResult_1.isExprEvalSuccess)(leftResult) && (0, ExprEvalResult_1.isExprEvalRefChainError)(rightResult)) {
21
- return ExprEvalResult_1.ExprEvalRefChainErrorObj.bubbleUp(rightResult, this.left.getKind());
20
+ if ((0, ExprEvalResult_js_1.isExprEvalSuccess)(leftResult) && (0, ExprEvalResult_js_1.isExprEvalRefChainError)(rightResult)) {
21
+ return ExprEvalResult_js_1.ExprEvalRefChainErrorObj.bubbleUp(rightResult, this.left.getKind());
22
22
  }
23
23
  return super.makeResultForRightSubExprError(ctx, localCtx, leftResult, rightResult);
24
24
  }
25
25
  handleError(error, leftResult, rightResult) {
26
- return new ExprEvalResult_1.ExprEvalError2Obj(this.getKind(), leftResult, rightResult, ExprEvalResult_1.ExprEvalStatus.REFERENCE_ERROR, ["Unable to resolve attribute reference:", error]);
26
+ return new ExprEvalResult_js_1.ExprEvalError2Obj(this.getKind(), leftResult, rightResult, ExprEvalResult_js_1.ExprEvalStatus.REFERENCE_ERROR, ["Unable to resolve attribute reference:", error]);
27
27
  }
28
28
  }
29
29
  exports.AttributeReferenceExpr = AttributeReferenceExpr;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/reference/AttributeReferenceExpr.ts"],"names":[],"mappings":";;;AACA,0CAAoC;AAGpC,gDAA0C;AAC1C,sDAQ2B;AAE3B,0DAAuD;AAEvD,MAAa,sBAAuB,SAAQ,gBAI3C;IACC,YAAY,IAA0B,EAAE,KAAiC;QACvE,KAAK,CAAC,sBAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAES,oBAAoB,CAC5B,GAAyB,EACzB,QAA0B,EAC1B,UAA0B;QAE1B,QAAQ,CAAC,GAAG,CAAC,mCAAgB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAED,eAAe,CACb,GAAyB,EACzB,QAAQ,EACR,cAA8B,EAC9B,iBAAuC;QAEvC,QAAQ,CAAC,MAAM,CAAC,mCAAgB,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAES,8BAA8B,CACtC,GAAyB,EACzB,QAA0B,EAC1B,UAA0C,EAC1C,WAA0B;QAE1B,IAAI,IAAA,kCAAiB,EAAC,UAAU,CAAC,IAAI,IAAA,wCAAuB,EAAC,WAAW,CAAC,EAAE;YACzE,OAAO,yCAAwB,CAAC,QAAQ,CACtC,WAAW,EACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CACpB,CAAC;SACH;QACD,OAAO,KAAK,CAAC,8BAA8B,CACzC,GAAG,EACH,QAAQ,EACR,UAAU,EACV,WAAW,CACZ,CAAC;IACJ,CAAC;IAES,WAAW,CACnB,KAAU,EACV,UAA0C,EAC1C,WAAiD;QAEjD,OAAO,IAAI,kCAAiB,CAC1B,IAAI,CAAC,OAAO,EAAE,EACd,UAAU,EACV,WAAW,EACX,+BAAc,CAAC,eAAe,EAC9B,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAClD,CAAC;IACJ,CAAC;CACF;AA5DD,wDA4DC","file":"expression/reference/AttributeReferenceExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { Expr2 } from \"../Expr2.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalError2Obj,\n ExprEvalRefChainErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n isExprEvalRefChainError,\n isExprEvalSuccess,\n} from \"../ExprEvalResult\";\nimport { Expr } from \"../Expr.js\";\nimport { LocalContextKeys } from \"../LocalContextKeys\";\n\nexport class AttributeReferenceExpr extends Expr2<\n ObjectAccessor,\n LiteralValueAnyArity,\n LiteralValueAnyArity\n> {\n constructor(left: Expr<ObjectAccessor>, right: Expr<LiteralValueAnyArity>) {\n super(ExprKind.REF_ATTRIBUTE, left, right);\n }\n\n protected onAfterLeftRecursion(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n leftResult: ObjectAccessor\n ) {\n localCtx.set(LocalContextKeys.OBJECT_ACCESSOR, leftResult);\n }\n\n calculateResult(\n ctx: IfcExpressionContext,\n localCtx,\n objectAccessor: ObjectAccessor,\n dereferencedValue: LiteralValueAnyArity\n ): LiteralValueAnyArity | ExprEvalError {\n localCtx.delete(LocalContextKeys.OBJECT_ACCESSOR);\n return dereferencedValue;\n }\n\n protected makeResultForRightSubExprError(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n leftResult: ExprEvalResult<ObjectAccessor>,\n rightResult: ExprEvalError\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalSuccess(leftResult) && isExprEvalRefChainError(rightResult)) {\n return ExprEvalRefChainErrorObj.bubbleUp(\n rightResult,\n this.left.getKind()\n );\n }\n return super.makeResultForRightSubExprError(\n ctx,\n localCtx,\n leftResult,\n rightResult\n );\n }\n\n protected handleError(\n error: any,\n leftResult: ExprEvalResult<ObjectAccessor>,\n rightResult: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalError {\n return new ExprEvalError2Obj(\n this.getKind(),\n leftResult,\n rightResult,\n ExprEvalStatus.REFERENCE_ERROR,\n [\"Unable to resolve attribute reference:\", error]\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/reference/AttributeReferenceExpr.ts"],"names":[],"mappings":";;;AACA,0CAAoC;AAGpC,gDAA0C;AAC1C,4DAQ8B;AAE9B,gEAA0D;AAE1D,MAAa,sBAAuB,SAAQ,gBAI3C;IACC,YAAY,IAA0B,EAAE,KAAiC;QACvE,KAAK,CAAC,sBAAQ,CAAC,aAAa,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC7C,CAAC;IAES,oBAAoB,CAC5B,GAAyB,EACzB,QAA0B,EAC1B,UAA0B;QAE1B,QAAQ,CAAC,GAAG,CAAC,sCAAgB,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAC7D,CAAC;IAED,eAAe,CACb,GAAyB,EACzB,QAAQ,EACR,cAA8B,EAC9B,iBAAuC;QAEvC,QAAQ,CAAC,MAAM,CAAC,sCAAgB,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,iBAAiB,CAAC;IAC3B,CAAC;IAES,8BAA8B,CACtC,GAAyB,EACzB,QAA0B,EAC1B,UAA0C,EAC1C,WAA0B;QAE1B,IAAI,IAAA,qCAAiB,EAAC,UAAU,CAAC,IAAI,IAAA,2CAAuB,EAAC,WAAW,CAAC,EAAE;YACzE,OAAO,4CAAwB,CAAC,QAAQ,CACtC,WAAW,EACX,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CACpB,CAAC;SACH;QACD,OAAO,KAAK,CAAC,8BAA8B,CACzC,GAAG,EACH,QAAQ,EACR,UAAU,EACV,WAAW,CACZ,CAAC;IACJ,CAAC;IAES,WAAW,CACnB,KAAU,EACV,UAA0C,EAC1C,WAAiD;QAEjD,OAAO,IAAI,qCAAiB,CAC1B,IAAI,CAAC,OAAO,EAAE,EACd,UAAU,EACV,WAAW,EACX,kCAAc,CAAC,eAAe,EAC9B,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAClD,CAAC;IACJ,CAAC;CACF;AA5DD,wDA4DC","file":"expression/reference/AttributeReferenceExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { Expr2 } from \"../Expr2.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalError2Obj,\n ExprEvalRefChainErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n isExprEvalRefChainError,\n isExprEvalSuccess,\n} from \"../ExprEvalResult.js\";\nimport { Expr } from \"../Expr.js\";\nimport { LocalContextKeys } from \"../LocalContextKeys.js\";\n\nexport class AttributeReferenceExpr extends Expr2<\n ObjectAccessor,\n LiteralValueAnyArity,\n LiteralValueAnyArity\n> {\n constructor(left: Expr<ObjectAccessor>, right: Expr<LiteralValueAnyArity>) {\n super(ExprKind.REF_ATTRIBUTE, left, right);\n }\n\n protected onAfterLeftRecursion(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n leftResult: ObjectAccessor\n ) {\n localCtx.set(LocalContextKeys.OBJECT_ACCESSOR, leftResult);\n }\n\n calculateResult(\n ctx: IfcExpressionContext,\n localCtx,\n objectAccessor: ObjectAccessor,\n dereferencedValue: LiteralValueAnyArity\n ): LiteralValueAnyArity | ExprEvalError {\n localCtx.delete(LocalContextKeys.OBJECT_ACCESSOR);\n return dereferencedValue;\n }\n\n protected makeResultForRightSubExprError(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n leftResult: ExprEvalResult<ObjectAccessor>,\n rightResult: ExprEvalError\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalSuccess(leftResult) && isExprEvalRefChainError(rightResult)) {\n return ExprEvalRefChainErrorObj.bubbleUp(\n rightResult,\n this.left.getKind()\n );\n }\n return super.makeResultForRightSubExprError(\n ctx,\n localCtx,\n leftResult,\n rightResult\n );\n }\n\n protected handleError(\n error: any,\n leftResult: ExprEvalResult<ObjectAccessor>,\n rightResult: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalError {\n return new ExprEvalError2Obj(\n this.getKind(),\n leftResult,\n rightResult,\n ExprEvalStatus.REFERENCE_ERROR,\n [\"Unable to resolve attribute reference:\", error]\n );\n }\n}\n"]}
@@ -2,25 +2,25 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NestedObjectChainEndExpr = void 0;
4
4
  const ExprKind_js_1 = require("../ExprKind.js");
5
- const ExprEvalResult_1 = require("../ExprEvalResult");
6
- const IfcExpressionUtils_1 = require("../../IfcExpressionUtils");
5
+ const ExprEvalResult_js_1 = require("../ExprEvalResult.js");
6
+ const IfcExpressionUtils_js_1 = require("../../IfcExpressionUtils.js");
7
7
  const Expr0_js_1 = require("../Expr0.js");
8
- const LocalContextKeys_1 = require("../LocalContextKeys");
8
+ const LocalContextKeys_js_1 = require("../LocalContextKeys.js");
9
9
  class NestedObjectChainEndExpr extends Expr0_js_1.Expr0 {
10
10
  constructor(value) {
11
11
  super(ExprKind_js_1.ExprKind.REF_NESTED_OBJECT_CHAIN_END);
12
12
  this.attributeName = value;
13
13
  }
14
14
  doEvaluate(ctx, localCtx) {
15
- const objectAccessor = localCtx.get(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR);
16
- if ((0, IfcExpressionUtils_1.isNullish)(objectAccessor)) {
17
- return new ExprEvalResult_1.ExprEvalErrorObj(this.getKind(), ExprEvalResult_1.ExprEvalStatus.MISSING_OPERAND, `No ObjectAccessor found in localContext when trying to access attribute with name'${this.attributeName}`);
15
+ const objectAccessor = localCtx.get(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR);
16
+ if ((0, IfcExpressionUtils_js_1.isNullish)(objectAccessor)) {
17
+ return new ExprEvalResult_js_1.ExprEvalErrorObj(this.getKind(), ExprEvalResult_js_1.ExprEvalStatus.MISSING_OPERAND, `No ObjectAccessor found in localContext when trying to access attribute with name'${this.attributeName}`);
18
18
  }
19
19
  const attributeValue = objectAccessor.getAttribute(this.attributeName);
20
- if ((0, IfcExpressionUtils_1.isNullish)(attributeValue)) {
21
- return new ExprEvalResult_1.ExprEvalRefChainErrorObj(this.getKind(), ExprEvalResult_1.ExprEvalStatus.REFERENCE_ERROR, this.attributeName, `No such nested object: '${this.attributeName}'`);
20
+ if ((0, IfcExpressionUtils_js_1.isNullish)(attributeValue)) {
21
+ return new ExprEvalResult_js_1.ExprEvalRefChainErrorObj(this.getKind(), ExprEvalResult_js_1.ExprEvalStatus.REFERENCE_ERROR, this.attributeName, `No such nested object: '${this.attributeName}'`);
22
22
  }
23
- localCtx.delete(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR);
23
+ localCtx.delete(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR);
24
24
  return attributeValue;
25
25
  }
26
26
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/reference/NestedObjectChainEndExpr.ts"],"names":[],"mappings":";;;AAEA,gDAA0C;AAC1C,sDAK2B;AAC3B,iEAAqD;AACrD,0CAAoC;AACpC,0DAAuD;AAGvD,MAAa,wBAAyB,SAAQ,gBAA2B;IAEvE,YAAY,KAAa;QACvB,KAAK,CAAC,sBAAQ,CAAC,2BAA2B,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAES,UAAU,CAClB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,cAAc,GAAmB,QAAQ,CAAC,GAAG,CACjD,mCAAgB,CAAC,eAAe,CACjC,CAAC;QACF,IAAI,IAAA,8BAAS,EAAC,cAAc,CAAC,EAAE;YAC7B,OAAO,IAAI,iCAAgB,CACzB,IAAI,CAAC,OAAO,EAAE,EACd,+BAAc,CAAC,eAAe,EAC9B,qFAAqF,IAAI,CAAC,aAAa,EAAE,CAC1G,CAAC;SACH;QACD,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvE,IAAI,IAAA,8BAAS,EAAC,cAAc,CAAC,EAAE;YAC7B,OAAO,IAAI,yCAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,+BAAc,CAAC,eAAe,EAC9B,IAAI,CAAC,aAAa,EAClB,2BAA2B,IAAI,CAAC,aAAa,GAAG,CACjD,CAAC;SACH;QACD,QAAQ,CAAC,MAAM,CAAC,mCAAgB,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAjCD,4DAiCC","file":"expression/reference/NestedObjectChainEndExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalErrorObj,\n ExprEvalRefChainErrorObj,\n ExprEvalStatus,\n} from \"../ExprEvalResult\";\nimport { isNullish } from \"../../IfcExpressionUtils\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { LocalContextKeys } from \"../LocalContextKeys\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\n\nexport class NestedObjectChainEndExpr extends Expr0<LiteralValueAnyArity> {\n private readonly attributeName: string;\n constructor(value: string) {\n super(ExprKind.REF_NESTED_OBJECT_CHAIN_END);\n this.attributeName = value;\n }\n\n protected doEvaluate(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): ExprEvalError | LiteralValueAnyArity {\n const objectAccessor: ObjectAccessor = localCtx.get(\n LocalContextKeys.OBJECT_ACCESSOR\n );\n if (isNullish(objectAccessor)) {\n return new ExprEvalErrorObj(\n this.getKind(),\n ExprEvalStatus.MISSING_OPERAND,\n `No ObjectAccessor found in localContext when trying to access attribute with name'${this.attributeName}`\n );\n }\n const attributeValue = objectAccessor.getAttribute(this.attributeName);\n if (isNullish(attributeValue)) {\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n ExprEvalStatus.REFERENCE_ERROR,\n this.attributeName,\n `No such nested object: '${this.attributeName}'`\n );\n }\n localCtx.delete(LocalContextKeys.OBJECT_ACCESSOR);\n return attributeValue;\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/reference/NestedObjectChainEndExpr.ts"],"names":[],"mappings":";;;AAEA,gDAA0C;AAC1C,4DAK8B;AAC9B,uEAAwD;AACxD,0CAAoC;AACpC,gEAA0D;AAG1D,MAAa,wBAAyB,SAAQ,gBAA2B;IAEvE,YAAY,KAAa;QACvB,KAAK,CAAC,sBAAQ,CAAC,2BAA2B,CAAC,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;IAC7B,CAAC;IAES,UAAU,CAClB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,cAAc,GAAmB,QAAQ,CAAC,GAAG,CACjD,sCAAgB,CAAC,eAAe,CACjC,CAAC;QACF,IAAI,IAAA,iCAAS,EAAC,cAAc,CAAC,EAAE;YAC7B,OAAO,IAAI,oCAAgB,CACzB,IAAI,CAAC,OAAO,EAAE,EACd,kCAAc,CAAC,eAAe,EAC9B,qFAAqF,IAAI,CAAC,aAAa,EAAE,CAC1G,CAAC;SACH;QACD,MAAM,cAAc,GAAG,cAAc,CAAC,YAAY,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACvE,IAAI,IAAA,iCAAS,EAAC,cAAc,CAAC,EAAE;YAC7B,OAAO,IAAI,4CAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,kCAAc,CAAC,eAAe,EAC9B,IAAI,CAAC,aAAa,EAClB,2BAA2B,IAAI,CAAC,aAAa,GAAG,CACjD,CAAC;SACH;QACD,QAAQ,CAAC,MAAM,CAAC,sCAAgB,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,cAAc,CAAC;IACxB,CAAC;CACF;AAjCD,4DAiCC","file":"expression/reference/NestedObjectChainEndExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalErrorObj,\n ExprEvalRefChainErrorObj,\n ExprEvalStatus,\n} from \"../ExprEvalResult.js\";\nimport { isNullish } from \"../../IfcExpressionUtils.js\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { LocalContextKeys } from \"../LocalContextKeys.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\n\nexport class NestedObjectChainEndExpr extends Expr0<LiteralValueAnyArity> {\n private readonly attributeName: string;\n constructor(value: string) {\n super(ExprKind.REF_NESTED_OBJECT_CHAIN_END);\n this.attributeName = value;\n }\n\n protected doEvaluate(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): ExprEvalError | LiteralValueAnyArity {\n const objectAccessor: ObjectAccessor = localCtx.get(\n LocalContextKeys.OBJECT_ACCESSOR\n );\n if (isNullish(objectAccessor)) {\n return new ExprEvalErrorObj(\n this.getKind(),\n ExprEvalStatus.MISSING_OPERAND,\n `No ObjectAccessor found in localContext when trying to access attribute with name'${this.attributeName}`\n );\n }\n const attributeValue = objectAccessor.getAttribute(this.attributeName);\n if (isNullish(attributeValue)) {\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n ExprEvalStatus.REFERENCE_ERROR,\n this.attributeName,\n `No such nested object: '${this.attributeName}'`\n );\n }\n localCtx.delete(LocalContextKeys.OBJECT_ACCESSOR);\n return attributeValue;\n }\n}\n"]}
@@ -2,38 +2,38 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.NestedObjectChainExpr = void 0;
4
4
  const ExprKind_js_1 = require("../ExprKind.js");
5
- const ExprEvalResult_1 = require("../ExprEvalResult");
5
+ const ExprEvalResult_js_1 = require("../ExprEvalResult.js");
6
6
  const Expr1_js_1 = require("../Expr1.js");
7
- const IfcExpressionUtils_1 = require("../../IfcExpressionUtils");
8
- const LocalContextKeys_1 = require("../LocalContextKeys");
7
+ const IfcExpressionUtils_js_1 = require("../../IfcExpressionUtils.js");
8
+ const LocalContextKeys_js_1 = require("../LocalContextKeys.js");
9
9
  class NestedObjectChainExpr extends Expr1_js_1.Expr1 {
10
10
  constructor(literalObjectRef, nextLink) {
11
11
  super(ExprKind_js_1.ExprKind.REF_NESTED_OBJECT_CHAIN, nextLink);
12
12
  this.literalObjectRef = literalObjectRef;
13
13
  }
14
14
  onBeforeRecusion(ctx, localCtx) {
15
- const objectAccessor = localCtx.get(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR);
16
- if ((0, IfcExpressionUtils_1.isNullish)(objectAccessor)) {
17
- return new ExprEvalResult_1.ExprEvalErrorObj(this.getKind(), ExprEvalResult_1.ExprEvalStatus.MISSING_OPERAND, `No ObjectAccessor found in localContext when trying to access nested object with name'${this.literalObjectRef}`);
15
+ const objectAccessor = localCtx.get(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR);
16
+ if ((0, IfcExpressionUtils_js_1.isNullish)(objectAccessor)) {
17
+ return new ExprEvalResult_js_1.ExprEvalErrorObj(this.getKind(), ExprEvalResult_js_1.ExprEvalStatus.MISSING_OPERAND, `No ObjectAccessor found in localContext when trying to access nested object with name'${this.literalObjectRef}`);
18
18
  }
19
19
  const nestedObjectAccessor = objectAccessor.getNestedObjectAccessor(this.literalObjectRef);
20
- if ((0, IfcExpressionUtils_1.isNullish)(nestedObjectAccessor)) {
21
- return new ExprEvalResult_1.ExprEvalRefChainErrorObj(this.getKind(), ExprEvalResult_1.ExprEvalStatus.REFERENCE_ERROR, this.literalObjectRef, `No such nested object: '${this.literalObjectRef}'`);
20
+ if ((0, IfcExpressionUtils_js_1.isNullish)(nestedObjectAccessor)) {
21
+ return new ExprEvalResult_js_1.ExprEvalRefChainErrorObj(this.getKind(), ExprEvalResult_js_1.ExprEvalStatus.REFERENCE_ERROR, this.literalObjectRef, `No such nested object: '${this.literalObjectRef}'`);
22
22
  }
23
- localCtx.set(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR, nestedObjectAccessor);
23
+ localCtx.set(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR, nestedObjectAccessor);
24
24
  }
25
25
  calculateResult(ctx, localCtx, result) {
26
- localCtx.delete(LocalContextKeys_1.LocalContextKeys.OBJECT_ACCESSOR);
26
+ localCtx.delete(LocalContextKeys_js_1.LocalContextKeys.OBJECT_ACCESSOR);
27
27
  return result;
28
28
  }
29
29
  obtainResultForSubExpressionError(ctx, localCtx, subExpressionResult) {
30
- if ((0, ExprEvalResult_1.isExprEvalRefChainError)(subExpressionResult)) {
31
- return ExprEvalResult_1.ExprEvalRefChainErrorObj.bubbleUp(subExpressionResult, this.literalObjectRef);
30
+ if ((0, ExprEvalResult_js_1.isExprEvalRefChainError)(subExpressionResult)) {
31
+ return ExprEvalResult_js_1.ExprEvalRefChainErrorObj.bubbleUp(subExpressionResult, this.literalObjectRef);
32
32
  }
33
- return new ExprEvalResult_1.ExprEvalRefChainErrorObj(this.getKind(), subExpressionResult.status, this.literalObjectRef, subExpressionResult.message);
33
+ return new ExprEvalResult_js_1.ExprEvalRefChainErrorObj(this.getKind(), subExpressionResult.status, this.literalObjectRef, subExpressionResult.message);
34
34
  }
35
35
  handleError(error, subResult) {
36
- return new ExprEvalResult_1.ExprEvalRefChainErrorObj(this.getKind(), ExprEvalResult_1.ExprEvalStatus.REFERENCE_ERROR, this.literalObjectRef, (0, ExprEvalResult_1.mapErrorObjectToMessage)(error));
36
+ return new ExprEvalResult_js_1.ExprEvalRefChainErrorObj(this.getKind(), ExprEvalResult_js_1.ExprEvalStatus.REFERENCE_ERROR, this.literalObjectRef, (0, ExprEvalResult_js_1.mapErrorObjectToMessage)(error));
37
37
  }
38
38
  }
39
39
  exports.NestedObjectChainExpr = NestedObjectChainExpr;
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/reference/NestedObjectChainExpr.ts"],"names":[],"mappings":";;;AAGA,gDAA0C;AAC1C,sDAQ2B;AAC3B,0CAAoC;AACpC,iEAAqD;AACrD,0DAAuD;AAEvD,MAAa,qBAAsB,SAAQ,gBAG1C;IAEC,YAAY,gBAAwB,EAAE,QAA+B;QACnE,KAAK,CAAC,sBAAQ,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAES,gBAAgB,CACxB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CACjC,mCAAgB,CAAC,eAAe,CACf,CAAC;QACpB,IAAI,IAAA,8BAAS,EAAC,cAAc,CAAC,EAAE;YAC7B,OAAO,IAAI,iCAAgB,CACzB,IAAI,CAAC,OAAO,EAAE,EACd,+BAAc,CAAC,eAAe,EAC9B,yFAAyF,IAAI,CAAC,gBAAgB,EAAE,CACjH,CAAC;SACH;QACD,MAAM,oBAAoB,GAAG,cAAc,CAAC,uBAAuB,CACjE,IAAI,CAAC,gBAAgB,CACtB,CAAC;QACF,IAAI,IAAA,8BAAS,EAAC,oBAAoB,CAAC,EAAE;YACnC,OAAO,IAAI,yCAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,+BAAc,CAAC,eAAe,EAC9B,IAAI,CAAC,gBAAgB,EACrB,2BAA2B,IAAI,CAAC,gBAAgB,GAAG,CACpD,CAAC;SACH;QACD,QAAQ,CAAC,GAAG,CAAC,mCAAgB,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;IACvE,CAAC;IAED,eAAe,CACb,GAAyB,EACzB,QAA0B,EAC1B,MAA4B;QAE5B,QAAQ,CAAC,MAAM,CAAC,mCAAgB,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,iCAAiC,CACzC,GAAyB,EACzB,QAA0B,EAC1B,mBAAkC;QAElC,IAAI,IAAA,wCAAuB,EAAC,mBAAmB,CAAC,EAAE;YAChD,OAAO,yCAAwB,CAAC,QAAQ,CACtC,mBAAmB,EACnB,IAAI,CAAC,gBAAgB,CACtB,CAAC;SACH;QACD,OAAO,IAAI,yCAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,mBAAmB,CAAC,MAAM,EAC1B,IAAI,CAAC,gBAAgB,EACrB,mBAAmB,CAAC,OAAO,CAC5B,CAAC;IACJ,CAAC;IAES,WAAW,CACnB,KAAU,EACV,SAA+C;QAE/C,OAAO,IAAI,yCAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,+BAAc,CAAC,eAAe,EAC9B,IAAI,CAAC,gBAAgB,EACrB,IAAA,wCAAuB,EAAC,KAAK,CAAC,CAC/B,CAAC;IACJ,CAAC;CACF;AA7ED,sDA6EC","file":"expression/reference/NestedObjectChainExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalErrorObj,\n ExprEvalRefChainErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n isExprEvalRefChainError,\n mapErrorObjectToMessage,\n} from \"../ExprEvalResult\";\nimport { Expr1 } from \"../Expr1.js\";\nimport { isNullish } from \"../../IfcExpressionUtils\";\nimport { LocalContextKeys } from \"../LocalContextKeys\";\n\nexport class NestedObjectChainExpr extends Expr1<\n LiteralValueAnyArity,\n LiteralValueAnyArity\n> {\n private readonly literalObjectRef: string;\n constructor(literalObjectRef: string, nextLink: NestedObjectChainExpr) {\n super(ExprKind.REF_NESTED_OBJECT_CHAIN, nextLink);\n this.literalObjectRef = literalObjectRef;\n }\n\n protected onBeforeRecusion(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): undefined | ExprEvalError {\n const objectAccessor = localCtx.get(\n LocalContextKeys.OBJECT_ACCESSOR\n ) as ObjectAccessor;\n if (isNullish(objectAccessor)) {\n return new ExprEvalErrorObj(\n this.getKind(),\n ExprEvalStatus.MISSING_OPERAND,\n `No ObjectAccessor found in localContext when trying to access nested object with name'${this.literalObjectRef}`\n );\n }\n const nestedObjectAccessor = objectAccessor.getNestedObjectAccessor(\n this.literalObjectRef\n );\n if (isNullish(nestedObjectAccessor)) {\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n ExprEvalStatus.REFERENCE_ERROR,\n this.literalObjectRef,\n `No such nested object: '${this.literalObjectRef}'`\n );\n }\n localCtx.set(LocalContextKeys.OBJECT_ACCESSOR, nestedObjectAccessor);\n }\n\n calculateResult(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n result: LiteralValueAnyArity\n ): LiteralValueAnyArity | ExprEvalError {\n localCtx.delete(LocalContextKeys.OBJECT_ACCESSOR);\n return result;\n }\n\n protected obtainResultForSubExpressionError(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n subExpressionResult: ExprEvalError\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalRefChainError(subExpressionResult)) {\n return ExprEvalRefChainErrorObj.bubbleUp(\n subExpressionResult,\n this.literalObjectRef\n );\n }\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n subExpressionResult.status,\n this.literalObjectRef,\n subExpressionResult.message\n );\n }\n\n protected handleError(\n error: any,\n subResult: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalError {\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n ExprEvalStatus.REFERENCE_ERROR,\n this.literalObjectRef,\n mapErrorObjectToMessage(error)\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/reference/NestedObjectChainExpr.ts"],"names":[],"mappings":";;;AAGA,gDAA0C;AAC1C,4DAQ8B;AAC9B,0CAAoC;AACpC,uEAAwD;AACxD,gEAA0D;AAE1D,MAAa,qBAAsB,SAAQ,gBAG1C;IAEC,YAAY,gBAAwB,EAAE,QAA+B;QACnE,KAAK,CAAC,sBAAQ,CAAC,uBAAuB,EAAE,QAAQ,CAAC,CAAC;QAClD,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;IAC3C,CAAC;IAES,gBAAgB,CACxB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,cAAc,GAAG,QAAQ,CAAC,GAAG,CACjC,sCAAgB,CAAC,eAAe,CACf,CAAC;QACpB,IAAI,IAAA,iCAAS,EAAC,cAAc,CAAC,EAAE;YAC7B,OAAO,IAAI,oCAAgB,CACzB,IAAI,CAAC,OAAO,EAAE,EACd,kCAAc,CAAC,eAAe,EAC9B,yFAAyF,IAAI,CAAC,gBAAgB,EAAE,CACjH,CAAC;SACH;QACD,MAAM,oBAAoB,GAAG,cAAc,CAAC,uBAAuB,CACjE,IAAI,CAAC,gBAAgB,CACtB,CAAC;QACF,IAAI,IAAA,iCAAS,EAAC,oBAAoB,CAAC,EAAE;YACnC,OAAO,IAAI,4CAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,kCAAc,CAAC,eAAe,EAC9B,IAAI,CAAC,gBAAgB,EACrB,2BAA2B,IAAI,CAAC,gBAAgB,GAAG,CACpD,CAAC;SACH;QACD,QAAQ,CAAC,GAAG,CAAC,sCAAgB,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;IACvE,CAAC;IAED,eAAe,CACb,GAAyB,EACzB,QAA0B,EAC1B,MAA4B;QAE5B,QAAQ,CAAC,MAAM,CAAC,sCAAgB,CAAC,eAAe,CAAC,CAAC;QAClD,OAAO,MAAM,CAAC;IAChB,CAAC;IAES,iCAAiC,CACzC,GAAyB,EACzB,QAA0B,EAC1B,mBAAkC;QAElC,IAAI,IAAA,2CAAuB,EAAC,mBAAmB,CAAC,EAAE;YAChD,OAAO,4CAAwB,CAAC,QAAQ,CACtC,mBAAmB,EACnB,IAAI,CAAC,gBAAgB,CACtB,CAAC;SACH;QACD,OAAO,IAAI,4CAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,mBAAmB,CAAC,MAAM,EAC1B,IAAI,CAAC,gBAAgB,EACrB,mBAAmB,CAAC,OAAO,CAC5B,CAAC;IACJ,CAAC;IAES,WAAW,CACnB,KAAU,EACV,SAA+C;QAE/C,OAAO,IAAI,4CAAwB,CACjC,IAAI,CAAC,OAAO,EAAE,EACd,kCAAc,CAAC,eAAe,EAC9B,IAAI,CAAC,gBAAgB,EACrB,IAAA,2CAAuB,EAAC,KAAK,CAAC,CAC/B,CAAC;IACJ,CAAC;CACF;AA7ED,sDA6EC","file":"expression/reference/NestedObjectChainExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport { ObjectAccessor } from \"../../context/ObjectAccessor.js\";\nimport { LiteralValueAnyArity } from \"../../value/LiteralValueAnyArity.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport {\n ExprEvalError,\n ExprEvalErrorObj,\n ExprEvalRefChainErrorObj,\n ExprEvalResult,\n ExprEvalStatus,\n isExprEvalRefChainError,\n mapErrorObjectToMessage,\n} from \"../ExprEvalResult.js\";\nimport { Expr1 } from \"../Expr1.js\";\nimport { isNullish } from \"../../IfcExpressionUtils.js\";\nimport { LocalContextKeys } from \"../LocalContextKeys.js\";\n\nexport class NestedObjectChainExpr extends Expr1<\n LiteralValueAnyArity,\n LiteralValueAnyArity\n> {\n private readonly literalObjectRef: string;\n constructor(literalObjectRef: string, nextLink: NestedObjectChainExpr) {\n super(ExprKind.REF_NESTED_OBJECT_CHAIN, nextLink);\n this.literalObjectRef = literalObjectRef;\n }\n\n protected onBeforeRecusion(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): undefined | ExprEvalError {\n const objectAccessor = localCtx.get(\n LocalContextKeys.OBJECT_ACCESSOR\n ) as ObjectAccessor;\n if (isNullish(objectAccessor)) {\n return new ExprEvalErrorObj(\n this.getKind(),\n ExprEvalStatus.MISSING_OPERAND,\n `No ObjectAccessor found in localContext when trying to access nested object with name'${this.literalObjectRef}`\n );\n }\n const nestedObjectAccessor = objectAccessor.getNestedObjectAccessor(\n this.literalObjectRef\n );\n if (isNullish(nestedObjectAccessor)) {\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n ExprEvalStatus.REFERENCE_ERROR,\n this.literalObjectRef,\n `No such nested object: '${this.literalObjectRef}'`\n );\n }\n localCtx.set(LocalContextKeys.OBJECT_ACCESSOR, nestedObjectAccessor);\n }\n\n calculateResult(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n result: LiteralValueAnyArity\n ): LiteralValueAnyArity | ExprEvalError {\n localCtx.delete(LocalContextKeys.OBJECT_ACCESSOR);\n return result;\n }\n\n protected obtainResultForSubExpressionError(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>,\n subExpressionResult: ExprEvalError\n ): ExprEvalResult<LiteralValueAnyArity> {\n if (isExprEvalRefChainError(subExpressionResult)) {\n return ExprEvalRefChainErrorObj.bubbleUp(\n subExpressionResult,\n this.literalObjectRef\n );\n }\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n subExpressionResult.status,\n this.literalObjectRef,\n subExpressionResult.message\n );\n }\n\n protected handleError(\n error: any,\n subResult: ExprEvalResult<LiteralValueAnyArity>\n ): ExprEvalError {\n return new ExprEvalRefChainErrorObj(\n this.getKind(),\n ExprEvalStatus.REFERENCE_ERROR,\n this.literalObjectRef,\n mapErrorObjectToMessage(error)\n );\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ArrayExpr = void 0;
4
- const ExprEvalResult_1 = require("../ExprEvalResult");
4
+ const ExprEvalResult_js_1 = require("../ExprEvalResult.js");
5
5
  const ExprKind_js_1 = require("../ExprKind.js");
6
6
  const Expr0_js_1 = require("../Expr0.js");
7
7
  const ArrayValue_js_1 = require("../../value/ArrayValue.js");
@@ -14,8 +14,8 @@ class ArrayExpr extends Expr0_js_1.Expr0 {
14
14
  const evaluatedResult = [];
15
15
  for (let i = 0; i < this.elements.length; i++) {
16
16
  const evalResult = this.elements[i].evaluate(ctx, localCtx);
17
- if ((0, ExprEvalResult_1.isExprEvalError)(evalResult)) {
18
- return new ExprEvalResult_1.ExprEvalConsequentialError1Obj(this.getKind(), evalResult, `Error evaluating array element at 0-based position ${i}`);
17
+ if ((0, ExprEvalResult_js_1.isExprEvalError)(evalResult)) {
18
+ return new ExprEvalResult_js_1.ExprEvalConsequentialError1Obj(this.getKind(), evalResult, `Error evaluating array element at 0-based position ${i}`);
19
19
  }
20
20
  evaluatedResult.push(evalResult.result);
21
21
  }
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/expression/structure/ArrayExpr.ts"],"names":[],"mappings":";;;AACA,sDAI2B;AAE3B,gDAA0C;AAC1C,0CAAoC;AACpC,6DAAuD;AAGvD,MAAa,SAAU,SAAQ,gBAAiB;IAG9C,YAAY,QAAmC;QAC7C,KAAK,CAAC,sBAAQ,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAES,UAAU,CAClB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC5D,IAAI,IAAA,gCAAe,EAAC,UAAU,CAAC,EAAE;gBAC/B,OAAO,IAAI,+CAA8B,CACvC,IAAI,CAAC,OAAO,EAAE,EACd,UAAU,EACV,sDAAsD,CAAC,EAAE,CAC1D,CAAC;aACH;YACD,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,OAAO,IAAI,0BAAU,CAAC,eAAe,CAAC,CAAC;IACzC,CAAC;CACF;AA1BD,8BA0BC","file":"expression/structure/ArrayExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport {\n ExprEvalConsequentialError1Obj,\n ExprEvalError,\n isExprEvalError,\n} from \"../ExprEvalResult\";\nimport { Expr } from \"../Expr.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { ArrayValue } from \"../../value/ArrayValue.js\";\nimport { LiteralValue } from \"../../value/LiteralValue.js\";\n\nexport class ArrayExpr extends Expr0<ArrayValue> {\n private elements: Array<Expr<LiteralValue>>;\n\n constructor(elements: Array<Expr<LiteralValue>>) {\n super(ExprKind.ARRAY);\n this.elements = elements;\n }\n\n protected doEvaluate(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): ExprEvalError | ArrayValue {\n const evaluatedResult = [];\n for (let i = 0; i < this.elements.length; i++) {\n const evalResult = this.elements[i].evaluate(ctx, localCtx);\n if (isExprEvalError(evalResult)) {\n return new ExprEvalConsequentialError1Obj(\n this.getKind(),\n evalResult,\n `Error evaluating array element at 0-based position ${i}`\n );\n }\n evaluatedResult.push(evalResult.result);\n }\n return new ArrayValue(evaluatedResult);\n }\n}\n"]}
1
+ {"version":3,"sources":["../../src/expression/structure/ArrayExpr.ts"],"names":[],"mappings":";;;AACA,4DAI8B;AAE9B,gDAA0C;AAC1C,0CAAoC;AACpC,6DAAuD;AAGvD,MAAa,SAAU,SAAQ,gBAAiB;IAG9C,YAAY,QAAmC;QAC7C,KAAK,CAAC,sBAAQ,CAAC,KAAK,CAAC,CAAC;QACtB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAES,UAAU,CAClB,GAAyB,EACzB,QAA0B;QAE1B,MAAM,eAAe,GAAG,EAAE,CAAC;QAC3B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC5D,IAAI,IAAA,mCAAe,EAAC,UAAU,CAAC,EAAE;gBAC/B,OAAO,IAAI,kDAA8B,CACvC,IAAI,CAAC,OAAO,EAAE,EACd,UAAU,EACV,sDAAsD,CAAC,EAAE,CAC1D,CAAC;aACH;YACD,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SACzC;QACD,OAAO,IAAI,0BAAU,CAAC,eAAe,CAAC,CAAC;IACzC,CAAC;CACF;AA1BD,8BA0BC","file":"expression/structure/ArrayExpr.js","sourcesContent":["import { IfcExpressionContext } from \"../../context/IfcExpressionContext.js\";\nimport {\n ExprEvalConsequentialError1Obj,\n ExprEvalError,\n isExprEvalError,\n} from \"../ExprEvalResult.js\";\nimport { Expr } from \"../Expr.js\";\nimport { ExprKind } from \"../ExprKind.js\";\nimport { Expr0 } from \"../Expr0.js\";\nimport { ArrayValue } from \"../../value/ArrayValue.js\";\nimport { LiteralValue } from \"../../value/LiteralValue.js\";\n\nexport class ArrayExpr extends Expr0<ArrayValue> {\n private elements: Array<Expr<LiteralValue>>;\n\n constructor(elements: Array<Expr<LiteralValue>>) {\n super(ExprKind.ARRAY);\n this.elements = elements;\n }\n\n protected doEvaluate(\n ctx: IfcExpressionContext,\n localCtx: Map<string, any>\n ): ExprEvalError | ArrayValue {\n const evaluatedResult = [];\n for (let i = 0; i < this.elements.length; i++) {\n const evalResult = this.elements[i].evaluate(ctx, localCtx);\n if (isExprEvalError(evalResult)) {\n return new ExprEvalConsequentialError1Obj(\n this.getKind(),\n evalResult,\n `Error evaluating array element at 0-based position ${i}`\n );\n }\n evaluatedResult.push(evalResult.result);\n }\n return new ArrayValue(evaluatedResult);\n }\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
2
2
  import { ExprKind } from "./ExprKind.js";
3
- import { ExprBase } from "./ExprBase";
4
- import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult";
3
+ import { ExprBase } from "./ExprBase.js";
4
+ import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult.js";
5
5
  export declare abstract class Expr0<E> extends ExprBase<E> {
6
6
  protected constructor(kind: ExprKind);
7
7
  protected abstract doEvaluate(ctx: IfcExpressionContext, localCtx: Map<string, any>): E | ExprEvalError;
@@ -1,7 +1,7 @@
1
1
  import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
2
2
  import { ExprKind } from "./ExprKind.js";
3
- import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult";
4
- import { ExprBase } from "./ExprBase";
3
+ import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult.js";
4
+ import { ExprBase } from "./ExprBase.js";
5
5
  import { Expr } from "./Expr.js";
6
6
  export declare abstract class Expr1<V, E> extends ExprBase<E> {
7
7
  readonly value: Expr<V>;
@@ -1,7 +1,7 @@
1
1
  import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
2
- import { ExprBase } from "./ExprBase";
2
+ import { ExprBase } from "./ExprBase.js";
3
3
  import { ExprKind } from "./ExprKind.js";
4
- import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult";
4
+ import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult.js";
5
5
  import { Expr } from "./Expr.js";
6
6
  export declare abstract class Expr2<L, R, E> extends ExprBase<E> {
7
7
  readonly left: Expr<L>;
@@ -1,7 +1,7 @@
1
1
  import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
2
- import { ExprBase } from "./ExprBase";
2
+ import { ExprBase } from "./ExprBase.js";
3
3
  import { ExprKind } from "./ExprKind.js";
4
- import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult";
4
+ import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult.js";
5
5
  import { Expr } from "./Expr.js";
6
6
  export declare abstract class Expr2LeftBeforeRight<L, R, E> extends ExprBase<E> {
7
7
  readonly left: Expr<L>;
@@ -1,6 +1,6 @@
1
1
  import { Expr } from "./Expr.js";
2
2
  import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
3
- import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult";
3
+ import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult.js";
4
4
  import { ExprKind } from "./ExprKind.js";
5
5
  export declare abstract class ExprBase<T> implements Expr<T> {
6
6
  private readonly exprKind;
@@ -1,7 +1,7 @@
1
1
  import { IfcExpressionContext } from "../context/IfcExpressionContext.js";
2
2
  import { ExprKind } from "./ExprKind.js";
3
- import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult";
4
- import { ExprBase } from "./ExprBase";
3
+ import { ExprEvalError, ExprEvalResult } from "./ExprEvalResult.js";
4
+ import { ExprBase } from "./ExprBase.js";
5
5
  export declare abstract class LiteralExpr<V, E> extends ExprBase<E> {
6
6
  readonly value: V;
7
7
  protected constructor(exprKind: ExprKind, value: V);
@@ -1,6 +1,6 @@
1
1
  import { LiteralValueAnyArity } from "../../value/LiteralValueAnyArity.js";
2
2
  import { FuncArg } from "./FuncArg.js";
3
- import { ExprEvalError, ExprEvalResult } from "../ExprEvalResult";
3
+ import { ExprEvalError, ExprEvalResult } from "../ExprEvalResult.js";
4
4
  export declare abstract class Func {
5
5
  protected name: string;
6
6
  protected formalArguments: Array<FuncArg<unknown>>;
@@ -1,4 +1,4 @@
1
- import { ExprEvalResult } from "../ExprEvalResult";
1
+ import { ExprEvalResult } from "../ExprEvalResult.js";
2
2
  import { LiteralValueAnyArity } from "../../value/LiteralValueAnyArity.js";
3
3
  import { Func } from "./Func.js";
4
4
  export declare class IfcExpressionFunctions {