@ibyar/expressions 0.8.6 → 1.1.0

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 (251) hide show
  1. package/README.md +48 -1
  2. package/api/abstract.d.ts +1 -0
  3. package/api/abstract.d.ts.map +1 -0
  4. package/api/abstract.js +12 -0
  5. package/api/abstract.js.map +1 -1
  6. package/api/class/class.d.ts +1 -0
  7. package/api/class/class.d.ts.map +1 -0
  8. package/api/class/class.js +603 -472
  9. package/api/class/class.js.map +1 -1
  10. package/api/class/decorator.d.ts +1 -0
  11. package/api/class/decorator.d.ts.map +1 -0
  12. package/api/class/decorator.js +53 -41
  13. package/api/class/decorator.js.map +1 -1
  14. package/api/computing/call.d.ts +1 -0
  15. package/api/computing/call.d.ts.map +1 -0
  16. package/api/computing/call.js +83 -69
  17. package/api/computing/call.js.map +1 -1
  18. package/api/computing/debugger.d.ts +1 -0
  19. package/api/computing/debugger.d.ts.map +1 -0
  20. package/api/computing/debugger.js +40 -28
  21. package/api/computing/debugger.js.map +1 -1
  22. package/api/computing/new.d.ts +1 -0
  23. package/api/computing/new.d.ts.map +1 -0
  24. package/api/computing/new.js +81 -68
  25. package/api/computing/new.js.map +1 -1
  26. package/api/computing/rest.d.ts +1 -0
  27. package/api/computing/rest.d.ts.map +1 -0
  28. package/api/computing/rest.js +54 -42
  29. package/api/computing/rest.js.map +1 -1
  30. package/api/computing/return.d.ts +1 -0
  31. package/api/computing/return.d.ts.map +1 -0
  32. package/api/computing/return.js +52 -40
  33. package/api/computing/return.js.map +1 -1
  34. package/api/computing/spread.d.ts +1 -0
  35. package/api/computing/spread.d.ts.map +1 -0
  36. package/api/computing/spread.js +70 -58
  37. package/api/computing/spread.js.map +1 -1
  38. package/api/computing/throw.d.ts +1 -0
  39. package/api/computing/throw.d.ts.map +1 -0
  40. package/api/computing/throw.js +216 -175
  41. package/api/computing/throw.js.map +1 -1
  42. package/api/computing/yield.d.ts +1 -0
  43. package/api/computing/yield.d.ts.map +1 -0
  44. package/api/computing/yield.js +60 -47
  45. package/api/computing/yield.js.map +1 -1
  46. package/api/definition/array.d.ts +1 -0
  47. package/api/definition/array.d.ts.map +1 -0
  48. package/api/definition/array.js +147 -122
  49. package/api/definition/array.js.map +1 -1
  50. package/api/definition/bind.d.ts +1 -0
  51. package/api/definition/bind.d.ts.map +1 -0
  52. package/api/definition/bind.js +85 -70
  53. package/api/definition/bind.js.map +1 -1
  54. package/api/definition/comment.d.ts +1 -0
  55. package/api/definition/comment.d.ts.map +1 -0
  56. package/api/definition/comment.js +44 -32
  57. package/api/definition/comment.js.map +1 -1
  58. package/api/definition/function.d.ts +1 -0
  59. package/api/definition/function.d.ts.map +1 -0
  60. package/api/definition/function.js +500 -443
  61. package/api/definition/function.js.map +1 -1
  62. package/api/definition/member.d.ts +1 -0
  63. package/api/definition/member.d.ts.map +1 -0
  64. package/api/definition/member.js +104 -89
  65. package/api/definition/member.js.map +1 -1
  66. package/api/definition/object.d.ts +1 -0
  67. package/api/definition/object.d.ts.map +1 -0
  68. package/api/definition/object.js +243 -200
  69. package/api/definition/object.js.map +1 -1
  70. package/api/definition/statement.d.ts +1 -0
  71. package/api/definition/statement.d.ts.map +1 -0
  72. package/api/definition/statement.js +56 -44
  73. package/api/definition/statement.js.map +1 -1
  74. package/api/definition/values.d.ts +1 -0
  75. package/api/definition/values.d.ts.map +1 -0
  76. package/api/definition/values.js +228 -160
  77. package/api/definition/values.js.map +1 -1
  78. package/api/deserialize/deserialize.d.ts +2 -1
  79. package/api/deserialize/deserialize.d.ts.map +1 -0
  80. package/api/deserialize/deserialize.js +5 -7
  81. package/api/deserialize/deserialize.js.map +1 -1
  82. package/api/deserialize/type-store.d.ts +1 -0
  83. package/api/deserialize/type-store.d.ts.map +1 -0
  84. package/api/expression.d.ts +1 -0
  85. package/api/expression.d.ts.map +1 -0
  86. package/api/index.d.ts +1 -0
  87. package/api/index.d.ts.map +1 -0
  88. package/api/module/common.d.ts +1 -0
  89. package/api/module/common.d.ts.map +1 -0
  90. package/api/module/common.js +63 -50
  91. package/api/module/common.js.map +1 -1
  92. package/api/module/export.d.ts +1 -0
  93. package/api/module/export.d.ts.map +1 -0
  94. package/api/module/export.js +343 -290
  95. package/api/module/export.js.map +1 -1
  96. package/api/module/import.d.ts +1 -0
  97. package/api/module/import.d.ts.map +1 -0
  98. package/api/module/import.js +318 -253
  99. package/api/module/import.js.map +1 -1
  100. package/api/operators/assignment.d.ts +1 -0
  101. package/api/operators/assignment.d.ts.map +1 -0
  102. package/api/operators/assignment.js +88 -75
  103. package/api/operators/assignment.js.map +1 -1
  104. package/api/operators/await.d.ts +1 -0
  105. package/api/operators/await.d.ts.map +1 -0
  106. package/api/operators/await.js +54 -42
  107. package/api/operators/await.js.map +1 -1
  108. package/api/operators/binary.d.ts +1 -0
  109. package/api/operators/binary.d.ts.map +1 -0
  110. package/api/operators/binary.js +78 -64
  111. package/api/operators/binary.js.map +1 -1
  112. package/api/operators/chaining.d.ts +1 -0
  113. package/api/operators/chaining.d.ts.map +1 -0
  114. package/api/operators/chaining.js +56 -44
  115. package/api/operators/chaining.js.map +1 -1
  116. package/api/operators/comma.d.ts +1 -0
  117. package/api/operators/comma.d.ts.map +1 -0
  118. package/api/operators/comma.js +53 -41
  119. package/api/operators/comma.js.map +1 -1
  120. package/api/operators/grouping.d.ts +1 -0
  121. package/api/operators/grouping.d.ts.map +1 -0
  122. package/api/operators/grouping.js +51 -39
  123. package/api/operators/grouping.js.map +1 -1
  124. package/api/operators/logical.d.ts +1 -0
  125. package/api/operators/logical.d.ts.map +1 -0
  126. package/api/operators/logical.js +51 -37
  127. package/api/operators/logical.js.map +1 -1
  128. package/api/operators/pipeline.d.ts +1 -0
  129. package/api/operators/pipeline.d.ts.map +1 -0
  130. package/api/operators/pipeline.js +95 -81
  131. package/api/operators/pipeline.js.map +1 -1
  132. package/api/operators/ternary.d.ts +1 -0
  133. package/api/operators/ternary.d.ts.map +1 -0
  134. package/api/operators/ternary.js +69 -55
  135. package/api/operators/ternary.js.map +1 -1
  136. package/api/operators/types.d.ts +1 -0
  137. package/api/operators/types.d.ts.map +1 -0
  138. package/api/operators/unary.d.ts +1 -0
  139. package/api/operators/unary.d.ts.map +1 -0
  140. package/api/operators/unary.js +97 -82
  141. package/api/operators/unary.js.map +1 -1
  142. package/api/operators/update.d.ts +1 -0
  143. package/api/operators/update.d.ts.map +1 -0
  144. package/api/operators/update.js +78 -62
  145. package/api/operators/update.js.map +1 -1
  146. package/api/program.d.ts +1 -0
  147. package/api/program.d.ts.map +1 -0
  148. package/api/program.js +53 -40
  149. package/api/program.js.map +1 -1
  150. package/api/statement/control/block.d.ts +1 -0
  151. package/api/statement/control/block.d.ts.map +1 -0
  152. package/api/statement/control/block.js +65 -53
  153. package/api/statement/control/block.js.map +1 -1
  154. package/api/statement/control/empty.d.ts +1 -1
  155. package/api/statement/control/empty.d.ts.map +1 -0
  156. package/api/statement/control/empty.js +43 -33
  157. package/api/statement/control/empty.js.map +1 -1
  158. package/api/statement/control/if.d.ts +1 -0
  159. package/api/statement/control/if.d.ts.map +1 -0
  160. package/api/statement/control/if.js +79 -65
  161. package/api/statement/control/if.js.map +1 -1
  162. package/api/statement/control/switch.d.ts +1 -0
  163. package/api/statement/control/switch.d.ts.map +1 -0
  164. package/api/statement/control/switch.js +180 -141
  165. package/api/statement/control/switch.js.map +1 -1
  166. package/api/statement/control/terminate.d.ts +1 -2
  167. package/api/statement/control/terminate.d.ts.map +1 -0
  168. package/api/statement/control/terminate.js +117 -78
  169. package/api/statement/control/terminate.js.map +1 -1
  170. package/api/statement/control/with.d.ts +1 -0
  171. package/api/statement/control/with.d.ts.map +1 -0
  172. package/api/statement/control/with.js +72 -59
  173. package/api/statement/control/with.js.map +1 -1
  174. package/api/statement/declarations/declares.d.ts +1 -0
  175. package/api/statement/declarations/declares.d.ts.map +1 -0
  176. package/api/statement/declarations/declares.js +148 -121
  177. package/api/statement/declarations/declares.js.map +1 -1
  178. package/api/statement/iterations/for.d.ts +1 -0
  179. package/api/statement/iterations/for.d.ts.map +1 -0
  180. package/api/statement/iterations/for.js +337 -277
  181. package/api/statement/iterations/for.js.map +1 -1
  182. package/api/statement/iterations/while.d.ts +1 -0
  183. package/api/statement/iterations/while.d.ts.map +1 -0
  184. package/api/statement/iterations/while.js +152 -125
  185. package/api/statement/iterations/while.js.map +1 -1
  186. package/api/utils.d.ts +1 -0
  187. package/api/utils.d.ts.map +1 -0
  188. package/index.d.ts +1 -0
  189. package/index.d.ts.map +1 -0
  190. package/package.json +5 -5
  191. package/scope/builder.d.ts +27 -0
  192. package/scope/builder.d.ts.map +1 -0
  193. package/scope/builder.js +73 -0
  194. package/scope/builder.js.map +1 -0
  195. package/scope/event.d.ts +1 -0
  196. package/scope/event.d.ts.map +1 -0
  197. package/scope/finalizer.d.ts +1 -0
  198. package/scope/finalizer.d.ts.map +1 -0
  199. package/scope/index.d.ts +1 -0
  200. package/scope/index.d.ts.map +1 -0
  201. package/scope/pool.d.ts +1 -0
  202. package/scope/pool.d.ts.map +1 -0
  203. package/scope/proxy.d.ts +1 -0
  204. package/scope/proxy.d.ts.map +1 -0
  205. package/scope/proxy.js +1 -0
  206. package/scope/proxy.js.map +1 -1
  207. package/scope/scope.d.ts +1 -0
  208. package/scope/scope.d.ts.map +1 -0
  209. package/scope/scope.js +17 -11
  210. package/scope/scope.js.map +1 -1
  211. package/scope/stack.d.ts +1 -0
  212. package/scope/stack.d.ts.map +1 -0
  213. package/scope/stack.js +22 -14
  214. package/scope/stack.js.map +1 -1
  215. package/v8/enums.d.ts +1 -0
  216. package/v8/enums.d.ts.map +1 -0
  217. package/v8/enums.js +11 -11
  218. package/v8/enums.js.map +1 -1
  219. package/v8/factory.d.ts +1 -0
  220. package/v8/factory.d.ts.map +1 -0
  221. package/v8/factory.js +3 -1
  222. package/v8/factory.js.map +1 -1
  223. package/v8/index.d.ts +1 -0
  224. package/v8/index.d.ts.map +1 -0
  225. package/v8/inline.d.ts +1 -0
  226. package/v8/inline.d.ts.map +1 -0
  227. package/v8/inline.js +9 -5
  228. package/v8/inline.js.map +1 -1
  229. package/v8/language.d.ts +1 -0
  230. package/v8/language.d.ts.map +1 -0
  231. package/v8/node.d.ts +1 -0
  232. package/v8/node.d.ts.map +1 -0
  233. package/v8/parser.d.ts +1 -0
  234. package/v8/parser.d.ts.map +1 -0
  235. package/v8/parser.js +5 -5
  236. package/v8/parser.js.map +1 -1
  237. package/v8/stream.d.ts +1 -0
  238. package/v8/stream.d.ts.map +1 -0
  239. package/v8/stream.js +17 -7
  240. package/v8/stream.js.map +1 -1
  241. package/v8/token.d.ts +1 -0
  242. package/v8/token.d.ts.map +1 -0
  243. package/v8/token.js +363 -358
  244. package/v8/token.js.map +1 -1
  245. package/visit/index.d.ts +1 -0
  246. package/visit/index.d.ts.map +1 -0
  247. package/visit/visitor.d.ts +1 -0
  248. package/visit/visitor.d.ts.map +1 -0
  249. package/v8/nodes.d.ts +0 -0
  250. package/v8/nodes.js +0 -2
  251. package/v8/nodes.js.map +0 -1
@@ -1,32 +1,44 @@
1
- var DebuggerStatement_1;
2
- import { __decorate } from "tslib";
1
+ import { __esDecorate, __runInitializers } from "tslib";
3
2
  import { AbstractExpressionNode } from '../abstract.js';
4
3
  import { Deserializer } from '../deserialize/deserialize.js';
5
- let DebuggerStatement = DebuggerStatement_1 = class DebuggerStatement extends AbstractExpressionNode {
6
- static fromJSON(node) {
7
- return new DebuggerStatement_1(node.range, node.loc);
8
- }
9
- set(stack, value) {
10
- throw new Error(`DebuggerStatement#set() has no implementation.`);
11
- }
12
- get(stack) {
13
- debugger;
14
- }
15
- dependency(computed) {
16
- return [];
17
- }
18
- dependencyPath(computed) {
19
- return [];
20
- }
21
- toString() {
22
- return 'debugger';
23
- }
24
- toJson() {
25
- return {};
26
- }
27
- };
28
- DebuggerStatement = DebuggerStatement_1 = __decorate([
29
- Deserializer('DebuggerStatement')
30
- ], DebuggerStatement);
4
+ let DebuggerStatement = (() => {
5
+ let _classDecorators = [Deserializer('DebuggerStatement')];
6
+ let _classDescriptor;
7
+ let _classExtraInitializers = [];
8
+ let _classThis;
9
+ let _classSuper = AbstractExpressionNode;
10
+ var DebuggerStatement = class extends _classSuper {
11
+ static { _classThis = this; }
12
+ static {
13
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
14
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
15
+ DebuggerStatement = _classThis = _classDescriptor.value;
16
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
17
+ __runInitializers(_classThis, _classExtraInitializers);
18
+ }
19
+ static fromJSON(node) {
20
+ return new DebuggerStatement(node.range, node.loc);
21
+ }
22
+ set(stack, value) {
23
+ throw new Error(`DebuggerStatement#set() has no implementation.`);
24
+ }
25
+ get(stack) {
26
+ debugger;
27
+ }
28
+ dependency(computed) {
29
+ return [];
30
+ }
31
+ dependencyPath(computed) {
32
+ return [];
33
+ }
34
+ toString() {
35
+ return 'debugger';
36
+ }
37
+ toJson() {
38
+ return {};
39
+ }
40
+ };
41
+ return DebuggerStatement = _classThis;
42
+ })();
31
43
  export { DebuggerStatement };
32
44
  //# sourceMappingURL=debugger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"debugger.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/debugger.ts"],"names":[],"mappings":";;AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGtD,IAAM,iBAAiB,yBAAvB,MAAM,iBAAkB,SAAQ,sBAAsB;IAC5D,MAAM,CAAC,QAAQ,CAAC,IAAuB;QACtC,OAAO,IAAI,mBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;IACpD,CAAC;IACD,GAAG,CAAC,KAAY,EAAE,KAAU;QAC3B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;IACnE,CAAC;IACD,GAAG,CAAC,KAAY;QACf,QAAQ,CAAC;IACV,CAAC;IACD,UAAU,CAAC,QAAe;QACzB,OAAO,EAAE,CAAC;IACX,CAAC;IACD,cAAc,CAAC,QAAe;QAC7B,OAAO,EAAE,CAAC;IACX,CAAC;IACD,QAAQ;QACP,OAAO,UAAU,CAAC;IACnB,CAAC;IACD,MAAM;QACL,OAAO,EAAE,CAAC;IACX,CAAC;CACD,CAAA;AAtBY,iBAAiB;IAD7B,YAAY,CAAC,mBAAmB,CAAC;GACrB,iBAAiB,CAsB7B;SAtBY,iBAAiB","sourcesContent":["import type { ExpressionNode, ExpressionEventPath } from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n@Deserializer('DebuggerStatement')\nexport class DebuggerStatement extends AbstractExpressionNode {\n\tstatic fromJSON(node: DebuggerStatement): DebuggerStatement {\n\t\treturn new DebuggerStatement(node.range, node.loc);\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`DebuggerStatement#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\tdebugger;\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn [];\n\t}\n\ttoString(): string {\n\t\treturn 'debugger';\n\t}\n\ttoJson(): object {\n\t\treturn {};\n\t}\n}\n"]}
1
+ {"version":3,"file":"debugger.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/debugger.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;IAGhD,iBAAiB;4BAD7B,YAAY,CAAC,mBAAmB,CAAC;;;;sBACK,sBAAsB;iCAA9B,SAAQ,WAAsB;;;;YAA7D,6KAsBC;;;YAtBY,uDAAiB;;QAC7B,MAAM,CAAC,QAAQ,CAAC,IAAuB;YACtC,OAAO,IAAI,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;QACpD,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,KAAU;YAC3B,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACnE,CAAC;QACD,GAAG,CAAC,KAAY;YACf,QAAQ,CAAC;QACV,CAAC;QACD,UAAU,CAAC,QAAe;YACzB,OAAO,EAAE,CAAC;QACX,CAAC;QACD,cAAc,CAAC,QAAe;YAC7B,OAAO,EAAE,CAAC;QACX,CAAC;QACD,QAAQ;YACP,OAAO,UAAU,CAAC;QACnB,CAAC;QACD,MAAM;YACL,OAAO,EAAE,CAAC;QACX,CAAC;;;;SArBW,iBAAiB","sourcesContent":["import type { ExpressionNode, ExpressionEventPath } from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n@Deserializer('DebuggerStatement')\nexport class DebuggerStatement extends AbstractExpressionNode {\n\tstatic fromJSON(node: DebuggerStatement): DebuggerStatement {\n\t\treturn new DebuggerStatement(node.range, node.loc);\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`DebuggerStatement#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\tdebugger;\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn [];\n\t}\n\ttoString(): string {\n\t\treturn 'debugger';\n\t}\n\ttoJson(): object {\n\t\treturn {};\n\t}\n}\n"]}
@@ -16,3 +16,4 @@ export declare class NewExpression extends AbstractExpressionNode {
16
16
  toString(): string;
17
17
  toJson(): object;
18
18
  }
19
+ //# sourceMappingURL=new.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"new.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/computing/new.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,EACrD,aAAa,EAAE,cAAc,EAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAIxD,qBACa,aAAc,SAAQ,sBAAsB;IAevD,OAAO,CAAC,SAAS;IAdlB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,GAAG,aAAa;IAQnF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;IAIjE,OAAO,CAAC,SAAS,CAAC,CAAmB;gBAE5B,SAAS,EAAE,cAAc,EACjC,UAAU,CAAC,EAAE,cAAc,EAAE,EAC7B,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,GAAG,CAAC,EAAE,cAAc;IAIrB,YAAY;IAGZ,YAAY;IAGZ,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;IAG5B,GAAG,CAAC,KAAK,EAAE,KAAK;IAyBhB,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE;IAI7C,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE;IAItD,QAAQ,IAAI,MAAM;IAIlB,MAAM,IAAI,MAAM;CAMhB"}
@@ -1,80 +1,93 @@
1
- var NewExpression_1;
2
- import { __decorate, __metadata } from "tslib";
1
+ import { __esDecorate, __runInitializers } from "tslib";
3
2
  import { AbstractExpressionNode } from '../abstract.js';
4
3
  import { SpreadElement } from './spread.js';
5
4
  import { Deserializer } from '../deserialize/deserialize.js';
6
- let NewExpression = NewExpression_1 = class NewExpression extends AbstractExpressionNode {
7
- static fromJSON(node, deserializer) {
8
- return new NewExpression_1(deserializer(node.className), node.arguments?.map(deserializer), node.range, node.loc);
9
- }
10
- static visit(node, visitNode) {
11
- visitNode(node.className);
12
- node.arguments?.forEach(visitNode);
13
- }
14
- constructor(className, parameters, range, loc) {
15
- super(range, loc);
16
- this.className = className;
17
- this.arguments = parameters;
18
- }
19
- getClassName() {
20
- return this.className;
21
- }
22
- getArguments() {
23
- return this.arguments;
24
- }
25
- set(stack, value) {
26
- throw new Error(`NewExpression#set() has no implementation.`);
27
- }
28
- get(stack) {
29
- const classRef = this.className.get(stack);
30
- let value;
31
- if (this.arguments) {
32
- if (this.arguments.length > 0) {
33
- const parameters = [];
34
- for (const param of this.arguments) {
35
- if (param instanceof SpreadElement) {
36
- const paramScope = stack.pushBlockScopeFor(parameters);
37
- param.get(stack);
38
- stack.clearTo(paramScope);
39
- break;
40
- }
41
- else {
42
- parameters.push(param.get(stack));
5
+ let NewExpression = (() => {
6
+ let _classDecorators = [Deserializer('NewExpression')];
7
+ let _classDescriptor;
8
+ let _classExtraInitializers = [];
9
+ let _classThis;
10
+ let _classSuper = AbstractExpressionNode;
11
+ var NewExpression = class extends _classSuper {
12
+ static { _classThis = this; }
13
+ static {
14
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
15
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
16
+ NewExpression = _classThis = _classDescriptor.value;
17
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
18
+ __runInitializers(_classThis, _classExtraInitializers);
19
+ }
20
+ className;
21
+ static fromJSON(node, deserializer) {
22
+ return new NewExpression(deserializer(node.className), node.arguments?.map(deserializer), node.range, node.loc);
23
+ }
24
+ static visit(node, visitNode) {
25
+ visitNode(node.className);
26
+ node.arguments?.forEach(visitNode);
27
+ }
28
+ arguments;
29
+ constructor(className, parameters, range, loc) {
30
+ super(range, loc);
31
+ this.className = className;
32
+ this.arguments = parameters;
33
+ }
34
+ getClassName() {
35
+ return this.className;
36
+ }
37
+ getArguments() {
38
+ return this.arguments;
39
+ }
40
+ set(stack, value) {
41
+ throw new Error(`NewExpression#set() has no implementation.`);
42
+ }
43
+ get(stack) {
44
+ const classRef = this.className.get(stack);
45
+ let value;
46
+ if (this.arguments) {
47
+ if (this.arguments.length > 0) {
48
+ const parameters = [];
49
+ for (const param of this.arguments) {
50
+ if (param instanceof SpreadElement) {
51
+ const paramScope = stack.pushBlockScopeFor(parameters);
52
+ param.get(stack);
53
+ stack.clearTo(paramScope);
54
+ break;
55
+ }
56
+ else {
57
+ parameters.push(param.get(stack));
58
+ }
43
59
  }
60
+ value = new classRef(...parameters);
61
+ }
62
+ else {
63
+ value = new classRef();
44
64
  }
45
- value = new classRef(...parameters);
46
65
  }
47
66
  else {
48
- value = new classRef();
67
+ value = new classRef;
49
68
  }
69
+ return value;
70
+ }
71
+ dependency(computed) {
72
+ return this.className.dependency(computed)
73
+ .concat(this.arguments?.flatMap(parm => parm.dependency(computed)) || []);
74
+ }
75
+ dependencyPath(computed) {
76
+ return this.className.dependencyPath(computed)
77
+ .concat(this.arguments?.flatMap(param => param.dependencyPath(computed)) || []);
78
+ }
79
+ toString() {
80
+ const parameters = this.arguments ? `(${this.arguments?.map(arg => arg.toString()).join(', ')})` : '';
81
+ return `new ${this.className.toString()}${parameters}`;
50
82
  }
51
- else {
52
- value = new classRef;
83
+ toJson() {
84
+ return {
85
+ className: this.className.toJSON(),
86
+ arguments: this.arguments?.map(arg => arg.toJSON())
87
+ };
53
88
  }
54
- return value;
55
- }
56
- dependency(computed) {
57
- return this.className.dependency(computed)
58
- .concat(this.arguments?.flatMap(parm => parm.dependency(computed)) || []);
59
- }
60
- dependencyPath(computed) {
61
- return this.className.dependencyPath(computed)
62
- .concat(this.arguments?.flatMap(param => param.dependencyPath(computed)) || []);
63
- }
64
- toString() {
65
- const parameters = this.arguments ? `(${this.arguments?.map(arg => arg.toString()).join(', ')})` : '';
66
- return `new ${this.className.toString()}${parameters}`;
67
- }
68
- toJson() {
69
- return {
70
- className: this.className.toJSON(),
71
- arguments: this.arguments?.map(arg => arg.toJSON())
72
- };
73
- }
74
- };
75
- NewExpression = NewExpression_1 = __decorate([
76
- Deserializer('NewExpression'),
77
- __metadata("design:paramtypes", [Object, Array, Array, Object])
78
- ], NewExpression);
89
+ };
90
+ return NewExpression = _classThis;
91
+ })();
79
92
  export { NewExpression };
80
93
  //# sourceMappingURL=new.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/new.ts"],"names":[],"mappings":";;AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGtD,IAAM,aAAa,qBAAnB,MAAM,aAAc,SAAQ,sBAAsB;IACxD,MAAM,CAAC,QAAQ,CAAC,IAAmB,EAAE,YAA8B;QAClE,OAAO,IAAI,eAAa,CACvB,YAAY,CAAC,IAAI,CAAC,SAAS,CAAC,EAC5B,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,YAAY,CAAC,EACjC,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;IACH,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,IAAmB,EAAE,SAAwB;QACzD,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC1B,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,CAAC;IAED,YACS,SAAyB,EACjC,UAA6B,EAC7B,KAAwB,EACxB,GAAoB;QACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAJV,cAAS,GAAT,SAAS,CAAgB;QAKjC,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC;IAC7B,CAAC;IACD,YAAY;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IACD,YAAY;QACX,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;IACD,GAAG,CAAC,KAAY,EAAE,KAAU;QAC3B,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAC;IAC/D,CAAC;IACD,GAAG,CAAC,KAAY;QACf,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,KAAU,CAAC;QACf,IAAI,IAAI,CAAC,SAAS,EAAE;YACnB,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC9B,MAAM,UAAU,GAAU,EAAE,CAAC;gBAC7B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,SAAS,EAAE;oBACnC,IAAI,KAAK,YAAY,aAAa,EAAE;wBACnC,MAAM,UAAU,GAAG,KAAK,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;wBACvD,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;wBACjB,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;wBAC1B,MAAM;qBACN;yBAAM;wBACN,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;qBAClC;iBACD;gBACD,KAAK,GAAG,IAAI,QAAQ,CAAC,GAAG,UAAU,CAAC,CAAC;aACpC;iBAAM;gBACN,KAAK,GAAG,IAAI,QAAQ,EAAE,CAAC;aACvB;SACD;aAAM;YACN,KAAK,GAAG,IAAI,QAAQ,CAAC;SACrB;QACD,OAAO,KAAK,CAAC;IACd,CAAC;IACD,UAAU,CAAC,QAAe;QACzB,OAAO,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC;aACxC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAC5E,CAAC;IACD,cAAc,CAAC,QAAe;QAC7B,OAAO,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,QAAQ,CAAC;aAC5C,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;IAClF,CAAC;IACD,QAAQ;QACP,MAAM,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC;QACtG,OAAO,OAAO,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,UAAU,EAAE,CAAC;IACxD,CAAC;IACD,MAAM;QACL,OAAO;YACN,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE;YAClC,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;SACnD,CAAC;IACH,CAAC;CACD,CAAA;AA1EY,aAAa;IADzB,YAAY,CAAC,eAAe,CAAC;;GACjB,aAAa,CA0EzB;SA1EY,aAAa","sourcesContent":["import type {\n\tNodeDeserializer, ExpressionNode, ExpressionEventPath,\n\tVisitNodeType, SourceLocation\n} from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { SpreadElement } from './spread.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n@Deserializer('NewExpression')\nexport class NewExpression extends AbstractExpressionNode {\n\tstatic fromJSON(node: NewExpression, deserializer: NodeDeserializer): NewExpression {\n\t\treturn new NewExpression(\n\t\t\tdeserializer(node.className),\n\t\t\tnode.arguments?.map(deserializer),\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: NewExpression, visitNode: VisitNodeType): void {\n\t\tvisitNode(node.className);\n\t\tnode.arguments?.forEach(visitNode);\n\t}\n\tprivate arguments?: ExpressionNode[];\n\tconstructor(\n\t\tprivate className: ExpressionNode,\n\t\tparameters?: ExpressionNode[],\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t\tthis.arguments = parameters;\n\t}\n\tgetClassName() {\n\t\treturn this.className;\n\t}\n\tgetArguments() {\n\t\treturn this.arguments;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`NewExpression#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\tconst classRef = this.className.get(stack);\n\t\tlet value: any;\n\t\tif (this.arguments) {\n\t\t\tif (this.arguments.length > 0) {\n\t\t\t\tconst parameters: any[] = [];\n\t\t\t\tfor (const param of this.arguments) {\n\t\t\t\t\tif (param instanceof SpreadElement) {\n\t\t\t\t\t\tconst paramScope = stack.pushBlockScopeFor(parameters);\n\t\t\t\t\t\tparam.get(stack);\n\t\t\t\t\t\tstack.clearTo(paramScope);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tparameters.push(param.get(stack));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvalue = new classRef(...parameters);\n\t\t\t} else {\n\t\t\t\tvalue = new classRef();\n\t\t\t}\n\t\t} else {\n\t\t\tvalue = new classRef;\n\t\t}\n\t\treturn value;\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.className.dependency(computed)\n\t\t\t.concat(this.arguments?.flatMap(parm => parm.dependency(computed)) || []);\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.className.dependencyPath(computed)\n\t\t\t.concat(this.arguments?.flatMap(param => param.dependencyPath(computed)) || []);\n\t}\n\ttoString(): string {\n\t\tconst parameters = this.arguments ? `(${this.arguments?.map(arg => arg.toString()).join(', ')})` : '';\n\t\treturn `new ${this.className.toString()}${parameters}`;\n\t}\n\ttoJson(): object {\n\t\treturn {\n\t\t\tclassName: this.className.toJSON(),\n\t\t\targuments: this.arguments?.map(arg => arg.toJSON())\n\t\t};\n\t}\n}\n"]}
1
+ {"version":3,"file":"new.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/new.ts"],"names":[],"mappings":"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","sourcesContent":["import type {\n\tNodeDeserializer, ExpressionNode, ExpressionEventPath,\n\tVisitNodeType, SourceLocation\n} from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { SpreadElement } from './spread.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n@Deserializer('NewExpression')\nexport class NewExpression extends AbstractExpressionNode {\n\tstatic fromJSON(node: NewExpression, deserializer: NodeDeserializer): NewExpression {\n\t\treturn new NewExpression(\n\t\t\tdeserializer(node.className),\n\t\t\tnode.arguments?.map(deserializer),\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: NewExpression, visitNode: VisitNodeType): void {\n\t\tvisitNode(node.className);\n\t\tnode.arguments?.forEach(visitNode);\n\t}\n\tprivate arguments?: ExpressionNode[];\n\tconstructor(\n\t\tprivate className: ExpressionNode,\n\t\tparameters?: ExpressionNode[],\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t\tthis.arguments = parameters;\n\t}\n\tgetClassName() {\n\t\treturn this.className;\n\t}\n\tgetArguments() {\n\t\treturn this.arguments;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`NewExpression#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\tconst classRef = this.className.get(stack);\n\t\tlet value: any;\n\t\tif (this.arguments) {\n\t\t\tif (this.arguments.length > 0) {\n\t\t\t\tconst parameters: any[] = [];\n\t\t\t\tfor (const param of this.arguments) {\n\t\t\t\t\tif (param instanceof SpreadElement) {\n\t\t\t\t\t\tconst paramScope = stack.pushBlockScopeFor(parameters);\n\t\t\t\t\t\tparam.get(stack);\n\t\t\t\t\t\tstack.clearTo(paramScope);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t} else {\n\t\t\t\t\t\tparameters.push(param.get(stack));\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tvalue = new classRef(...parameters);\n\t\t\t} else {\n\t\t\t\tvalue = new classRef();\n\t\t\t}\n\t\t} else {\n\t\t\tvalue = new classRef;\n\t\t}\n\t\treturn value;\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.className.dependency(computed)\n\t\t\t.concat(this.arguments?.flatMap(parm => parm.dependency(computed)) || []);\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.className.dependencyPath(computed)\n\t\t\t.concat(this.arguments?.flatMap(param => param.dependencyPath(computed)) || []);\n\t}\n\ttoString(): string {\n\t\tconst parameters = this.arguments ? `(${this.arguments?.map(arg => arg.toString()).join(', ')})` : '';\n\t\treturn `new ${this.className.toString()}${parameters}`;\n\t}\n\ttoJson(): object {\n\t\treturn {\n\t\t\tclassName: this.className.toJSON(),\n\t\t\targuments: this.arguments?.map(arg => arg.toJSON())\n\t\t};\n\t}\n}\n"]}
@@ -15,3 +15,4 @@ export declare class RestElement extends AbstractExpressionNode implements Decla
15
15
  toString(): string;
16
16
  toJson(): object;
17
17
  }
18
+ //# sourceMappingURL=rest.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rest.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/computing/rest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,qBAAqB,EAAE,mBAAmB,EAAE,cAAc,EAC1D,gBAAgB,EAAE,cAAc,EAAE,aAAa,EAC/C,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,qBACa,WAAY,SAAQ,sBAAuB,YAAW,qBAAqB;IAYtF,OAAO,CAAC,QAAQ;IAXjB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,GAAG,WAAW;IAO/E,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,WAAW,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;gBAItD,QAAQ,EAAE,qBAAqB,EACvC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,GAAG,CAAC,EAAE,cAAc;IAGrB,WAAW;IAGX,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;IAG5B,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAGvB,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,aAAa,CAAC,EAAE,GAAG,GAAG,GAAG;IAGvD,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE;IAG7C,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE;IAGtD,QAAQ,IAAI,MAAM;IAGlB,MAAM,IAAI,MAAM;CAGhB"}
@@ -1,46 +1,58 @@
1
- var RestElement_1;
2
- import { __decorate, __metadata } from "tslib";
1
+ import { __esDecorate, __runInitializers } from "tslib";
3
2
  import { AbstractExpressionNode } from '../abstract.js';
4
3
  import { Deserializer } from '../deserialize/deserialize.js';
5
- let RestElement = RestElement_1 = class RestElement extends AbstractExpressionNode {
6
- static fromJSON(node, deserializer) {
7
- return new RestElement_1(deserializer(node.argument), node.range, node.loc);
8
- }
9
- static visit(node, visitNode) {
10
- visitNode(node.argument);
11
- }
12
- constructor(argument, range, loc) {
13
- super(range, loc);
14
- this.argument = argument;
15
- }
16
- getArgument() {
17
- return this.argument;
18
- }
19
- set(stack, value) {
20
- throw new Error('RestElement#set() Method has no implementation.');
21
- }
22
- get(stack) {
23
- throw new Error('RestElement#get() Method has no implementation.');
24
- }
25
- declareVariable(stack, propertyValue) {
26
- this.argument.declareVariable(stack, propertyValue);
27
- }
28
- dependency(computed) {
29
- return this.argument.dependency(computed);
30
- }
31
- dependencyPath(computed) {
32
- return this.argument.dependencyPath(computed);
33
- }
34
- toString() {
35
- return `...${this.argument.toString()}`;
36
- }
37
- toJson() {
38
- return { argument: this.argument.toJSON() };
39
- }
40
- };
41
- RestElement = RestElement_1 = __decorate([
42
- Deserializer('RestElement'),
43
- __metadata("design:paramtypes", [Object, Array, Object])
44
- ], RestElement);
4
+ let RestElement = (() => {
5
+ let _classDecorators = [Deserializer('RestElement')];
6
+ let _classDescriptor;
7
+ let _classExtraInitializers = [];
8
+ let _classThis;
9
+ let _classSuper = AbstractExpressionNode;
10
+ var RestElement = class extends _classSuper {
11
+ static { _classThis = this; }
12
+ static {
13
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
14
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
15
+ RestElement = _classThis = _classDescriptor.value;
16
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
17
+ __runInitializers(_classThis, _classExtraInitializers);
18
+ }
19
+ argument;
20
+ static fromJSON(node, deserializer) {
21
+ return new RestElement(deserializer(node.argument), node.range, node.loc);
22
+ }
23
+ static visit(node, visitNode) {
24
+ visitNode(node.argument);
25
+ }
26
+ constructor(argument, range, loc) {
27
+ super(range, loc);
28
+ this.argument = argument;
29
+ }
30
+ getArgument() {
31
+ return this.argument;
32
+ }
33
+ set(stack, value) {
34
+ throw new Error('RestElement#set() Method has no implementation.');
35
+ }
36
+ get(stack) {
37
+ throw new Error('RestElement#get() Method has no implementation.');
38
+ }
39
+ declareVariable(stack, propertyValue) {
40
+ this.argument.declareVariable(stack, propertyValue);
41
+ }
42
+ dependency(computed) {
43
+ return this.argument.dependency(computed);
44
+ }
45
+ dependencyPath(computed) {
46
+ return this.argument.dependencyPath(computed);
47
+ }
48
+ toString() {
49
+ return `...${this.argument.toString()}`;
50
+ }
51
+ toJson() {
52
+ return { argument: this.argument.toJSON() };
53
+ }
54
+ };
55
+ return RestElement = _classThis;
56
+ })();
45
57
  export { RestElement };
46
58
  //# sourceMappingURL=rest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/rest.ts"],"names":[],"mappings":";;AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAGtD,IAAM,WAAW,mBAAjB,MAAM,WAAY,SAAQ,sBAAsB;IACtD,MAAM,CAAC,QAAQ,CAAC,IAAiB,EAAE,YAA8B;QAChE,OAAO,IAAI,aAAW,CACrB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAA0B,EACpD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;IACH,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,IAAiB,EAAE,SAAwB;QACvD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC1B,CAAC;IACD,YACS,QAA+B,EACvC,KAAwB,EACxB,GAAoB;QACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAHV,aAAQ,GAAR,QAAQ,CAAuB;IAIxC,CAAC;IACD,WAAW;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IACD,GAAG,CAAC,KAAY,EAAE,KAAU;QAC3B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACpE,CAAC;IACD,GAAG,CAAC,KAAY;QACf,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;IACpE,CAAC;IACD,eAAe,CAAC,KAAY,EAAE,aAAmB;QAChD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;IACrD,CAAC;IACD,UAAU,CAAC,QAAe;QACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IACD,cAAc,CAAC,QAAe;QAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;IAC/C,CAAC;IACD,QAAQ;QACP,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;IACzC,CAAC;IACD,MAAM;QACL,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;IAC7C,CAAC;CACD,CAAA;AAzCY,WAAW;IADvB,YAAY,CAAC,aAAa,CAAC;;GACf,WAAW,CAyCvB;SAzCY,WAAW","sourcesContent":["import type {\n\tDeclarationExpression, ExpressionEventPath, ExpressionNode,\n\tNodeDeserializer, SourceLocation, VisitNodeType\n} from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n@Deserializer('RestElement')\nexport class RestElement extends AbstractExpressionNode implements DeclarationExpression {\n\tstatic fromJSON(node: RestElement, deserializer: NodeDeserializer): RestElement {\n\t\treturn new RestElement(\n\t\t\tdeserializer(node.argument) as DeclarationExpression,\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: RestElement, visitNode: VisitNodeType): void {\n\t\tvisitNode(node.argument);\n\t}\n\tconstructor(\n\t\tprivate argument: DeclarationExpression,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetArgument() {\n\t\treturn this.argument;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error('RestElement#set() Method has no implementation.');\n\t}\n\tget(stack: Stack): void {\n\t\tthrow new Error('RestElement#get() Method has no implementation.');\n\t}\n\tdeclareVariable(stack: Stack, propertyValue?: any): any {\n\t\tthis.argument.declareVariable(stack, propertyValue);\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.argument.dependency(computed);\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.argument.dependencyPath(computed);\n\t}\n\ttoString(): string {\n\t\treturn `...${this.argument.toString()}`;\n\t}\n\ttoJson(): object {\n\t\treturn { argument: this.argument.toJSON() };\n\t}\n}\n"]}
1
+ {"version":3,"file":"rest.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/rest.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;IAGhD,WAAW;4BADvB,YAAY,CAAC,aAAa,CAAC;;;;sBACK,sBAAsB;2BAA9B,SAAQ,WAAsB;;;;YAAvD,6KAyCC;;;YAzCY,uDAAW;;QAYd,QAAQ;QAXjB,MAAM,CAAC,QAAQ,CAAC,IAAiB,EAAE,YAA8B;YAChE,OAAO,IAAI,WAAW,CACrB,YAAY,CAAC,IAAI,CAAC,QAAQ,CAA0B,EACpD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;QACH,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAiB,EAAE,SAAwB;YACvD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC1B,CAAC;QACD,YACS,QAA+B,EACvC,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAHV,aAAQ,GAAR,QAAQ,CAAuB;QAIxC,CAAC;QACD,WAAW;YACV,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,KAAU;YAC3B,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACpE,CAAC;QACD,GAAG,CAAC,KAAY;YACf,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACpE,CAAC;QACD,eAAe,CAAC,KAAY,EAAE,aAAmB;YAChD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;QACrD,CAAC;QACD,UAAU,CAAC,QAAe;YACzB,OAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,cAAc,CAAC,QAAe;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC/C,CAAC;QACD,QAAQ;YACP,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC;QACzC,CAAC;QACD,MAAM;YACL,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QAC7C,CAAC;;;;SAxCW,WAAW","sourcesContent":["import type {\n\tDeclarationExpression, ExpressionEventPath, ExpressionNode,\n\tNodeDeserializer, SourceLocation, VisitNodeType\n} from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode } from '../abstract.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n@Deserializer('RestElement')\nexport class RestElement extends AbstractExpressionNode implements DeclarationExpression {\n\tstatic fromJSON(node: RestElement, deserializer: NodeDeserializer): RestElement {\n\t\treturn new RestElement(\n\t\t\tdeserializer(node.argument) as DeclarationExpression,\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: RestElement, visitNode: VisitNodeType): void {\n\t\tvisitNode(node.argument);\n\t}\n\tconstructor(\n\t\tprivate argument: DeclarationExpression,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetArgument() {\n\t\treturn this.argument;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error('RestElement#set() Method has no implementation.');\n\t}\n\tget(stack: Stack): void {\n\t\tthrow new Error('RestElement#get() Method has no implementation.');\n\t}\n\tdeclareVariable(stack: Stack, propertyValue?: any): any {\n\t\tthis.argument.declareVariable(stack, propertyValue);\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.argument.dependency(computed);\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.argument.dependencyPath(computed);\n\t}\n\ttoString(): string {\n\t\treturn `...${this.argument.toString()}`;\n\t}\n\ttoJson(): object {\n\t\treturn { argument: this.argument.toJSON() };\n\t}\n}\n"]}
@@ -18,3 +18,4 @@ export declare class ReturnStatement extends AbstractExpressionNode {
18
18
  toString(): string;
19
19
  toJson(): object;
20
20
  }
21
+ //# sourceMappingURL=return.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"return.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/computing/return.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,gBAAgB,EAAE,cAAc,EAAE,mBAAmB,EACrD,aAAa,EAAE,cAAc,EAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGrE;;;GAGG;AACH,qBACa,eAAgB,SAAQ,sBAAsB;IAYzD,OAAO,CAAC,QAAQ,CAAC;IAXlB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,eAAe,EAAE,YAAY,EAAE,gBAAgB,GAAG,eAAe;IAOvF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,eAAe,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;gBAI1D,QAAQ,CAAC,4BAAgB,EACjC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,GAAG,CAAC,EAAE,cAAc;IAGrB,WAAW;IAGX,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;IAG5B,GAAG,CAAC,KAAK,EAAE,KAAK;IAIhB,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE;IAG7C,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE;IAGtD,QAAQ,IAAI,MAAM;IAGlB,MAAM,IAAI,MAAM;CAGhB"}
@@ -1,48 +1,60 @@
1
- var ReturnStatement_1;
2
- import { __decorate, __metadata } from "tslib";
1
+ import { __esDecorate, __runInitializers } from "tslib";
3
2
  import { AbstractExpressionNode, ReturnValue } from '../abstract.js';
4
3
  import { Deserializer } from '../deserialize/deserialize.js';
5
4
  /**
6
5
  * The expression whose value is to be returned.
7
6
  * If omitted, undefined is returned instead.
8
7
  */
9
- let ReturnStatement = ReturnStatement_1 = class ReturnStatement extends AbstractExpressionNode {
10
- static fromJSON(node, deserializer) {
11
- return new ReturnStatement_1(node.argument ? deserializer(node.argument) : void 0, node.range, node.loc);
12
- }
13
- static visit(node, visitNode) {
14
- node.argument && visitNode(node.argument);
15
- }
16
- constructor(argument, range, loc) {
17
- super(range, loc);
18
- this.argument = argument;
19
- }
20
- getArgument() {
21
- return this.argument;
22
- }
23
- set(stack, value) {
24
- throw new Error(`ReturnStatement#set() has no implementation.`);
25
- }
26
- get(stack) {
27
- return new ReturnValue(this.argument?.get(stack));
28
- // nothing should be written after this operation in a function body.
29
- }
30
- dependency(computed) {
31
- return this.argument?.dependency(computed) || [];
32
- }
33
- dependencyPath(computed) {
34
- return this.argument?.dependencyPath(computed) || [];
35
- }
36
- toString() {
37
- return `return ${this.argument?.toString() || ''}`;
38
- }
39
- toJson() {
40
- return { argument: this.argument?.toJSON() };
41
- }
42
- };
43
- ReturnStatement = ReturnStatement_1 = __decorate([
44
- Deserializer('ReturnStatement'),
45
- __metadata("design:paramtypes", [Object, Array, Object])
46
- ], ReturnStatement);
8
+ let ReturnStatement = (() => {
9
+ let _classDecorators = [Deserializer('ReturnStatement')];
10
+ let _classDescriptor;
11
+ let _classExtraInitializers = [];
12
+ let _classThis;
13
+ let _classSuper = AbstractExpressionNode;
14
+ var ReturnStatement = class extends _classSuper {
15
+ static { _classThis = this; }
16
+ static {
17
+ const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
18
+ __esDecorate(null, _classDescriptor = { value: _classThis }, _classDecorators, { kind: "class", name: _classThis.name, metadata: _metadata }, null, _classExtraInitializers);
19
+ ReturnStatement = _classThis = _classDescriptor.value;
20
+ if (_metadata) Object.defineProperty(_classThis, Symbol.metadata, { enumerable: true, configurable: true, writable: true, value: _metadata });
21
+ __runInitializers(_classThis, _classExtraInitializers);
22
+ }
23
+ argument;
24
+ static fromJSON(node, deserializer) {
25
+ return new ReturnStatement(node.argument ? deserializer(node.argument) : void 0, node.range, node.loc);
26
+ }
27
+ static visit(node, visitNode) {
28
+ node.argument && visitNode(node.argument);
29
+ }
30
+ constructor(argument, range, loc) {
31
+ super(range, loc);
32
+ this.argument = argument;
33
+ }
34
+ getArgument() {
35
+ return this.argument;
36
+ }
37
+ set(stack, value) {
38
+ throw new Error(`ReturnStatement#set() has no implementation.`);
39
+ }
40
+ get(stack) {
41
+ return new ReturnValue(this.argument?.get(stack));
42
+ // nothing should be written after this operation in a function body.
43
+ }
44
+ dependency(computed) {
45
+ return this.argument?.dependency(computed) || [];
46
+ }
47
+ dependencyPath(computed) {
48
+ return this.argument?.dependencyPath(computed) || [];
49
+ }
50
+ toString() {
51
+ return `return ${this.argument?.toString() || ''}`;
52
+ }
53
+ toJson() {
54
+ return { argument: this.argument?.toJSON() };
55
+ }
56
+ };
57
+ return ReturnStatement = _classThis;
58
+ })();
47
59
  export { ReturnStatement };
48
60
  //# sourceMappingURL=return.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"return.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/return.ts"],"names":[],"mappings":";;AAKA,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D;;;GAGG;AAEI,IAAM,eAAe,uBAArB,MAAM,eAAgB,SAAQ,sBAAsB;IAC1D,MAAM,CAAC,QAAQ,CAAC,IAAqB,EAAE,YAA8B;QACpE,OAAO,IAAI,iBAAe,CACzB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EACpD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;IACH,CAAC;IACD,MAAM,CAAC,KAAK,CAAC,IAAqB,EAAE,SAAwB;QAC3D,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3C,CAAC;IACD,YACS,QAAyB,EACjC,KAAwB,EACxB,GAAoB;QACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAHV,aAAQ,GAAR,QAAQ,CAAiB;IAIlC,CAAC;IACD,WAAW;QACV,OAAO,IAAI,CAAC,QAAQ,CAAC;IACtB,CAAC;IACD,GAAG,CAAC,KAAY,EAAE,KAAU;QAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IACjE,CAAC;IACD,GAAG,CAAC,KAAY;QACf,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAClD,qEAAqE;IACtE,CAAC;IACD,UAAU,CAAC,QAAe;QACzB,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IAClD,CAAC;IACD,cAAc,CAAC,QAAe;QAC7B,OAAO,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;IACtD,CAAC;IACD,QAAQ;QACP,OAAO,UAAU,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;IACpD,CAAC;IACD,MAAM;QACL,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;IAC9C,CAAC;CACD,CAAA;AAvCY,eAAe;IAD3B,YAAY,CAAC,iBAAiB,CAAC;;GACnB,eAAe,CAuC3B;SAvCY,eAAe","sourcesContent":["import type {\n\tNodeDeserializer, ExpressionNode, ExpressionEventPath,\n\tVisitNodeType, SourceLocation\n} from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode, ReturnValue } from '../abstract.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n/**\n * The expression whose value is to be returned. \n * If omitted, undefined is returned instead.\n */\n@Deserializer('ReturnStatement')\nexport class ReturnStatement extends AbstractExpressionNode {\n\tstatic fromJSON(node: ReturnStatement, deserializer: NodeDeserializer): ReturnStatement {\n\t\treturn new ReturnStatement(\n\t\t\tnode.argument ? deserializer(node.argument) : void 0,\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: ReturnStatement, visitNode: VisitNodeType): void {\n\t\tnode.argument && visitNode(node.argument);\n\t}\n\tconstructor(\n\t\tprivate argument?: ExpressionNode,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetArgument() {\n\t\treturn this.argument;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`ReturnStatement#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\treturn new ReturnValue(this.argument?.get(stack));\n\t\t// nothing should be written after this operation in a function body.\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.argument?.dependency(computed) || [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.argument?.dependencyPath(computed) || [];\n\t}\n\ttoString(): string {\n\t\treturn `return ${this.argument?.toString() || ''}`;\n\t}\n\ttoJson(): object {\n\t\treturn { argument: this.argument?.toJSON() };\n\t}\n}\n"]}
1
+ {"version":3,"file":"return.js","sourceRoot":"","sources":["../../../../src/expressions/api/computing/return.ts"],"names":[],"mappings":";AAKA,OAAO,EAAE,sBAAsB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC;AAE7D;;;GAGG;IAEU,eAAe;4BAD3B,YAAY,CAAC,iBAAiB,CAAC;;;;sBACK,sBAAsB;+BAA9B,SAAQ,WAAsB;;;;YAA3D,6KAuCC;;;YAvCY,uDAAe;;QAYlB,QAAQ;QAXjB,MAAM,CAAC,QAAQ,CAAC,IAAqB,EAAE,YAA8B;YACpE,OAAO,IAAI,eAAe,CACzB,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EACpD,IAAI,CAAC,KAAK,EACV,IAAI,CAAC,GAAG,CACR,CAAC;QACH,CAAC;QACD,MAAM,CAAC,KAAK,CAAC,IAAqB,EAAE,SAAwB;YAC3D,IAAI,CAAC,QAAQ,IAAI,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC3C,CAAC;QACD,YACS,QAAyB,EACjC,KAAwB,EACxB,GAAoB;YACpB,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;YAHV,aAAQ,GAAR,QAAQ,CAAiB;QAIlC,CAAC;QACD,WAAW;YACV,OAAO,IAAI,CAAC,QAAQ,CAAC;QACtB,CAAC;QACD,GAAG,CAAC,KAAY,EAAE,KAAU;YAC3B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACjE,CAAC;QACD,GAAG,CAAC,KAAY;YACf,OAAO,IAAI,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;YAClD,qEAAqE;QACtE,CAAC;QACD,UAAU,CAAC,QAAe;YACzB,OAAO,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QAClD,CAAC;QACD,cAAc,CAAC,QAAe;YAC7B,OAAO,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtD,CAAC;QACD,QAAQ;YACP,OAAO,UAAU,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC;QACpD,CAAC;QACD,MAAM;YACL,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,CAAC;QAC9C,CAAC;;;;SAtCW,eAAe","sourcesContent":["import type {\n\tNodeDeserializer, ExpressionNode, ExpressionEventPath,\n\tVisitNodeType, SourceLocation\n} from '../expression.js';\nimport type { Stack } from '../../scope/stack.js';\nimport { AbstractExpressionNode, ReturnValue } from '../abstract.js';\nimport { Deserializer } from '../deserialize/deserialize.js';\n\n/**\n * The expression whose value is to be returned. \n * If omitted, undefined is returned instead.\n */\n@Deserializer('ReturnStatement')\nexport class ReturnStatement extends AbstractExpressionNode {\n\tstatic fromJSON(node: ReturnStatement, deserializer: NodeDeserializer): ReturnStatement {\n\t\treturn new ReturnStatement(\n\t\t\tnode.argument ? deserializer(node.argument) : void 0,\n\t\t\tnode.range,\n\t\t\tnode.loc\n\t\t);\n\t}\n\tstatic visit(node: ReturnStatement, visitNode: VisitNodeType): void {\n\t\tnode.argument && visitNode(node.argument);\n\t}\n\tconstructor(\n\t\tprivate argument?: ExpressionNode,\n\t\trange?: [number, number],\n\t\tloc?: SourceLocation) {\n\t\tsuper(range, loc);\n\t}\n\tgetArgument() {\n\t\treturn this.argument;\n\t}\n\tset(stack: Stack, value: any) {\n\t\tthrow new Error(`ReturnStatement#set() has no implementation.`);\n\t}\n\tget(stack: Stack) {\n\t\treturn new ReturnValue(this.argument?.get(stack));\n\t\t// nothing should be written after this operation in a function body.\n\t}\n\tdependency(computed?: true): ExpressionNode[] {\n\t\treturn this.argument?.dependency(computed) || [];\n\t}\n\tdependencyPath(computed?: true): ExpressionEventPath[] {\n\t\treturn this.argument?.dependencyPath(computed) || [];\n\t}\n\ttoString(): string {\n\t\treturn `return ${this.argument?.toString() || ''}`;\n\t}\n\ttoJson(): object {\n\t\treturn { argument: this.argument?.toJSON() };\n\t}\n}\n"]}
@@ -16,3 +16,4 @@ export declare class SpreadElement extends AbstractExpressionNode {
16
16
  toString(): string;
17
17
  toJson(): object;
18
18
  }
19
+ //# sourceMappingURL=spread.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spread.d.ts","sourceRoot":"","sources":["../../../../src/expressions/api/computing/spread.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACX,mBAAmB,EAAE,cAAc,EAAE,gBAAgB,EACrD,cAAc,EAAE,aAAa,EAC7B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AAGxD,qBACa,aAAc,SAAQ,sBAAsB;IAYvD,OAAO,CAAC,QAAQ;IAXjB,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,GAAG,aAAa;IAOnF,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,GAAG,IAAI;gBAIxD,QAAQ,EAAE,cAAc,EAChC,KAAK,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EACxB,GAAG,CAAC,EAAE,cAAc;IAGrB,WAAW;IAGX,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG;IAG5B,GAAG,CAAC,KAAK,EAAE,KAAK,GAAG,IAAI;IAQvB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,kBAAkB;IAU1B,UAAU,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,cAAc,EAAE;IAG7C,cAAc,CAAC,QAAQ,CAAC,EAAE,IAAI,GAAG,mBAAmB,EAAE;IAGtD,QAAQ,IAAI,MAAM;IAGlB,MAAM,IAAI,MAAM;CAGhB"}