@eagleoutice/flowr 2.6.2 → 2.6.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (349) hide show
  1. package/README.md +36 -34
  2. package/abstract-interpretation/data-frame/absint-visitor.js +3 -3
  3. package/abstract-interpretation/data-frame/mappers/function-mapper.d.ts +7 -7
  4. package/abstract-interpretation/data-frame/mappers/function-mapper.js +20 -16
  5. package/abstract-interpretation/data-frame/semantics.js +8 -0
  6. package/abstract-interpretation/data-frame/shape-inference.d.ts +3 -3
  7. package/abstract-interpretation/data-frame/shape-inference.js +3 -3
  8. package/abstract-interpretation/normalized-ast-fold.d.ts +1 -1
  9. package/benchmark/slicer.d.ts +1 -0
  10. package/benchmark/slicer.js +13 -12
  11. package/benchmark/summarizer/first-phase/process.js +1 -1
  12. package/benchmark/summarizer/second-phase/graph.d.ts +3 -1
  13. package/benchmark/summarizer/second-phase/graph.js +3 -1
  14. package/cli/export-quads-app.js +1 -1
  15. package/cli/repl/commands/repl-dataflow.js +2 -1
  16. package/cli/repl/commands/repl-parse.js +16 -4
  17. package/cli/repl/commands/repl-query.js +1 -1
  18. package/cli/repl/core.js +16 -13
  19. package/cli/repl/server/connection.js +2 -1
  20. package/cli/script-core/statistics-helper-core.js +2 -1
  21. package/cli/slicer-app.js +3 -4
  22. package/cli/wiki.d.ts +4 -0
  23. package/cli/wiki.js +165 -0
  24. package/config.d.ts +4 -0
  25. package/config.js +6 -0
  26. package/control-flow/cfg-dead-code.js +13 -3
  27. package/control-flow/cfg-simplification.d.ts +5 -2
  28. package/control-flow/cfg-simplification.js +3 -0
  29. package/control-flow/extract-cfg.d.ts +9 -3
  30. package/control-flow/extract-cfg.js +44 -4
  31. package/control-flow/semantic-cfg-guided-visitor.d.ts +2 -2
  32. package/control-flow/simple-visitor.js +2 -2
  33. package/control-flow/useless-loop.d.ts +3 -3
  34. package/control-flow/useless-loop.js +14 -5
  35. package/core/pipeline-executor.d.ts +3 -6
  36. package/core/pipeline-executor.js +4 -7
  37. package/core/print/normalize-printer.d.ts +1 -1
  38. package/core/print/normalize-printer.js +2 -2
  39. package/core/steps/all/core/00-parse.d.ts +1 -1
  40. package/core/steps/all/core/00-parse.js +1 -1
  41. package/core/steps/all/core/10-normalize.d.ts +3 -9
  42. package/core/steps/all/core/10-normalize.js +1 -16
  43. package/core/steps/all/core/11-normalize-tree-sitter.d.ts +2 -3
  44. package/core/steps/all/core/11-normalize-tree-sitter.js +2 -3
  45. package/core/steps/all/core/20-dataflow.d.ts +3 -4
  46. package/core/steps/all/core/20-dataflow.js +2 -2
  47. package/core/steps/all/static-slicing/00-slice.d.ts +1 -2
  48. package/core/steps/all/static-slicing/00-slice.js +1 -1
  49. package/core/steps/all/static-slicing/10-reconstruct.d.ts +8 -0
  50. package/core/steps/all/static-slicing/10-reconstruct.js +4 -1
  51. package/core/steps/pipeline/default-pipelines.d.ts +55 -56
  52. package/core/steps/pipeline/default-pipelines.js +8 -8
  53. package/dataflow/environments/clone.d.ts +0 -1
  54. package/dataflow/environments/clone.js +12 -2
  55. package/dataflow/environments/diff.js +2 -2
  56. package/dataflow/environments/overwrite.d.ts +1 -5
  57. package/dataflow/environments/overwrite.js +3 -19
  58. package/dataflow/environments/scoping.d.ts +6 -2
  59. package/dataflow/environments/scoping.js +6 -2
  60. package/dataflow/eval/resolve/resolve-argument.js +2 -2
  61. package/dataflow/eval/values/string/string-constants.d.ts +9 -3
  62. package/dataflow/eval/values/string/string-constants.js +9 -3
  63. package/dataflow/extractor.d.ts +2 -3
  64. package/dataflow/extractor.js +25 -22
  65. package/dataflow/graph/graph.d.ts +3 -9
  66. package/dataflow/graph/graph.js +0 -13
  67. package/dataflow/graph/unknown-replacement.d.ts +4 -2
  68. package/dataflow/graph/unknown-replacement.js +4 -2
  69. package/dataflow/info.d.ts +7 -0
  70. package/dataflow/info.js +21 -0
  71. package/dataflow/internal/linker.js +7 -4
  72. package/dataflow/internal/process/functions/call/argument/make-argument.d.ts +2 -2
  73. package/dataflow/internal/process/functions/call/argument/make-argument.js +2 -3
  74. package/dataflow/internal/process/functions/call/built-in/built-in-access.d.ts +1 -1
  75. package/dataflow/internal/process/functions/call/built-in/built-in-access.js +4 -4
  76. package/dataflow/internal/process/functions/call/built-in/built-in-apply.js +1 -1
  77. package/dataflow/internal/process/functions/call/built-in/built-in-assignment.js +4 -4
  78. package/dataflow/internal/process/functions/call/built-in/built-in-eval.js +6 -6
  79. package/dataflow/internal/process/functions/call/built-in/built-in-expression-list.js +1 -1
  80. package/dataflow/internal/process/functions/call/built-in/built-in-for-loop.js +1 -1
  81. package/dataflow/internal/process/functions/call/built-in/built-in-function-definition.js +1 -1
  82. package/dataflow/internal/process/functions/call/built-in/built-in-get.d.ts +1 -1
  83. package/dataflow/internal/process/functions/call/built-in/built-in-get.js +1 -1
  84. package/dataflow/internal/process/functions/call/built-in/built-in-if-then-else.js +1 -1
  85. package/dataflow/internal/process/functions/call/built-in/built-in-list.js +2 -2
  86. package/dataflow/internal/process/functions/call/built-in/built-in-pipe.js +3 -3
  87. package/dataflow/internal/process/functions/call/built-in/built-in-repeat-loop.d.ts +6 -1
  88. package/dataflow/internal/process/functions/call/built-in/built-in-repeat-loop.js +6 -1
  89. package/dataflow/internal/process/functions/call/built-in/built-in-replacement.js +2 -2
  90. package/dataflow/internal/process/functions/call/built-in/built-in-source.d.ts +15 -10
  91. package/dataflow/internal/process/functions/call/built-in/built-in-source.js +78 -75
  92. package/dataflow/internal/process/functions/call/built-in/built-in-special-bin-op.d.ts +3 -1
  93. package/dataflow/internal/process/functions/call/built-in/built-in-special-bin-op.js +3 -1
  94. package/dataflow/internal/process/functions/call/built-in/built-in-vector.js +2 -2
  95. package/dataflow/internal/process/functions/call/built-in/built-in-while-loop.js +1 -1
  96. package/dataflow/internal/process/functions/call/common.d.ts +1 -1
  97. package/dataflow/internal/process/functions/call/common.js +4 -4
  98. package/dataflow/internal/process/functions/call/default-call-handling.d.ts +3 -1
  99. package/dataflow/internal/process/functions/call/default-call-handling.js +3 -1
  100. package/dataflow/internal/process/functions/call/known-call-handling.js +3 -3
  101. package/dataflow/internal/process/functions/call/named-call-handling.js +4 -4
  102. package/dataflow/internal/process/functions/process-parameter.js +4 -4
  103. package/dataflow/origin/dfg-get-symbol-refs.d.ts +1 -1
  104. package/dataflow/origin/dfg-get-symbol-refs.js +1 -1
  105. package/dataflow/processor.d.ts +6 -11
  106. package/documentation/data/dfg/doc-data-dfg-util.d.ts +0 -2
  107. package/documentation/data/faq/faqs.js +27 -18
  108. package/documentation/data/faq/recommended-configs.d.ts +36 -0
  109. package/documentation/data/faq/recommended-configs.js +40 -0
  110. package/documentation/data/faq/wiki-faq-store.d.ts +1 -0
  111. package/documentation/data/faq/wiki-faq-store.js +10 -2
  112. package/documentation/data/server/doc-data-server-messages.js +1 -1
  113. package/documentation/doc-capabilities.d.ts +9 -0
  114. package/documentation/{print-capabilities-markdown.js → doc-capabilities.js} +18 -21
  115. package/documentation/doc-readme.d.ts +9 -0
  116. package/documentation/{print-readme.js → doc-readme.js} +31 -35
  117. package/documentation/doc-util/doc-benchmarks.d.ts +6 -4
  118. package/documentation/doc-util/doc-benchmarks.js +6 -4
  119. package/documentation/doc-util/doc-cfg.js +5 -8
  120. package/documentation/doc-util/doc-dfg.d.ts +7 -7
  121. package/documentation/doc-util/doc-dfg.js +13 -13
  122. package/documentation/doc-util/doc-escape.d.ts +6 -0
  123. package/documentation/doc-util/doc-escape.js +11 -0
  124. package/documentation/doc-util/doc-general.d.ts +22 -2
  125. package/documentation/doc-util/doc-general.js +22 -2
  126. package/documentation/doc-util/doc-normalized-ast.d.ts +10 -5
  127. package/documentation/doc-util/doc-normalized-ast.js +12 -9
  128. package/documentation/doc-util/doc-query.d.ts +12 -4
  129. package/documentation/doc-util/doc-query.js +18 -11
  130. package/documentation/doc-util/doc-search.d.ts +0 -30
  131. package/documentation/doc-util/doc-search.js +2 -73
  132. package/documentation/doc-util/doc-server-message.d.ts +5 -5
  133. package/documentation/doc-util/doc-server-message.js +4 -4
  134. package/documentation/doc-util/doc-types.d.ts +69 -32
  135. package/documentation/doc-util/doc-types.js +108 -61
  136. package/documentation/index.d.ts +9 -9
  137. package/documentation/index.js +9 -9
  138. package/documentation/issue-linting-rule.d.ts +9 -0
  139. package/documentation/{print-linter-issue.js → issue-linting-rule.js} +20 -23
  140. package/documentation/wiki-analyzer.d.ts +9 -0
  141. package/documentation/wiki-analyzer.js +412 -0
  142. package/documentation/wiki-cfg.d.ts +9 -0
  143. package/documentation/{print-cfg-wiki.js → wiki-cfg.js} +144 -160
  144. package/documentation/wiki-core.d.ts +14 -0
  145. package/documentation/{print-core-wiki.js → wiki-core.js} +164 -175
  146. package/documentation/wiki-dataflow-graph.d.ts +9 -0
  147. package/documentation/{print-dataflow-graph-wiki.js → wiki-dataflow-graph.js} +142 -172
  148. package/documentation/wiki-engine.d.ts +9 -0
  149. package/documentation/{print-engines-wiki.js → wiki-engine.js} +27 -42
  150. package/documentation/wiki-faq.d.ts +8 -0
  151. package/documentation/wiki-faq.js +22 -0
  152. package/documentation/wiki-interface.d.ts +9 -0
  153. package/documentation/{print-interface-wiki.js → wiki-interface.js} +59 -56
  154. package/documentation/wiki-linter.d.ts +9 -0
  155. package/documentation/{print-linter-wiki.js → wiki-linter.js} +52 -48
  156. package/documentation/wiki-linting-and-testing.d.ts +9 -0
  157. package/documentation/{print-linting-and-testing-wiki.js → wiki-linting-and-testing.js} +25 -32
  158. package/documentation/wiki-mk/doc-context.d.ts +186 -0
  159. package/documentation/wiki-mk/doc-context.js +84 -0
  160. package/documentation/wiki-mk/doc-maker.d.ts +95 -0
  161. package/documentation/wiki-mk/doc-maker.js +133 -0
  162. package/documentation/wiki-normalized-ast.d.ts +9 -0
  163. package/documentation/{print-normalized-ast-wiki.js → wiki-normalized-ast.js} +64 -47
  164. package/documentation/wiki-onboarding.d.ts +8 -0
  165. package/documentation/{print-onboarding-wiki.js → wiki-onboarding.js} +18 -15
  166. package/documentation/wiki-query.d.ts +9 -0
  167. package/documentation/{print-query-wiki.js → wiki-query.js} +62 -47
  168. package/documentation/wiki-search.d.ts +9 -0
  169. package/documentation/wiki-search.js +61 -0
  170. package/linter/linter-executor.js +3 -2
  171. package/linter/linter-format.d.ts +2 -2
  172. package/linter/linter-rules.d.ts +13 -17
  173. package/linter/rules/absolute-path.d.ts +1 -2
  174. package/linter/rules/absolute-path.js +2 -2
  175. package/linter/rules/dataframe-access-validation.d.ts +1 -1
  176. package/linter/rules/dataframe-access-validation.js +12 -8
  177. package/linter/rules/dead-code.d.ts +1 -1
  178. package/linter/rules/deprecated-functions.d.ts +1 -5
  179. package/linter/rules/file-path-validity.d.ts +1 -1
  180. package/linter/rules/file-path-validity.js +4 -4
  181. package/linter/rules/function-finder-util.d.ts +1 -5
  182. package/linter/rules/naming-convention.d.ts +2 -2
  183. package/linter/rules/naming-convention.js +1 -1
  184. package/linter/rules/network-functions.d.ts +1 -1
  185. package/linter/rules/network-functions.js +1 -1
  186. package/linter/rules/seeded-randomness.d.ts +3 -2
  187. package/linter/rules/seeded-randomness.js +33 -13
  188. package/linter/rules/unused-definition.d.ts +1 -1
  189. package/linter/rules/useless-loop.d.ts +2 -2
  190. package/linter/rules/useless-loop.js +2 -2
  191. package/package.json +6 -17
  192. package/project/cache/flowr-analyzer-cache.d.ts +7 -10
  193. package/project/cache/flowr-analyzer-cache.js +17 -38
  194. package/project/cache/flowr-analyzer-controlflow-cache.d.ts +34 -0
  195. package/project/cache/flowr-analyzer-controlflow-cache.js +79 -0
  196. package/project/context/flowr-analyzer-context.d.ts +30 -5
  197. package/project/context/flowr-analyzer-context.js +48 -4
  198. package/project/context/flowr-analyzer-files-context.d.ts +63 -13
  199. package/project/context/flowr-analyzer-files-context.js +110 -39
  200. package/project/context/flowr-file.d.ts +32 -10
  201. package/project/context/flowr-file.js +30 -9
  202. package/project/flowr-analyzer-builder.d.ts +22 -28
  203. package/project/flowr-analyzer-builder.js +32 -70
  204. package/project/flowr-analyzer.d.ts +55 -14
  205. package/project/flowr-analyzer.js +53 -8
  206. package/project/plugins/file-plugins/flowr-analyzer-description-file-plugin.d.ts +7 -1
  207. package/project/plugins/file-plugins/flowr-analyzer-description-file-plugin.js +13 -5
  208. package/project/plugins/file-plugins/flowr-analyzer-file-plugin.d.ts +3 -3
  209. package/project/plugins/file-plugins/flowr-analyzer-file-plugin.js +11 -5
  210. package/project/plugins/file-plugins/flowr-description-file.d.ts +3 -3
  211. package/project/plugins/file-plugins/notebooks/flowr-analyzer-jupyter-file-plugin.d.ts +22 -0
  212. package/project/plugins/file-plugins/notebooks/flowr-analyzer-jupyter-file-plugin.js +33 -0
  213. package/project/plugins/file-plugins/notebooks/flowr-analyzer-qmd-file-plugin.d.ts +22 -0
  214. package/project/plugins/file-plugins/notebooks/flowr-analyzer-qmd-file-plugin.js +33 -0
  215. package/project/plugins/file-plugins/notebooks/flowr-analyzer-rmd-file-plugin.d.ts +22 -0
  216. package/project/plugins/file-plugins/notebooks/flowr-analyzer-rmd-file-plugin.js +33 -0
  217. package/project/plugins/file-plugins/notebooks/flowr-jupyter-file.d.ts +20 -0
  218. package/project/plugins/file-plugins/notebooks/flowr-jupyter-file.js +42 -0
  219. package/project/plugins/file-plugins/notebooks/flowr-rmarkdown-file.d.ts +59 -0
  220. package/project/plugins/file-plugins/notebooks/flowr-rmarkdown-file.js +132 -0
  221. package/project/plugins/file-plugins/notebooks/notebook.d.ts +0 -0
  222. package/project/plugins/file-plugins/notebooks/notebook.js +2 -0
  223. package/project/plugins/flowr-analyzer-plugin-defaults.d.ts +5 -0
  224. package/project/plugins/flowr-analyzer-plugin-defaults.js +23 -0
  225. package/project/plugins/flowr-analyzer-plugin.d.ts +2 -0
  226. package/project/plugins/flowr-analyzer-plugin.js +2 -0
  227. package/project/plugins/loading-order-plugins/flowr-analyzer-loading-order-description-file-plugin.js +1 -1
  228. package/project/plugins/package-version-plugins/flowr-analyzer-package-versions-description-file-plugin.js +1 -1
  229. package/project/plugins/plugin-registry.d.ts +34 -0
  230. package/project/plugins/plugin-registry.js +62 -0
  231. package/project/plugins/project-discovery/flowr-analyzer-project-discovery-plugin.js +7 -1
  232. package/queries/catalog/call-context-query/call-context-query-executor.js +4 -2
  233. package/queries/catalog/call-context-query/identify-link-to-last-call-relation.d.ts +5 -2
  234. package/queries/catalog/call-context-query/identify-link-to-last-call-relation.js +25 -18
  235. package/queries/catalog/cluster-query/cluster-query-format.d.ts +1 -1
  236. package/queries/catalog/control-flow-query/control-flow-query-format.d.ts +1 -1
  237. package/queries/catalog/dataflow-lens-query/dataflow-lens-query-format.d.ts +1 -1
  238. package/queries/catalog/dataflow-query/dataflow-query-format.d.ts +1 -1
  239. package/queries/catalog/dependencies-query/dependencies-query-executor.d.ts +1 -1
  240. package/queries/catalog/dependencies-query/dependencies-query-executor.js +1 -1
  241. package/queries/catalog/dependencies-query/dependencies-query-format.d.ts +1 -1
  242. package/queries/catalog/dependencies-query/dependencies-query-format.js +1 -1
  243. package/queries/catalog/df-shape-query/df-shape-query-executor.js +1 -1
  244. package/queries/catalog/df-shape-query/df-shape-query-format.d.ts +2 -2
  245. package/queries/catalog/df-shape-query/df-shape-query-format.js +6 -5
  246. package/queries/catalog/happens-before-query/happens-before-query-executor.d.ts +2 -1
  247. package/queries/catalog/happens-before-query/happens-before-query-executor.js +2 -1
  248. package/queries/catalog/happens-before-query/happens-before-query-format.d.ts +1 -1
  249. package/queries/catalog/id-map-query/id-map-query-format.d.ts +1 -1
  250. package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-executor.d.ts +1 -1
  251. package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-executor.js +1 -1
  252. package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-format.d.ts +1 -1
  253. package/queries/catalog/linter-query/linter-query-format.d.ts +1 -1
  254. package/queries/catalog/linter-query/linter-query-format.js +13 -2
  255. package/queries/catalog/location-map-query/location-map-query-executor.js +2 -1
  256. package/queries/catalog/location-map-query/location-map-query-format.d.ts +1 -1
  257. package/queries/catalog/location-map-query/location-map-query-format.js +1 -1
  258. package/queries/catalog/normalized-ast-query/normalized-ast-query-format.d.ts +1 -1
  259. package/queries/catalog/origin-query/origin-query-format.d.ts +1 -1
  260. package/queries/catalog/project-query/project-query-executor.js +3 -1
  261. package/queries/catalog/project-query/project-query-format.d.ts +1 -1
  262. package/queries/catalog/resolve-value-query/resolve-value-query-executor.d.ts +2 -2
  263. package/queries/catalog/resolve-value-query/resolve-value-query-executor.js +2 -2
  264. package/queries/catalog/resolve-value-query/resolve-value-query-format.d.ts +1 -1
  265. package/queries/catalog/search-query/search-query-format.d.ts +1 -1
  266. package/queries/catalog/static-slice-query/static-slice-query-executor.js +1 -1
  267. package/queries/catalog/static-slice-query/static-slice-query-format.d.ts +1 -1
  268. package/queries/catalog/static-slice-query/static-slice-query-format.js +13 -1
  269. package/queries/query.d.ts +26 -18
  270. package/queries/query.js +21 -1
  271. package/r-bridge/lang-4.x/ast/model/collect.d.ts +2 -1
  272. package/r-bridge/lang-4.x/ast/model/collect.js +4 -0
  273. package/r-bridge/lang-4.x/ast/model/nodes/r-project.d.ts +29 -0
  274. package/r-bridge/lang-4.x/ast/model/nodes/r-project.js +15 -0
  275. package/r-bridge/lang-4.x/ast/model/processing/decorate.d.ts +5 -7
  276. package/r-bridge/lang-4.x/ast/model/processing/decorate.js +24 -11
  277. package/r-bridge/lang-4.x/ast/model/type.d.ts +2 -0
  278. package/r-bridge/lang-4.x/ast/model/type.js +2 -0
  279. package/r-bridge/lang-4.x/ast/parser/json/format.js +1 -1
  280. package/r-bridge/lang-4.x/ast/parser/json/parser.d.ts +9 -8
  281. package/r-bridge/lang-4.x/ast/parser/json/parser.js +11 -10
  282. package/r-bridge/lang-4.x/ast/parser/main/internal/structure/normalize-root.d.ts +4 -3
  283. package/r-bridge/lang-4.x/ast/parser/main/internal/structure/normalize-root.js +20 -11
  284. package/r-bridge/lang-4.x/tree-sitter/tree-sitter-executor.d.ts +3 -3
  285. package/r-bridge/lang-4.x/tree-sitter/tree-sitter-executor.js +5 -4
  286. package/r-bridge/lang-4.x/tree-sitter/tree-sitter-normalize.d.ts +3 -2
  287. package/r-bridge/lang-4.x/tree-sitter/tree-sitter-normalize.js +14 -5
  288. package/r-bridge/parser.d.ts +15 -5
  289. package/r-bridge/parser.js +27 -13
  290. package/r-bridge/retriever.d.ts +9 -15
  291. package/r-bridge/retriever.js +14 -5
  292. package/r-bridge/shell.d.ts +1 -1
  293. package/r-bridge/shell.js +1 -1
  294. package/reconstruct/auto-select/auto-select-defaults.d.ts +0 -1
  295. package/reconstruct/auto-select/magic-comments.js +1 -1
  296. package/reconstruct/reconstruct.d.ts +17 -9
  297. package/reconstruct/reconstruct.js +19 -8
  298. package/search/flowr-search.d.ts +12 -0
  299. package/search/search-executor/search-enrichers.d.ts +9 -2
  300. package/search/search-executor/search-enrichers.js +1 -3
  301. package/search/search-executor/search-generators.d.ts +1 -1
  302. package/search/search-executor/search-generators.js +9 -4
  303. package/slicing/criterion/collect-all.d.ts +3 -2
  304. package/slicing/criterion/collect-all.js +1 -1
  305. package/slicing/criterion/parse.js +4 -4
  306. package/statistics/features/supported/assignments/assignments.js +1 -1
  307. package/statistics/features/supported/control-flow/control-flow.js +1 -1
  308. package/statistics/features/supported/data-access/data-access.js +1 -1
  309. package/statistics/features/supported/defined-functions/defined-functions.js +1 -1
  310. package/statistics/features/supported/expression-list/statistics-expression-list.js +1 -1
  311. package/statistics/features/supported/loops/loops.js +1 -1
  312. package/statistics/features/supported/used-functions/used-functions.js +1 -1
  313. package/statistics/features/supported/variables/variables.js +1 -1
  314. package/statistics/statistics.js +3 -2
  315. package/util/assert.d.ts +4 -0
  316. package/util/assert.js +4 -0
  317. package/util/files.d.ts +1 -1
  318. package/util/files.js +1 -1
  319. package/util/mermaid/ast.d.ts +4 -3
  320. package/util/mermaid/ast.js +36 -8
  321. package/util/mermaid/cfg.js +1 -1
  322. package/util/version.js +1 -1
  323. package/documentation/print-analyzer-wiki.d.ts +0 -1
  324. package/documentation/print-analyzer-wiki.js +0 -141
  325. package/documentation/print-capabilities-markdown.d.ts +0 -1
  326. package/documentation/print-cfg-wiki.d.ts +0 -1
  327. package/documentation/print-core-wiki.d.ts +0 -5
  328. package/documentation/print-dataflow-graph-wiki.d.ts +0 -1
  329. package/documentation/print-engines-wiki.d.ts +0 -1
  330. package/documentation/print-faq-wiki.d.ts +0 -1
  331. package/documentation/print-faq-wiki.js +0 -18
  332. package/documentation/print-interface-wiki.d.ts +0 -1
  333. package/documentation/print-linter-issue.d.ts +0 -1
  334. package/documentation/print-linter-wiki.d.ts +0 -1
  335. package/documentation/print-linting-and-testing-wiki.d.ts +0 -1
  336. package/documentation/print-normalized-ast-wiki.d.ts +0 -1
  337. package/documentation/print-onboarding-wiki.d.ts +0 -1
  338. package/documentation/print-query-wiki.d.ts +0 -1
  339. package/documentation/print-readme.d.ts +0 -1
  340. package/documentation/print-search-wiki.d.ts +0 -1
  341. package/documentation/print-search-wiki.js +0 -74
  342. package/util/formats/adapter-format.d.ts +0 -6
  343. package/util/formats/adapter-format.js +0 -3
  344. package/util/formats/adapter.d.ts +0 -27
  345. package/util/formats/adapter.js +0 -58
  346. package/util/formats/adapters/r-adapter.d.ts +0 -4
  347. package/util/formats/adapters/r-adapter.js +0 -7
  348. package/util/formats/adapters/rmd-adapter.d.ts +0 -35
  349. package/util/formats/adapters/rmd-adapter.js +0 -100
@@ -6,7 +6,6 @@ import type { KnownParser, Parser } from '../../../r-bridge/parser';
6
6
  import { PipelineExecutor } from '../../pipeline-executor';
7
7
  import type { RShell } from '../../../r-bridge/shell';
8
8
  import type { TreeSitterExecutor } from '../../../r-bridge/lang-4.x/tree-sitter/tree-sitter-executor';
9
- import type { FlowrConfigOptions } from '../../../config';
10
9
  export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
11
10
  readonly name: "parse";
12
11
  readonly humanReadableName: "parse with R shell";
@@ -19,7 +18,7 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
19
18
  (value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
20
19
  (value: any, replacer?: (number | string)[] | null, space?: string | number): string;
21
20
  };
22
- readonly 5: ({ parsed }: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
21
+ readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
23
22
  };
24
23
  readonly dependencies: readonly [];
25
24
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
@@ -29,7 +28,7 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
29
28
  readonly description: "Normalize the AST to flowR's AST";
30
29
  readonly processor: (results: {
31
30
  parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
32
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
31
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
33
32
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
34
33
  readonly printer: {
35
34
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -47,7 +46,7 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
47
46
  readonly processor: (results: {
48
47
  dataflow?: import("../../../dataflow/info").DataflowInformation;
49
48
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
50
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
49
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
51
50
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
52
51
  readonly printer: {
53
52
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -59,9 +58,9 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
59
58
  readonly processor: (results: {
60
59
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
61
60
  }, input: {
62
- request?: import("../../../r-bridge/retriever").RParseRequests;
63
61
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
64
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
62
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
63
+ }) => import("../../../dataflow/info").DataflowInformation & {
65
64
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
66
65
  };
67
66
  readonly requiredInput: {};
@@ -103,7 +102,7 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
103
102
  (value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
104
103
  (value: any, replacer?: (number | string)[] | null, space?: string | number): string;
105
104
  };
106
- readonly 5: ({ parsed }: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
105
+ readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
107
106
  };
108
107
  readonly dependencies: readonly [];
109
108
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
@@ -113,7 +112,7 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
113
112
  readonly description: "Normalize the AST to flowR's AST";
114
113
  readonly processor: (results: {
115
114
  parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
116
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
115
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
117
116
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
118
117
  readonly printer: {
119
118
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -131,7 +130,7 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
131
130
  readonly processor: (results: {
132
131
  dataflow?: import("../../../dataflow/info").DataflowInformation;
133
132
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
134
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
133
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
135
134
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
136
135
  readonly printer: {
137
136
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -143,9 +142,9 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
143
142
  readonly processor: (results: {
144
143
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
145
144
  }, input: {
146
- request?: import("../../../r-bridge/retriever").RParseRequests;
147
145
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
148
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
146
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
147
+ }) => import("../../../dataflow/info").DataflowInformation & {
149
148
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
150
149
  };
151
150
  readonly requiredInput: {};
@@ -187,7 +186,7 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
187
186
  (value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
188
187
  (value: any, replacer?: (number | string)[] | null, space?: string | number): string;
189
188
  };
190
- readonly 5: ({ parsed }: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
189
+ readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
191
190
  };
192
191
  readonly dependencies: readonly [];
193
192
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
@@ -197,7 +196,7 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
197
196
  readonly description: "Normalize the AST to flowR's AST";
198
197
  readonly processor: (results: {
199
198
  parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
200
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
199
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
201
200
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
202
201
  readonly printer: {
203
202
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -215,7 +214,7 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
215
214
  readonly processor: (results: {
216
215
  dataflow?: import("../../../dataflow/info").DataflowInformation;
217
216
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
218
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
217
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
219
218
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
220
219
  readonly printer: {
221
220
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -227,9 +226,9 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
227
226
  readonly processor: (results: {
228
227
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
229
228
  }, input: {
230
- request?: import("../../../r-bridge/retriever").RParseRequests;
231
229
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
232
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
230
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
231
+ }) => import("../../../dataflow/info").DataflowInformation & {
233
232
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
234
233
  };
235
234
  readonly requiredInput: {};
@@ -252,7 +251,7 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
252
251
  readonly processor: (results: {
253
252
  dataflow?: import("../../../dataflow/info").DataflowInformation;
254
253
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
255
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
254
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
256
255
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
257
256
  readonly printer: {
258
257
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -264,9 +263,9 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
264
263
  readonly processor: (results: {
265
264
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
266
265
  }, input: {
267
- request?: import("../../../r-bridge/retriever").RParseRequests;
268
266
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
269
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
267
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
268
+ }) => import("../../../dataflow/info").DataflowInformation & {
270
269
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
271
270
  };
272
271
  readonly requiredInput: {};
@@ -315,8 +314,8 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
315
314
  readonly humanReadableName: "normalize tree-sitter tree";
316
315
  readonly description: "Normalize the AST to flowR's AST";
317
316
  readonly processor: (results: {
318
- "parse"?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
319
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>, config: FlowrConfigOptions) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
317
+ parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
318
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
320
319
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
321
320
  readonly printer: {
322
321
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -335,7 +334,7 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
335
334
  readonly processor: (results: {
336
335
  dataflow?: import("../../../dataflow/info").DataflowInformation;
337
336
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
338
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
337
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
339
338
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
340
339
  readonly printer: {
341
340
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -347,9 +346,9 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
347
346
  readonly processor: (results: {
348
347
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
349
348
  }, input: {
350
- request?: import("../../../r-bridge/retriever").RParseRequests;
351
349
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
352
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
350
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
351
+ }) => import("../../../dataflow/info").DataflowInformation & {
353
352
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
354
353
  };
355
354
  readonly requiredInput: {};
@@ -398,8 +397,8 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
398
397
  readonly humanReadableName: "normalize tree-sitter tree";
399
398
  readonly description: "Normalize the AST to flowR's AST";
400
399
  readonly processor: (results: {
401
- "parse"?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
402
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>, config: FlowrConfigOptions) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
400
+ parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
401
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
403
402
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
404
403
  readonly printer: {
405
404
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -418,7 +417,7 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
418
417
  readonly processor: (results: {
419
418
  dataflow?: import("../../../dataflow/info").DataflowInformation;
420
419
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
421
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
420
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
422
421
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
423
422
  readonly printer: {
424
423
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -430,9 +429,9 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
430
429
  readonly processor: (results: {
431
430
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
432
431
  }, input: {
433
- request?: import("../../../r-bridge/retriever").RParseRequests;
434
432
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
435
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
433
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
434
+ }) => import("../../../dataflow/info").DataflowInformation & {
436
435
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
437
436
  };
438
437
  readonly requiredInput: {};
@@ -467,8 +466,8 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
467
466
  readonly humanReadableName: "normalize tree-sitter tree";
468
467
  readonly description: "Normalize the AST to flowR's AST";
469
468
  readonly processor: (results: {
470
- "parse"?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
471
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>, config: FlowrConfigOptions) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
469
+ parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
470
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
472
471
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
473
472
  readonly printer: {
474
473
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -497,7 +496,7 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
497
496
  (value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
498
497
  (value: any, replacer?: (number | string)[] | null, space?: string | number): string;
499
498
  };
500
- readonly 5: ({ parsed }: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
499
+ readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
501
500
  };
502
501
  readonly dependencies: readonly [];
503
502
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
@@ -507,7 +506,7 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
507
506
  readonly description: "Normalize the AST to flowR's AST";
508
507
  readonly processor: (results: {
509
508
  parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
510
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
509
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
511
510
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
512
511
  readonly printer: {
513
512
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -523,9 +522,9 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
523
522
  readonly processor: (results: {
524
523
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
525
524
  }, input: {
526
- request?: import("../../../r-bridge/retriever").RParseRequests;
527
525
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
528
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
526
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
527
+ }) => import("../../../dataflow/info").DataflowInformation & {
529
528
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
530
529
  };
531
530
  readonly requiredInput: {};
@@ -546,9 +545,9 @@ export declare const TREE_SITTER_DATAFLOW_PIPELINE: import("./pipeline").Pipelin
546
545
  readonly processor: (results: {
547
546
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
548
547
  }, input: {
549
- request?: import("../../../r-bridge/retriever").RParseRequests;
550
548
  parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
551
- }, config: FlowrConfigOptions) => import("../../../dataflow/info").DataflowInformation & {
549
+ context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
550
+ }) => import("../../../dataflow/info").DataflowInformation & {
552
551
  cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
553
552
  };
554
553
  readonly requiredInput: {};
@@ -583,8 +582,8 @@ export declare const TREE_SITTER_DATAFLOW_PIPELINE: import("./pipeline").Pipelin
583
582
  readonly humanReadableName: "normalize tree-sitter tree";
584
583
  readonly description: "Normalize the AST to flowR's AST";
585
584
  readonly processor: (results: {
586
- "parse"?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
587
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>, config: FlowrConfigOptions) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
585
+ parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
586
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
588
587
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
589
588
  readonly printer: {
590
589
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -609,7 +608,7 @@ export declare const DEFAULT_NORMALIZE_PIPELINE: import("./pipeline").Pipeline<{
609
608
  (value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
610
609
  (value: any, replacer?: (number | string)[] | null, space?: string | number): string;
611
610
  };
612
- readonly 5: ({ parsed }: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
611
+ readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
613
612
  };
614
613
  readonly dependencies: readonly [];
615
614
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
@@ -619,7 +618,7 @@ export declare const DEFAULT_NORMALIZE_PIPELINE: import("./pipeline").Pipeline<{
619
618
  readonly description: "Normalize the AST to flowR's AST";
620
619
  readonly processor: (results: {
621
620
  parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
622
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
621
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
623
622
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
624
623
  readonly printer: {
625
624
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -651,8 +650,8 @@ export declare const TREE_SITTER_NORMALIZE_PIPELINE: import("./pipeline").Pipeli
651
650
  readonly humanReadableName: "normalize tree-sitter tree";
652
651
  readonly description: "Normalize the AST to flowR's AST";
653
652
  readonly processor: (results: {
654
- "parse"?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
655
- }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>, config: FlowrConfigOptions) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/model").RNode<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
653
+ parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
654
+ }, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
656
655
  readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
657
656
  readonly printer: {
658
657
  readonly 0: typeof import("../../print/print").internalPrinter;
@@ -676,7 +675,7 @@ export declare const DEFAULT_PARSE_PIPELINE: import("./pipeline").Pipeline<{
676
675
  (value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
677
676
  (value: any, replacer?: (number | string)[] | null, space?: string | number): string;
678
677
  };
679
- readonly 5: ({ parsed }: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
678
+ readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
680
679
  };
681
680
  readonly dependencies: readonly [];
682
681
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
@@ -697,15 +696,15 @@ export declare const TREE_SITTER_PARSE_PIPELINE: import("./pipeline").Pipeline<{
697
696
  readonly dependencies: readonly [];
698
697
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<import("web-tree-sitter").Tree>;
699
698
  }>;
700
- export declare function createParsePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof TREE_SITTER_PARSE_PIPELINE>;
701
- export declare function createParsePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_PARSE_PIPELINE>;
702
- export declare function createParsePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_PARSE_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_PARSE_PIPELINE>;
703
- export declare function createSlicePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof TREE_SITTER_SLICING_PIPELINE>;
704
- export declare function createSlicePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_SLICING_PIPELINE>;
705
- export declare function createSlicePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_SLICING_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_SLICING_PIPELINE>;
706
- export declare function createNormalizePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof TREE_SITTER_NORMALIZE_PIPELINE>;
707
- export declare function createNormalizePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_NORMALIZE_PIPELINE>;
708
- export declare function createNormalizePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_NORMALIZE_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_NORMALIZE_PIPELINE>;
709
- export declare function createDataflowPipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof TREE_SITTER_DATAFLOW_PIPELINE>;
710
- export declare function createDataflowPipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_DATAFLOW_PIPELINE>;
711
- export declare function createDataflowPipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>, config: FlowrConfigOptions): PipelineExecutor<typeof DEFAULT_DATAFLOW_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_DATAFLOW_PIPELINE>;
699
+ export declare function createParsePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_PARSE_PIPELINE>;
700
+ export declare function createParsePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_PARSE_PIPELINE>;
701
+ export declare function createParsePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_PARSE_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_PARSE_PIPELINE>;
702
+ export declare function createSlicePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_SLICING_PIPELINE>;
703
+ export declare function createSlicePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_SLICING_PIPELINE>;
704
+ export declare function createSlicePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_SLICING_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_SLICING_PIPELINE>;
705
+ export declare function createNormalizePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_NORMALIZE_PIPELINE>;
706
+ export declare function createNormalizePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_NORMALIZE_PIPELINE>;
707
+ export declare function createNormalizePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_NORMALIZE_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_NORMALIZE_PIPELINE>;
708
+ export declare function createDataflowPipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_DATAFLOW_PIPELINE>;
709
+ export declare function createDataflowPipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_DATAFLOW_PIPELINE>;
710
+ export declare function createDataflowPipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_DATAFLOW_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_DATAFLOW_PIPELINE>;
@@ -37,47 +37,47 @@ exports.TREE_SITTER_PARSE_PIPELINE = (0, pipeline_1.createPipeline)(_01_parse_tr
37
37
  * Returns either a {@link DEFAULT_PARSE_PIPELINE} or a {@link TREE_SITTER_PARSE_PIPELINE} depending on the parser used.
38
38
  * @see {@link createNormalizePipeline}, {@link createDataflowPipeline}, {@link createSlicePipeline}
39
39
  */
40
- function createParsePipeline(parser, inputs, config) {
40
+ function createParsePipeline(parser, inputs) {
41
41
  const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_PARSE_PIPELINE : exports.DEFAULT_PARSE_PIPELINE;
42
42
  return new pipeline_executor_1.PipelineExecutor(base, {
43
43
  parser: parser,
44
44
  ...inputs
45
- }, config);
45
+ });
46
46
  }
47
47
  /**
48
48
  * **Please use {@link FlowrAnalyzer} instead of this directly unless you really know what you are doing.**
49
49
  * Returns either a {@link DEFAULT_SLICING_PIPELINE} or a {@link TREE_SITTER_SLICING_PIPELINE} depending on the parser used.
50
50
  * @see {@link createParsePipeline}, {@link createNormalizePipeline}, {@link createDataflowPipeline}
51
51
  */
52
- function createSlicePipeline(parser, inputs, config) {
52
+ function createSlicePipeline(parser, inputs) {
53
53
  const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_SLICING_PIPELINE : exports.DEFAULT_SLICING_PIPELINE;
54
54
  return new pipeline_executor_1.PipelineExecutor(base, {
55
55
  parser: parser,
56
56
  ...inputs
57
- }, config);
57
+ });
58
58
  }
59
59
  /**
60
60
  * **Please use {@link FlowrAnalyzer} instead of this directly unless you really know what you are doing.**
61
61
  * Returns either a {@link DEFAULT_NORMALIZE_PIPELINE} or a {@link TREE_SITTER_NORMALIZE_PIPELINE} depending on the parser used.
62
62
  * @see {@link createParsePipeline}, {@link createDataflowPipeline}, {@link createSlicePipeline}
63
63
  */
64
- function createNormalizePipeline(parser, inputs, config) {
64
+ function createNormalizePipeline(parser, inputs) {
65
65
  const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_NORMALIZE_PIPELINE : exports.DEFAULT_NORMALIZE_PIPELINE;
66
66
  return new pipeline_executor_1.PipelineExecutor(base, {
67
67
  parser: parser,
68
68
  ...inputs
69
- }, config);
69
+ });
70
70
  }
71
71
  /**
72
72
  * **Please use {@link FlowrAnalyzer} instead of this directly unless you really know what you are doing.**
73
73
  * Returns either a {@link DEFAULT_DATAFLOW_PIPELINE} or a {@link TREE_SITTER_DATAFLOW_PIPELINE} depending on the parser used.
74
74
  * @see {@link createParsePipeline}, {@link createNormalizePipeline}, {@link createSlicePipeline}
75
75
  */
76
- function createDataflowPipeline(parser, inputs, config) {
76
+ function createDataflowPipeline(parser, inputs) {
77
77
  const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_DATAFLOW_PIPELINE : exports.DEFAULT_DATAFLOW_PIPELINE;
78
78
  return new pipeline_executor_1.PipelineExecutor(base, {
79
79
  parser: parser,
80
80
  ...inputs
81
- }, config);
81
+ });
82
82
  }
83
83
  //# sourceMappingURL=default-pipelines.js.map
@@ -2,7 +2,6 @@ import { type REnvironmentInformation } from './environment';
2
2
  /**
3
3
  * Produce a clone of the given environment information.
4
4
  * @param environment - The environment information to clone.
5
- * @param builtInEnvironment - The built-in environment
6
5
  * @param recurseParents - Whether to clone the parent environments as well.
7
6
  */
8
7
  export declare function cloneEnvironmentInformation(environment: REnvironmentInformation, recurseParents?: boolean): REnvironmentInformation;
@@ -11,13 +11,23 @@ function cloneEnvironment(environment, recurseParents) {
11
11
  }
12
12
  /* make sure the clone has the same id */
13
13
  const clone = new environment_1.Environment(recurseParents ? cloneEnvironment(environment.parent, recurseParents) : environment.parent, environment.builtInEnv);
14
- clone.memory = new Map(JSON.parse(JSON.stringify([...environment.memory])));
14
+ if (environment.memory.size < 10) {
15
+ clone.memory = new Map(JSON.parse(JSON.stringify(environment.memory.entries().toArray())));
16
+ }
17
+ else {
18
+ clone.memory = new Map(environment.memory.entries()
19
+ .map(([k, v]) => [k,
20
+ v.map(s => ({
21
+ ...s,
22
+ controlDependencies: s.controlDependencies?.slice()
23
+ }))
24
+ ]));
25
+ }
15
26
  return clone;
16
27
  }
17
28
  /**
18
29
  * Produce a clone of the given environment information.
19
30
  * @param environment - The environment information to clone.
20
- * @param builtInEnvironment - The built-in environment
21
31
  * @param recurseParents - Whether to clone the parent environments as well.
22
32
  */
23
33
  function cloneEnvironmentInformation(environment, recurseParents = true) {
@@ -33,8 +33,8 @@ function diffMemory(a, b, info) {
33
33
  continue;
34
34
  }
35
35
  // we sort both value arrays by their id so that we have no problems with differently ordered arrays (which have no impact)
36
- const sorted = [...value].sort((a, b) => String(a.nodeId).localeCompare(String(b.nodeId)));
37
- const sorted2 = [...value2].sort((a, b) => String(a.nodeId).localeCompare(String(b.nodeId)));
36
+ const sorted = value.slice().sort((a, b) => String(a.nodeId).localeCompare(String(b.nodeId)));
37
+ const sorted2 = value2.slice().sort((a, b) => String(a.nodeId).localeCompare(String(b.nodeId)));
38
38
  for (let i = 0; i < value.length; ++i) {
39
39
  const aVal = sorted[i];
40
40
  const bVal = sorted2[i];
@@ -1,9 +1,5 @@
1
- import { type IEnvironment, type REnvironmentInformation } from './environment';
1
+ import { type REnvironmentInformation } from './environment';
2
2
  import type { ControlDependency } from '../info';
3
- /**
4
- *
5
- */
6
- export declare function overwriteIEnvironmentWith(base: IEnvironment | undefined, next: IEnvironment | undefined, includeParent?: boolean, applyCds?: readonly ControlDependency[]): IEnvironment;
7
3
  export declare function overwriteEnvironment(base: REnvironmentInformation, next: REnvironmentInformation | undefined, applyCds?: readonly ControlDependency[]): REnvironmentInformation;
8
4
  export declare function overwriteEnvironment(base: REnvironmentInformation | undefined, next: REnvironmentInformation, applyCds?: readonly ControlDependency[]): REnvironmentInformation;
9
5
  export declare function overwriteEnvironment(base: undefined, next: undefined, applyCds?: readonly ControlDependency[]): undefined;
@@ -1,43 +1,27 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.overwriteIEnvironmentWith = overwriteIEnvironmentWith;
4
3
  exports.overwriteEnvironment = overwriteEnvironment;
5
4
  const assert_1 = require("../../util/assert");
6
5
  const environment_1 = require("./environment");
7
- const log_1 = require("../../util/log");
8
6
  function anyIsMaybeOrEmpty(values) {
9
- if (values.length === 0) {
10
- return true;
11
- }
12
- for (const val of values) {
13
- if (val.controlDependencies !== undefined) {
14
- return true;
15
- }
16
- }
17
- return false;
7
+ return values.length === 0 || values.some(v => v.controlDependencies !== undefined);
18
8
  }
19
- /**
20
- *
21
- */
22
9
  function overwriteIEnvironmentWith(base, next, includeParent = true, applyCds) {
23
10
  (0, assert_1.guard)(base !== undefined && next !== undefined, 'can not overwrite environments with undefined');
24
11
  const map = new Map(base.memory);
25
12
  for (const [key, values] of next.memory) {
26
- if (values.length > 1_000_000) {
27
- log_1.log.warn(`Overwriting environment with ${values.length} definitions for ${key}`);
28
- }
29
13
  const hasMaybe = applyCds !== undefined ? true : anyIsMaybeOrEmpty(values);
30
14
  if (hasMaybe) {
31
15
  const old = map.get(key);
32
16
  // we need to make a copy to avoid side effects for old reference in other environments
33
- const updatedOld = [...old ?? []];
17
+ const updatedOld = old?.slice() ?? [];
34
18
  for (const v of values) {
35
19
  const index = updatedOld.findIndex(o => o.nodeId === v.nodeId && o.definedAt === v.definedAt);
36
20
  if (index < 0) {
37
21
  if (applyCds !== undefined) {
38
22
  updatedOld.push({
39
23
  ...v,
40
- controlDependencies: applyCds.concat(v.controlDependencies ?? [])
24
+ controlDependencies: v.controlDependencies ? applyCds.concat(v.controlDependencies) : applyCds.slice()
41
25
  });
42
26
  }
43
27
  else {
@@ -1,7 +1,11 @@
1
1
  import { type REnvironmentInformation } from './environment';
2
- /** Add a new local environment scope to the stack, returns the modified variant - sharing the original environments in the stack (no deep-clone) */
2
+ /**
3
+ * Add a new local environment scope to the stack, returns the modified variant - sharing the original environments in the stack (no deep-clone)
4
+ * @see {@link popLocalEnvironment} - to remove the local scope again
5
+ */
3
6
  export declare function pushLocalEnvironment(base: REnvironmentInformation): REnvironmentInformation;
4
7
  /**
5
- *
8
+ * Remove the top local environment scope from the stack, returns the modified variant - sharing the original environments in the stack (no deep-clone)
9
+ * @see {@link pushLocalEnvironment} - to add a local scope
6
10
  */
7
11
  export declare function popLocalEnvironment(base: REnvironmentInformation): REnvironmentInformation;
@@ -4,7 +4,10 @@ exports.pushLocalEnvironment = pushLocalEnvironment;
4
4
  exports.popLocalEnvironment = popLocalEnvironment;
5
5
  const environment_1 = require("./environment");
6
6
  const assert_1 = require("../../util/assert");
7
- /** Add a new local environment scope to the stack, returns the modified variant - sharing the original environments in the stack (no deep-clone) */
7
+ /**
8
+ * Add a new local environment scope to the stack, returns the modified variant - sharing the original environments in the stack (no deep-clone)
9
+ * @see {@link popLocalEnvironment} - to remove the local scope again
10
+ */
8
11
  function pushLocalEnvironment(base) {
9
12
  return {
10
13
  current: new environment_1.Environment(base.current),
@@ -12,7 +15,8 @@ function pushLocalEnvironment(base) {
12
15
  };
13
16
  }
14
17
  /**
15
- *
18
+ * Remove the top local environment scope from the stack, returns the modified variant - sharing the original environments in the stack (no deep-clone)
19
+ * @see {@link pushLocalEnvironment} - to add a local scope
16
20
  */
17
21
  function popLocalEnvironment(base) {
18
22
  (0, assert_1.guard)(base.level > 0, 'cannot remove the global/root environment');
@@ -65,8 +65,8 @@ function hasCharacterOnly(variableResolve, graph, vertex, idMap) {
65
65
  if (!treatAsChar) {
66
66
  return false;
67
67
  }
68
- const hasTrue = [...treatAsChar.values()].some(set => set?.has('TRUE'));
69
- const hasFalse = hasTrue ? [...treatAsChar.values()].some(set => set === undefined || set.has('FALSE')) : false;
68
+ const hasTrue = treatAsChar.values().some(set => set?.has('TRUE'));
69
+ const hasFalse = hasTrue ? treatAsChar.values().some(set => set === undefined || set.has('FALSE')) : false;
70
70
  if (hasTrue && hasFalse) {
71
71
  return 'maybe';
72
72
  }
@@ -1,15 +1,21 @@
1
1
  import type { RStringValue } from '../../../../r-bridge/lang-4.x/convert-values';
2
2
  import { type Lift, type Value, type ValueString } from '../r-value';
3
3
  /**
4
- *
4
+ * Lift a raw string or R string value into a ValueString.
5
+ * @see {@link liftString} - for lifting a Lift<RStringValue>
5
6
  */
6
7
  export declare function stringFrom(str: RStringValue | string): ValueString;
7
8
  /**
8
- *
9
+ * Lift a Lift<RStringValue> into a ValueString.
10
+ * @see {@link stringFrom} - for lifting a raw string or R string value.
9
11
  */
10
12
  export declare function liftString(str: Lift<RStringValue>): ValueString;
11
13
  /**
12
- *
14
+ * Collect strings from an array of ValueString.
15
+ * If any value is not a string, or is Bottom/Top, undefined is returned.
16
+ * @param a - The array of Value to collect strings from.
17
+ * @param withQuotes - Whether to include the quotes in the returned strings.
18
+ * @returns - An array of strings, or undefined if any value is not a string.
13
19
  */
14
20
  export declare function collectStrings(a: Value[], withQuotes?: boolean): string[] | undefined;
15
21
  export declare const ValueEmptyString: ValueString<Lift<RStringValue>>;