@eagleoutice/flowr 2.9.12 → 2.9.14

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 (233) hide show
  1. package/README.md +35 -23
  2. package/abstract-interpretation/absint-visitor.d.ts +1 -1
  3. package/abstract-interpretation/absint-visitor.js +20 -20
  4. package/abstract-interpretation/data-frame/mappers/replacement-mapper.js +2 -2
  5. package/benchmark/slicer.d.ts +5 -3
  6. package/benchmark/slicer.js +26 -10
  7. package/benchmark/stats/print.js +12 -0
  8. package/benchmark/stats/stats.d.ts +3 -2
  9. package/benchmark/stats/stats.js +1 -1
  10. package/benchmark/summarizer/data.d.ts +1 -0
  11. package/benchmark/summarizer/second-phase/process.js +5 -0
  12. package/cli/benchmark-app.d.ts +1 -0
  13. package/cli/benchmark-app.js +1 -0
  14. package/cli/benchmark-helper-app.d.ts +2 -1
  15. package/cli/benchmark-helper-app.js +6 -3
  16. package/cli/common/options.d.ts +8 -0
  17. package/cli/common/options.js +3 -1
  18. package/cli/common/scripts-info.d.ts +8 -0
  19. package/cli/export-quads-app.js +1 -1
  20. package/cli/flowr.js +3 -3
  21. package/cli/repl/commands/repl-dataflow.js +5 -5
  22. package/cli/repl/core.d.ts +3 -3
  23. package/cli/repl/parser/slice-query-parser.d.ts +1 -1
  24. package/cli/repl/parser/slice-query-parser.js +2 -2
  25. package/cli/repl/server/connection.d.ts +2 -2
  26. package/cli/repl/server/connection.js +2 -2
  27. package/cli/repl/server/messages/message-slice.d.ts +1 -1
  28. package/cli/repl/server/messages/message-slice.js +2 -2
  29. package/cli/repl/server/server.d.ts +2 -2
  30. package/cli/script-core/statistics-core.d.ts +2 -2
  31. package/cli/script-core/statistics-helper-core.d.ts +2 -2
  32. package/cli/script-core/statistics-helper-core.js +1 -1
  33. package/cli/slicer-app.js +2 -2
  34. package/cli/statistics-app.js +1 -1
  35. package/cli/statistics-helper-app.js +1 -1
  36. package/cli/wiki.js +2 -2
  37. package/config.d.ts +65 -24
  38. package/config.js +197 -161
  39. package/control-flow/extract-cfg.js +7 -10
  40. package/control-flow/semantic-cfg-guided-visitor.d.ts +1 -1
  41. package/control-flow/semantic-cfg-guided-visitor.js +43 -43
  42. package/control-flow/useless-loop.d.ts +1 -1
  43. package/control-flow/useless-loop.js +3 -3
  44. package/core/print/dataflow-printer.d.ts +0 -14
  45. package/core/print/dataflow-printer.js +0 -21
  46. package/core/steps/all/core/20-dataflow.d.ts +3 -3
  47. package/core/steps/all/core/20-dataflow.js +3 -2
  48. package/core/steps/all/static-slicing/00-slice.d.ts +2 -5
  49. package/core/steps/all/static-slicing/00-slice.js +6 -8
  50. package/core/steps/pipeline/default-pipelines.d.ts +89 -89
  51. package/core/steps/pipeline-step.d.ts +2 -2
  52. package/dataflow/environments/built-in-proc-name.d.ts +83 -0
  53. package/dataflow/environments/built-in-proc-name.js +88 -0
  54. package/dataflow/environments/built-in.d.ts +1 -83
  55. package/dataflow/environments/built-in.js +37 -120
  56. package/dataflow/environments/default-builtin-config.d.ts +1 -1
  57. package/dataflow/environments/default-builtin-config.js +75 -75
  58. package/dataflow/environments/identifier.d.ts +1 -0
  59. package/dataflow/environments/identifier.js +1 -0
  60. package/dataflow/eval/resolve/alias-tracking.js +12 -15
  61. package/dataflow/eval/resolve/resolve.js +2 -2
  62. package/dataflow/fn/exceptions-of-function.d.ts +1 -1
  63. package/dataflow/fn/exceptions-of-function.js +2 -2
  64. package/dataflow/graph/call-graph.d.ts +49 -19
  65. package/dataflow/graph/call-graph.js +117 -114
  66. package/dataflow/graph/dataflowgraph-builder.d.ts +1 -1
  67. package/dataflow/graph/dataflowgraph-builder.js +2 -2
  68. package/dataflow/graph/df-helper.d.ts +132 -0
  69. package/dataflow/graph/df-helper.js +131 -0
  70. package/dataflow/graph/diff-dataflow-graph.d.ts +5 -10
  71. package/dataflow/graph/diff-dataflow-graph.js +3 -28
  72. package/dataflow/graph/edge.d.ts +1 -0
  73. package/dataflow/graph/edge.js +1 -0
  74. package/dataflow/graph/graph-helper.d.ts +55 -0
  75. package/dataflow/graph/graph-helper.js +105 -0
  76. package/dataflow/graph/graph.d.ts +6 -1
  77. package/dataflow/graph/graph.js +14 -9
  78. package/dataflow/graph/vertex.d.ts +1 -1
  79. package/dataflow/info.d.ts +14 -4
  80. package/dataflow/info.js +28 -16
  81. package/dataflow/internal/linker.d.ts +14 -10
  82. package/dataflow/internal/linker.js +29 -32
  83. package/dataflow/internal/process/functions/call/built-in/built-in-access.js +5 -5
  84. package/dataflow/internal/process/functions/call/built-in/built-in-apply.js +4 -4
  85. package/dataflow/internal/process/functions/call/built-in/built-in-assignment.js +7 -6
  86. package/dataflow/internal/process/functions/call/built-in/built-in-eval.d.ts +1 -1
  87. package/dataflow/internal/process/functions/call/built-in/built-in-eval.js +5 -5
  88. package/dataflow/internal/process/functions/call/built-in/built-in-expression-list.js +2 -2
  89. package/dataflow/internal/process/functions/call/built-in/built-in-for-loop.js +2 -2
  90. package/dataflow/internal/process/functions/call/built-in/built-in-function-definition.js +4 -4
  91. package/dataflow/internal/process/functions/call/built-in/built-in-get.js +2 -2
  92. package/dataflow/internal/process/functions/call/built-in/built-in-if-then-else.js +3 -3
  93. package/dataflow/internal/process/functions/call/built-in/built-in-library.js +2 -2
  94. package/dataflow/internal/process/functions/call/built-in/built-in-list.js +2 -2
  95. package/dataflow/internal/process/functions/call/built-in/built-in-local.d.ts +1 -1
  96. package/dataflow/internal/process/functions/call/built-in/built-in-local.js +5 -5
  97. package/dataflow/internal/process/functions/call/built-in/built-in-pipe.js +2 -2
  98. package/dataflow/internal/process/functions/call/built-in/built-in-quote.js +2 -2
  99. package/dataflow/internal/process/functions/call/built-in/built-in-recall.js +2 -2
  100. package/dataflow/internal/process/functions/call/built-in/built-in-register-hook.js +5 -5
  101. package/dataflow/internal/process/functions/call/built-in/built-in-repeat-loop.js +2 -2
  102. package/dataflow/internal/process/functions/call/built-in/built-in-replacement.d.ts +1 -1
  103. package/dataflow/internal/process/functions/call/built-in/built-in-replacement.js +5 -4
  104. package/dataflow/internal/process/functions/call/built-in/built-in-rm.js +2 -2
  105. package/dataflow/internal/process/functions/call/built-in/built-in-s-seven-dispatch.js +3 -3
  106. package/dataflow/internal/process/functions/call/built-in/built-in-s-seven-new-generic.js +3 -3
  107. package/dataflow/internal/process/functions/call/built-in/built-in-s-three-dispatch.d.ts +1 -1
  108. package/dataflow/internal/process/functions/call/built-in/built-in-s-three-dispatch.js +7 -7
  109. package/dataflow/internal/process/functions/call/built-in/built-in-source.d.ts +2 -2
  110. package/dataflow/internal/process/functions/call/built-in/built-in-source.js +23 -12
  111. package/dataflow/internal/process/functions/call/built-in/built-in-special-bin-op.js +3 -3
  112. package/dataflow/internal/process/functions/call/built-in/built-in-stop-if-not.js +2 -2
  113. package/dataflow/internal/process/functions/call/built-in/built-in-try-catch.js +6 -9
  114. package/dataflow/internal/process/functions/call/built-in/built-in-vector.js +2 -2
  115. package/dataflow/internal/process/functions/call/built-in/built-in-while-loop.js +2 -2
  116. package/dataflow/internal/process/functions/call/known-call-handling.js +2 -2
  117. package/dataflow/internal/process/functions/call/named-call-handling.d.ts +1 -1
  118. package/dataflow/internal/process/functions/call/named-call-handling.js +1 -1
  119. package/dataflow/internal/process/functions/call/unnamed-call-handling.js +2 -2
  120. package/dataflow/internal/process/process-uninteresting-leaf.d.ts +1 -1
  121. package/dataflow/internal/process/process-uninteresting-leaf.js +1 -1
  122. package/dataflow/origin/dfg-get-origin.d.ts +1 -1
  123. package/dataflow/origin/dfg-get-symbol-refs.js +6 -6
  124. package/documentation/doc-readme.js +2 -2
  125. package/documentation/doc-util/doc-dfg.d.ts +3 -0
  126. package/documentation/doc-util/doc-dfg.js +5 -7
  127. package/documentation/doc-util/doc-normalized-ast.d.ts +0 -6
  128. package/documentation/doc-util/doc-normalized-ast.js +0 -23
  129. package/documentation/doc-util/doc-structure.js +3 -3
  130. package/documentation/doc-util/doc-types.js +3 -3
  131. package/documentation/wiki-analyzer.js +7 -5
  132. package/documentation/wiki-core.js +6 -7
  133. package/documentation/wiki-dataflow-graph.js +15 -13
  134. package/documentation/wiki-interface.js +8 -6
  135. package/documentation/wiki-linter.js +6 -5
  136. package/documentation/wiki-mk/doc-context.js +3 -4
  137. package/documentation/wiki-normalized-ast.js +5 -4
  138. package/documentation/wiki-query.js +28 -3
  139. package/engines.d.ts +2 -2
  140. package/engines.js +4 -4
  141. package/linter/linter-rules.d.ts +24 -1
  142. package/linter/linter-rules.js +3 -1
  143. package/linter/rules/dataframe-access-validation.js +5 -5
  144. package/linter/rules/naming-convention.d.ts +1 -1
  145. package/linter/rules/naming-convention.js +7 -3
  146. package/linter/rules/seeded-randomness.js +2 -2
  147. package/linter/rules/stop-with-call-arg.d.ts +35 -0
  148. package/linter/rules/stop-with-call-arg.js +72 -0
  149. package/linter/rules/useless-loop.d.ts +1 -1
  150. package/package.json +3 -1
  151. package/project/cache/flowr-analyzer-cache.d.ts +1 -1
  152. package/project/cache/flowr-analyzer-cache.js +1 -1
  153. package/project/context/flowr-analyzer-context.d.ts +6 -6
  154. package/project/context/flowr-analyzer-context.js +2 -2
  155. package/project/context/flowr-analyzer-files-context.d.ts +2 -2
  156. package/project/context/flowr-analyzer-files-context.js +28 -8
  157. package/project/flowr-analyzer-builder.d.ts +13 -6
  158. package/project/flowr-analyzer-builder.js +12 -3
  159. package/project/flowr-analyzer.d.ts +4 -4
  160. package/queries/catalog/call-context-query/identify-link-to-nested-call-relation.js +2 -2
  161. package/queries/catalog/call-graph-query/call-graph-query-format.d.ts +1 -1
  162. package/queries/catalog/call-graph-query/call-graph-query-format.js +2 -2
  163. package/queries/catalog/cluster-query/cluster-query-format.js +2 -2
  164. package/queries/catalog/config-query/config-query-format.d.ts +5 -5
  165. package/queries/catalog/dataflow-lens-query/dataflow-lens-query-format.js +2 -2
  166. package/queries/catalog/dataflow-query/dataflow-query-format.js +2 -2
  167. package/queries/catalog/df-shape-query/df-shape-query-executor.js +1 -2
  168. package/queries/catalog/df-shape-query/df-shape-query-format.d.ts +2 -2
  169. package/queries/catalog/does-call-query/does-call-query-executor.js +2 -2
  170. package/queries/catalog/does-call-query/does-call-query-format.d.ts +2 -2
  171. package/queries/catalog/files-query/files-query-format.d.ts +3 -3
  172. package/queries/catalog/happens-before-query/happens-before-query-executor.js +2 -2
  173. package/queries/catalog/inspect-exceptions-query/inspect-exception-query-executor.d.ts +1 -1
  174. package/queries/catalog/inspect-exceptions-query/inspect-exception-query-executor.js +1 -1
  175. package/queries/catalog/inspect-exceptions-query/inspect-exception-query-format.d.ts +2 -2
  176. package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-executor.js +3 -3
  177. package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-format.d.ts +2 -2
  178. package/queries/catalog/inspect-recursion-query/inspect-recursion-query-format.d.ts +2 -2
  179. package/queries/catalog/linter-query/linter-query-format.d.ts +3 -3
  180. package/queries/catalog/location-map-query/location-map-query-executor.js +2 -2
  181. package/queries/catalog/location-map-query/location-map-query-format.d.ts +2 -2
  182. package/queries/catalog/origin-query/origin-query-executor.d.ts +1 -1
  183. package/queries/catalog/origin-query/origin-query-executor.js +3 -3
  184. package/queries/catalog/origin-query/origin-query-format.d.ts +2 -2
  185. package/queries/catalog/provenance-query/provenance-query-executor.d.ts +9 -0
  186. package/queries/catalog/provenance-query/provenance-query-executor.js +37 -0
  187. package/queries/catalog/provenance-query/provenance-query-format.d.ts +35 -0
  188. package/queries/catalog/provenance-query/provenance-query-format.js +62 -0
  189. package/queries/catalog/resolve-value-query/resolve-value-query-executor.js +4 -4
  190. package/queries/catalog/resolve-value-query/resolve-value-query-format.d.ts +2 -2
  191. package/queries/catalog/resolve-value-query/resolve-value-query-format.js +4 -0
  192. package/queries/catalog/search-query/search-query-format.js +1 -1
  193. package/queries/catalog/static-slice-query/static-slice-query-executor.js +4 -2
  194. package/queries/catalog/static-slice-query/static-slice-query-format.d.ts +4 -4
  195. package/queries/catalog/static-slice-query/static-slice-query-format.js +3 -3
  196. package/queries/query.d.ts +27 -19
  197. package/queries/query.js +2 -0
  198. package/r-bridge/lang-4.x/ast/model/model.d.ts +13 -2
  199. package/r-bridge/lang-4.x/ast/model/model.js +20 -1
  200. package/r-bridge/lang-4.x/ast/model/nodes/r-function-definition.d.ts +8 -1
  201. package/r-bridge/lang-4.x/ast/model/nodes/r-function-definition.js +13 -0
  202. package/r-bridge/lang-4.x/ast/parser/json/parser.d.ts +2 -2
  203. package/r-bridge/lang-4.x/ast/parser/json/parser.js +2 -2
  204. package/r-bridge/lang-4.x/tree-sitter/tree-sitter-normalize.js +6 -2
  205. package/search/flowr-search-filters.d.ts +1 -1
  206. package/search/flowr-search-printer.js +3 -3
  207. package/search/search-executor/search-enrichers.js +2 -2
  208. package/search/search-executor/search-generators.js +1 -1
  209. package/slicing/criterion/parse.d.ts +40 -16
  210. package/slicing/criterion/parse.js +67 -63
  211. package/slicing/static/slicer-types.d.ts +2 -3
  212. package/slicing/static/static-slicer.d.ts +3 -4
  213. package/slicing/static/static-slicer.js +9 -12
  214. package/statistics/statistics.d.ts +2 -2
  215. package/util/diff.d.ts +2 -2
  216. package/util/mermaid/ast.js +4 -4
  217. package/util/mermaid/cfg.js +5 -5
  218. package/util/mermaid/dfg.d.ts +33 -18
  219. package/util/mermaid/dfg.js +46 -31
  220. package/util/mermaid/mermaid.d.ts +57 -12
  221. package/util/mermaid/mermaid.js +74 -67
  222. package/util/objects.d.ts +12 -0
  223. package/util/objects.js +28 -0
  224. package/util/range.d.ts +8 -0
  225. package/util/range.js +13 -1
  226. package/util/slice-direction.d.ts +7 -0
  227. package/util/slice-direction.js +12 -0
  228. package/util/summarizer.js +1 -1
  229. package/util/version.js +1 -1
  230. package/dataflow/graph/invert-dfg.d.ts +0 -6
  231. package/dataflow/graph/invert-dfg.js +0 -20
  232. package/dataflow/graph/resolve-graph.d.ts +0 -8
  233. package/dataflow/graph/resolve-graph.js +0 -59
@@ -22,20 +22,6 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
22
22
  };
23
23
  readonly dependencies: readonly [];
24
24
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
25
- } | {
26
- readonly name: "slice";
27
- readonly humanReadableName: "static slice";
28
- readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
29
- readonly processor: (results: {
30
- dataflow?: import("../../../dataflow/info").DataflowInformation;
31
- normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
32
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
33
- readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
34
- readonly printer: {
35
- readonly 0: typeof import("../../print/print").internalPrinter;
36
- };
37
- readonly dependencies: readonly ["dataflow"];
38
- readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
39
25
  } | {
40
26
  readonly name: "normalize";
41
27
  readonly humanReadableName: "normalize";
@@ -71,10 +57,24 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
71
57
  readonly 0: typeof import("../../print/print").internalPrinter;
72
58
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
73
59
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
74
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
75
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
60
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
61
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
76
62
  };
77
63
  readonly dependencies: readonly ["normalize"];
64
+ } | {
65
+ readonly name: "slice";
66
+ readonly humanReadableName: "static slice";
67
+ readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
68
+ readonly processor: (results: {
69
+ dataflow?: import("../../../dataflow/info").DataflowInformation;
70
+ normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
71
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
72
+ readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
73
+ readonly printer: {
74
+ readonly 0: typeof import("../../print/print").internalPrinter;
75
+ };
76
+ readonly dependencies: readonly ["dataflow"];
77
+ readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
78
78
  } | {
79
79
  readonly name: "reconstruct";
80
80
  readonly humanReadableName: "static code reconstruction";
@@ -106,20 +106,6 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
106
106
  };
107
107
  readonly dependencies: readonly [];
108
108
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
109
- } | {
110
- readonly name: "slice";
111
- readonly humanReadableName: "static slice";
112
- readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
113
- readonly processor: (results: {
114
- dataflow?: import("../../../dataflow/info").DataflowInformation;
115
- normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
116
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
117
- readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
118
- readonly printer: {
119
- readonly 0: typeof import("../../print/print").internalPrinter;
120
- };
121
- readonly dependencies: readonly ["dataflow"];
122
- readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
123
109
  } | {
124
110
  readonly name: "normalize";
125
111
  readonly humanReadableName: "normalize";
@@ -155,10 +141,24 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
155
141
  readonly 0: typeof import("../../print/print").internalPrinter;
156
142
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
157
143
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
158
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
159
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
144
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
145
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
160
146
  };
161
147
  readonly dependencies: readonly ["normalize"];
148
+ } | {
149
+ readonly name: "slice";
150
+ readonly humanReadableName: "static slice";
151
+ readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
152
+ readonly processor: (results: {
153
+ dataflow?: import("../../../dataflow/info").DataflowInformation;
154
+ normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
155
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
156
+ readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
157
+ readonly printer: {
158
+ readonly 0: typeof import("../../print/print").internalPrinter;
159
+ };
160
+ readonly dependencies: readonly ["dataflow"];
161
+ readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
162
162
  } | {
163
163
  readonly name: "reconstruct";
164
164
  readonly humanReadableName: "static code reconstruction";
@@ -190,20 +190,6 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
190
190
  };
191
191
  readonly dependencies: readonly [];
192
192
  readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
193
- } | {
194
- readonly name: "slice";
195
- readonly humanReadableName: "static slice";
196
- readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
197
- readonly processor: (results: {
198
- dataflow?: import("../../../dataflow/info").DataflowInformation;
199
- normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
200
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
201
- readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
202
- readonly printer: {
203
- readonly 0: typeof import("../../print/print").internalPrinter;
204
- };
205
- readonly dependencies: readonly ["dataflow"];
206
- readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
207
193
  } | {
208
194
  readonly name: "normalize";
209
195
  readonly humanReadableName: "normalize";
@@ -239,12 +225,11 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
239
225
  readonly 0: typeof import("../../print/print").internalPrinter;
240
226
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
241
227
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
242
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
243
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
228
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
229
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
244
230
  };
245
231
  readonly dependencies: readonly ["normalize"];
246
- }>;
247
- export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline<{
232
+ } | {
248
233
  readonly name: "slice";
249
234
  readonly humanReadableName: "static slice";
250
235
  readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
@@ -258,7 +243,8 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
258
243
  };
259
244
  readonly dependencies: readonly ["dataflow"];
260
245
  readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
261
- } | {
246
+ }>;
247
+ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline<{
262
248
  readonly humanReadableName: "dataflow";
263
249
  readonly processor: (results: {
264
250
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
@@ -276,10 +262,24 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
276
262
  readonly 0: typeof import("../../print/print").internalPrinter;
277
263
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
278
264
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
279
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
280
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
265
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
266
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
281
267
  };
282
268
  readonly dependencies: readonly ["normalize"];
269
+ } | {
270
+ readonly name: "slice";
271
+ readonly humanReadableName: "static slice";
272
+ readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
273
+ readonly processor: (results: {
274
+ dataflow?: import("../../../dataflow/info").DataflowInformation;
275
+ normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
276
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
277
+ readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
278
+ readonly printer: {
279
+ readonly 0: typeof import("../../print/print").internalPrinter;
280
+ };
281
+ readonly dependencies: readonly ["dataflow"];
282
+ readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
283
283
  } | {
284
284
  readonly name: "reconstruct";
285
285
  readonly humanReadableName: "static code reconstruction";
@@ -328,20 +328,6 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
328
328
  readonly requiredInput: import("../all/core/10-normalize").NormalizeRequiredInput;
329
329
  }>;
330
330
  export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline").Pipeline<{
331
- readonly name: "slice";
332
- readonly humanReadableName: "static slice";
333
- readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
334
- readonly processor: (results: {
335
- dataflow?: import("../../../dataflow/info").DataflowInformation;
336
- normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
337
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
338
- readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
339
- readonly printer: {
340
- readonly 0: typeof import("../../print/print").internalPrinter;
341
- };
342
- readonly dependencies: readonly ["dataflow"];
343
- readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
344
- } | {
345
331
  readonly humanReadableName: "dataflow";
346
332
  readonly processor: (results: {
347
333
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
@@ -359,10 +345,24 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
359
345
  readonly 0: typeof import("../../print/print").internalPrinter;
360
346
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
361
347
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
362
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
363
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
348
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
349
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
364
350
  };
365
351
  readonly dependencies: readonly ["normalize"];
352
+ } | {
353
+ readonly name: "slice";
354
+ readonly humanReadableName: "static slice";
355
+ readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
356
+ readonly processor: (results: {
357
+ dataflow?: import("../../../dataflow/info").DataflowInformation;
358
+ normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
359
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
360
+ readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
361
+ readonly printer: {
362
+ readonly 0: typeof import("../../print/print").internalPrinter;
363
+ };
364
+ readonly dependencies: readonly ["dataflow"];
365
+ readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
366
366
  } | {
367
367
  readonly name: "reconstruct";
368
368
  readonly humanReadableName: "static code reconstruction";
@@ -411,20 +411,6 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
411
411
  readonly requiredInput: import("../all/core/10-normalize").NormalizeRequiredInput;
412
412
  }>;
413
413
  export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipeline").Pipeline<{
414
- readonly name: "slice";
415
- readonly humanReadableName: "static slice";
416
- readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
417
- readonly processor: (results: {
418
- dataflow?: import("../../../dataflow/info").DataflowInformation;
419
- normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
420
- }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
421
- readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
422
- readonly printer: {
423
- readonly 0: typeof import("../../print/print").internalPrinter;
424
- };
425
- readonly dependencies: readonly ["dataflow"];
426
- readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
427
- } | {
428
414
  readonly humanReadableName: "dataflow";
429
415
  readonly processor: (results: {
430
416
  normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
@@ -442,10 +428,24 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
442
428
  readonly 0: typeof import("../../print/print").internalPrinter;
443
429
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
444
430
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
445
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
446
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
431
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
432
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
447
433
  };
448
434
  readonly dependencies: readonly ["normalize"];
435
+ } | {
436
+ readonly name: "slice";
437
+ readonly humanReadableName: "static slice";
438
+ readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
439
+ readonly processor: (results: {
440
+ dataflow?: import("../../../dataflow/info").DataflowInformation;
441
+ normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
442
+ }, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
443
+ readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
444
+ readonly printer: {
445
+ readonly 0: typeof import("../../print/print").internalPrinter;
446
+ };
447
+ readonly dependencies: readonly ["dataflow"];
448
+ readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
449
449
  } | {
450
450
  readonly name: "parse";
451
451
  readonly humanReadableName: "parse with tree-sitter";
@@ -535,8 +535,8 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
535
535
  readonly 0: typeof import("../../print/print").internalPrinter;
536
536
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
537
537
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
538
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
539
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
538
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
539
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
540
540
  };
541
541
  readonly dependencies: readonly ["normalize"];
542
542
  }>;
@@ -558,8 +558,8 @@ export declare const TREE_SITTER_DATAFLOW_PIPELINE: import("./pipeline").Pipelin
558
558
  readonly 0: typeof import("../../print/print").internalPrinter;
559
559
  readonly 2: typeof import("../../print/dataflow-printer").dataflowGraphToJson;
560
560
  readonly 5: typeof import("../../print/dataflow-printer").dataflowGraphToQuads;
561
- readonly 3: typeof import("../../print/dataflow-printer").dataflowGraphToMermaid;
562
- readonly 4: typeof import("../../print/dataflow-printer").dataflowGraphToMermaidUrl;
561
+ readonly 3: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
562
+ readonly 4: (this: void, graph: import("../../../dataflow/graph/graph").DataflowGraph | import("../../../dataflow/info").DataflowInformation, includeEnvironments?: boolean, mark?: ReadonlySet<import("../../../r-bridge/lang-4.x/ast/model/processing/node-id").NodeId>, simplified?: boolean) => string;
563
563
  };
564
564
  readonly dependencies: readonly ["normalize"];
565
565
  } | {
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import type { MergeableRecord } from '../../util/objects';
6
6
  import type { InternalStepPrinter, IPipelineStepPrinter, StepOutputFormat } from '../print/print';
7
- import type { FlowrConfigOptions } from '../../config';
7
+ import type { FlowrConfig } from '../../config';
8
8
  /**
9
9
  * This represents the format of a step processor which retrieves two things:
10
10
  *
@@ -16,7 +16,7 @@ import type { FlowrConfigOptions } from '../../config';
16
16
  * list all steps that you require as your {@link IPipelineStepOrder#dependencies|dependencies}, even if they would be
17
17
  * already covered transitively.
18
18
  */
19
- export type StepProcessingFunction = (results: Record<string, unknown>, input: Record<string, unknown>, config: FlowrConfigOptions) => unknown;
19
+ export type StepProcessingFunction = (results: Record<string, unknown>, input: Record<string, unknown>, config: FlowrConfig) => unknown;
20
20
  /**
21
21
  * This represents the required execution frequency of a step.
22
22
  */
@@ -0,0 +1,83 @@
1
+ /**
2
+ * This contains all names of built-in function handlers and origins
3
+ */
4
+ export declare enum BuiltInProcName {
5
+ /** for subsetting operations, see {@link processAccess} */
6
+ Access = "builtin:access",
7
+ /** for the `*apply` family, see {@link processApply} */
8
+ Apply = "builtin:apply",
9
+ /** for assignments like `<-` and `=`, see {@link processAssignment} */
10
+ Assignment = "builtin:assignment",
11
+ /** for assignment like functions that may do additional work, see {@link processAssignmentLike} */
12
+ AssignmentLike = "builtin:assignment-like",
13
+ /** for `break` calls */
14
+ Break = "builtin:break",
15
+ /** the default built-in processor, see {@link defaultBuiltInProcessor} */
16
+ Default = "builtin:default",
17
+ /** Just a more performant variant of the default processor for built-ins that need to read all their arguments, see {@link defaultBuiltInProcessor}, this will still produce the origin `BuiltIn.Default` */
18
+ DefaultReadAllArgs = "builtin:default-read-all-args",
19
+ /** for `eval` calls, see {@link processEvalCall} */
20
+ Eval = "builtin:eval",
21
+ /** for expression lists, see {@link processExpressionList} */
22
+ ExpressionList = "builtin:expression-list",
23
+ /** for `for` loops, see {@link processForLoop} */
24
+ ForLoop = "builtin:for-loop",
25
+ /** We resolved a function call, similar to {@link BuiltInProcName#Default} */
26
+ Function = "function",
27
+ /** for function definitions, see {@link processFunctionDefinition} */
28
+ FunctionDefinition = "builtin:function-definition",
29
+ /** for `get` calls, see {@link processGet} */
30
+ Get = "builtin:get",
31
+ /** for `if-then-else` constructs, see {@link processIfThenElse} */
32
+ IfThenElse = "builtin:if-then-else",
33
+ /** for `library` and `require` calls, see {@link processLibrary} */
34
+ Library = "builtin:library",
35
+ /** for `list` calls, see {@link processList} */
36
+ List = "builtin:list",
37
+ /** for `local` calls, see {@link processLocal} */
38
+ Local = "builtin:local",
39
+ /** for the pipe operators, see {@link processPipe} */
40
+ Pipe = "builtin:pipe",
41
+ /** for `quote`, and other substituting calls, see {@link processQuote} */
42
+ Quote = "builtin:quote",
43
+ /**
44
+ * for `recall` calls, see {@link processRecall}
45
+ */
46
+ Recall = "builtin:recall",
47
+ /** for `on.exìt` and other hooks, see {@link processRegisterHook} */
48
+ RegisterHook = "builtin:register-hook",
49
+ /** for `repeat` loops, see {@link processRepeatLoop} */
50
+ RepeatLoop = "builtin:repeat-loop",
51
+ /** for replacement functions like `names<-`, see {@link processReplacementFunction} */
52
+ Replacement = "builtin:replacement",
53
+ /** for `return` calls */
54
+ Return = "builtin:return",
55
+ /** for `rm` calls, see {@link processRm} */
56
+ Rm = "builtin:rm",
57
+ /** for `UseMethod` calls, see {@link processS3Dispatch} */
58
+ S3Dispatch = "builtin:s3-dispatch",
59
+ /** for `NextMethod` calls, see {@link processS3Dispatch} */
60
+ S3DispatchNext = "builtin:s3-dispatch-next",
61
+ /** for `new.generic` calls, see {@link processS7NewGeneric} */
62
+ S7NewGeneric = "builtin:s7-new-generic",
63
+ /** for `S7_dispatch` calls (and their implicit creations), see {@link processS7Dispatch} */
64
+ S7Dispatch = "builtin:s7-dispatch",
65
+ /** for `source` calls, see {@link processSourceCall} */
66
+ Source = "builtin:source",
67
+ /** for special binary operators like `%x%`, see {@link processSpecialBinOp} */
68
+ SpecialBinOp = "builtin:special-bin-op",
69
+ /** for `stop` calls */
70
+ Stop = "builtin:stop",
71
+ /** for `stopifnot` calls, see {@link processStopIfNot} */
72
+ StopIfNot = "builtin:stopifnot",
73
+ /** support for `:=` in subsetting assignments, see {@link processAccess} */
74
+ TableAssignment = "table:assign",
75
+ /** for `try` calls, see {@link processTryCatch} */
76
+ Try = "builtin:try",
77
+ /** for unnamed directly-linked function calls */
78
+ Unnamed = "unnamed",
79
+ /** for vector construction calls, see {@link processVector} */
80
+ Vector = "builtin:vector",
81
+ /** for `while` loops, see {@link processWhileLoop} */
82
+ WhileLoop = "builtin:while-loop"
83
+ }
@@ -0,0 +1,88 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BuiltInProcName = void 0;
4
+ /**
5
+ * This contains all names of built-in function handlers and origins
6
+ */
7
+ var BuiltInProcName;
8
+ (function (BuiltInProcName) {
9
+ /** for subsetting operations, see {@link processAccess} */
10
+ BuiltInProcName["Access"] = "builtin:access";
11
+ /** for the `*apply` family, see {@link processApply} */
12
+ BuiltInProcName["Apply"] = "builtin:apply";
13
+ /** for assignments like `<-` and `=`, see {@link processAssignment} */
14
+ BuiltInProcName["Assignment"] = "builtin:assignment";
15
+ /** for assignment like functions that may do additional work, see {@link processAssignmentLike} */
16
+ BuiltInProcName["AssignmentLike"] = "builtin:assignment-like";
17
+ /** for `break` calls */
18
+ BuiltInProcName["Break"] = "builtin:break";
19
+ /** the default built-in processor, see {@link defaultBuiltInProcessor} */
20
+ BuiltInProcName["Default"] = "builtin:default";
21
+ /** Just a more performant variant of the default processor for built-ins that need to read all their arguments, see {@link defaultBuiltInProcessor}, this will still produce the origin `BuiltIn.Default` */
22
+ BuiltInProcName["DefaultReadAllArgs"] = "builtin:default-read-all-args";
23
+ /** for `eval` calls, see {@link processEvalCall} */
24
+ BuiltInProcName["Eval"] = "builtin:eval";
25
+ /** for expression lists, see {@link processExpressionList} */
26
+ BuiltInProcName["ExpressionList"] = "builtin:expression-list";
27
+ /** for `for` loops, see {@link processForLoop} */
28
+ BuiltInProcName["ForLoop"] = "builtin:for-loop";
29
+ /** We resolved a function call, similar to {@link BuiltInProcName#Default} */
30
+ BuiltInProcName["Function"] = "function";
31
+ /** for function definitions, see {@link processFunctionDefinition} */
32
+ BuiltInProcName["FunctionDefinition"] = "builtin:function-definition";
33
+ /** for `get` calls, see {@link processGet} */
34
+ BuiltInProcName["Get"] = "builtin:get";
35
+ /** for `if-then-else` constructs, see {@link processIfThenElse} */
36
+ BuiltInProcName["IfThenElse"] = "builtin:if-then-else";
37
+ /** for `library` and `require` calls, see {@link processLibrary} */
38
+ BuiltInProcName["Library"] = "builtin:library";
39
+ /** for `list` calls, see {@link processList} */
40
+ BuiltInProcName["List"] = "builtin:list";
41
+ /** for `local` calls, see {@link processLocal} */
42
+ BuiltInProcName["Local"] = "builtin:local";
43
+ /** for the pipe operators, see {@link processPipe} */
44
+ BuiltInProcName["Pipe"] = "builtin:pipe";
45
+ /** for `quote`, and other substituting calls, see {@link processQuote} */
46
+ BuiltInProcName["Quote"] = "builtin:quote";
47
+ /**
48
+ * for `recall` calls, see {@link processRecall}
49
+ */
50
+ BuiltInProcName["Recall"] = "builtin:recall";
51
+ /** for `on.exìt` and other hooks, see {@link processRegisterHook} */
52
+ BuiltInProcName["RegisterHook"] = "builtin:register-hook";
53
+ /** for `repeat` loops, see {@link processRepeatLoop} */
54
+ BuiltInProcName["RepeatLoop"] = "builtin:repeat-loop";
55
+ /** for replacement functions like `names<-`, see {@link processReplacementFunction} */
56
+ BuiltInProcName["Replacement"] = "builtin:replacement";
57
+ /** for `return` calls */
58
+ BuiltInProcName["Return"] = "builtin:return";
59
+ /** for `rm` calls, see {@link processRm} */
60
+ BuiltInProcName["Rm"] = "builtin:rm";
61
+ /** for `UseMethod` calls, see {@link processS3Dispatch} */
62
+ BuiltInProcName["S3Dispatch"] = "builtin:s3-dispatch";
63
+ /** for `NextMethod` calls, see {@link processS3Dispatch} */
64
+ BuiltInProcName["S3DispatchNext"] = "builtin:s3-dispatch-next";
65
+ /** for `new.generic` calls, see {@link processS7NewGeneric} */
66
+ BuiltInProcName["S7NewGeneric"] = "builtin:s7-new-generic";
67
+ /** for `S7_dispatch` calls (and their implicit creations), see {@link processS7Dispatch} */
68
+ BuiltInProcName["S7Dispatch"] = "builtin:s7-dispatch";
69
+ /** for `source` calls, see {@link processSourceCall} */
70
+ BuiltInProcName["Source"] = "builtin:source";
71
+ /** for special binary operators like `%x%`, see {@link processSpecialBinOp} */
72
+ BuiltInProcName["SpecialBinOp"] = "builtin:special-bin-op";
73
+ /** for `stop` calls */
74
+ BuiltInProcName["Stop"] = "builtin:stop";
75
+ /** for `stopifnot` calls, see {@link processStopIfNot} */
76
+ BuiltInProcName["StopIfNot"] = "builtin:stopifnot";
77
+ /** support for `:=` in subsetting assignments, see {@link processAccess} */
78
+ BuiltInProcName["TableAssignment"] = "table:assign";
79
+ /** for `try` calls, see {@link processTryCatch} */
80
+ BuiltInProcName["Try"] = "builtin:try";
81
+ /** for unnamed directly-linked function calls */
82
+ BuiltInProcName["Unnamed"] = "unnamed";
83
+ /** for vector construction calls, see {@link processVector} */
84
+ BuiltInProcName["Vector"] = "builtin:vector";
85
+ /** for `while` loops, see {@link processWhileLoop} */
86
+ BuiltInProcName["WhileLoop"] = "builtin:while-loop";
87
+ })(BuiltInProcName || (exports.BuiltInProcName = BuiltInProcName = {}));
88
+ //# sourceMappingURL=built-in-proc-name.js.map
@@ -42,6 +42,7 @@ import { processS3Dispatch } from '../internal/process/functions/call/built-in/b
42
42
  import { processRecall } from '../internal/process/functions/call/built-in/built-in-recall';
43
43
  import { processS7NewGeneric } from '../internal/process/functions/call/built-in/built-in-s-seven-new-generic';
44
44
  import { processS7Dispatch } from '../internal/process/functions/call/built-in/built-in-s-seven-dispatch';
45
+ import { BuiltInProcName } from './built-in-proc-name';
45
46
  export type BuiltInIdentifierProcessor = <OtherInfo>(name: RSymbol<OtherInfo & ParentInformation>, args: readonly RFunctionArgument<OtherInfo & ParentInformation>[], rootId: NodeId, data: DataflowProcessorInformation<OtherInfo & ParentInformation>) => DataflowInformation;
46
47
  export type BuiltInIdentifierProcessorWithConfig<Config> = <OtherInfo>(name: RSymbol<OtherInfo & ParentInformation>, args: readonly RFunctionArgument<OtherInfo & ParentInformation>[], rootId: NodeId, data: DataflowProcessorInformation<OtherInfo & ParentInformation>, config: Config) => DataflowInformation;
47
48
  export interface BuiltInIdentifierDefinition extends IdentifierReference {
@@ -82,89 +83,6 @@ export interface BuiltInEvalHandlerArgs {
82
83
  export type BuiltInEvalHandler = (args: BuiltInEvalHandlerArgs) => Value;
83
84
  declare function defaultBuiltInProcessor<OtherInfo>(name: RSymbol<OtherInfo & ParentInformation>, args: readonly RFunctionArgument<OtherInfo & ParentInformation>[], rootId: NodeId, data: DataflowProcessorInformation<OtherInfo & ParentInformation>, { returnsNthArgument, useAsProcessor, forceArgs, readAllArguments, cfg, hasUnknownSideEffects, treatAsFnCall }: DefaultBuiltInProcessorConfiguration): DataflowInformation;
84
85
  declare function defaultBuiltInProcessorReadallArgs<OtherInfo>(name: RSymbol<OtherInfo & ParentInformation>, args: readonly RFunctionArgument<OtherInfo & ParentInformation>[], rootId: NodeId, data: DataflowProcessorInformation<OtherInfo & ParentInformation>, { useAsProcessor, forceArgs }: Pick<DefaultBuiltInProcessorConfiguration, 'useAsProcessor' | 'forceArgs'>): DataflowInformation;
85
- /**
86
- * This contains all names of built-in function handlers and origins
87
- */
88
- export declare enum BuiltInProcName {
89
- /** for subsetting operations, see {@link processAccess} */
90
- Access = "builtin:access",
91
- /** for the `*apply` family, see {@link processApply} */
92
- Apply = "builtin:apply",
93
- /** for assignments like `<-` and `=`, see {@link processAssignment} */
94
- Assignment = "builtin:assignment",
95
- /** for assignment like functions that may do additional work, see {@link processAssignmentLike} */
96
- AssignmentLike = "builtin:assignment-like",
97
- /** for `break` calls */
98
- Break = "builtin:break",
99
- /** the default built-in processor, see {@link defaultBuiltInProcessor} */
100
- Default = "builtin:default",
101
- /** Just a more performant variant of the default processor for built-ins that need to read all their arguments, see {@link defaultBuiltInProcessor}, this will still produce the origin `BuiltIn.Default` */
102
- DefaultReadAllArgs = "builtin:default-read-all-args",
103
- /** for `eval` calls, see {@link processEvalCall} */
104
- Eval = "builtin:eval",
105
- /** for expression lists, see {@link processExpressionList} */
106
- ExpressionList = "builtin:expression-list",
107
- /** for `for` loops, see {@link processForLoop} */
108
- ForLoop = "builtin:for-loop",
109
- /** We resolved a function call, similar to {@link BuiltInProcName#Default} */
110
- Function = "function",
111
- /** for function definitions, see {@link processFunctionDefinition} */
112
- FunctionDefinition = "builtin:function-definition",
113
- /** for `get` calls, see {@link processGet} */
114
- Get = "builtin:get",
115
- /** for `if-then-else` constructs, see {@link processIfThenElse} */
116
- IfThenElse = "builtin:if-then-else",
117
- /** for `library` and `require` calls, see {@link processLibrary} */
118
- Library = "builtin:library",
119
- /** for `list` calls, see {@link processList} */
120
- List = "builtin:list",
121
- /** for `local` calls, see {@link processLocal} */
122
- Local = "builtin:local",
123
- /** for the pipe operators, see {@link processPipe} */
124
- Pipe = "builtin:pipe",
125
- /** for `quote`, and other substituting calls, see {@link processQuote} */
126
- Quote = "builtin:quote",
127
- /**
128
- * for `recall` calls, see {@link processRecall}
129
- */
130
- Recall = "builtin:recall",
131
- /** for `on.exìt` and other hooks, see {@link processRegisterHook} */
132
- RegisterHook = "builtin:register-hook",
133
- /** for `repeat` loops, see {@link processRepeatLoop} */
134
- RepeatLoop = "builtin:repeat-loop",
135
- /** for replacement functions like `names<-`, see {@link processReplacementFunction} */
136
- Replacement = "builtin:replacement",
137
- /** for `return` calls */
138
- Return = "builtin:return",
139
- /** for `rm` calls, see {@link processRm} */
140
- Rm = "builtin:rm",
141
- /** for `UseMethod` calls, see {@link processS3Dispatch} */
142
- S3Dispatch = "builtin:s3-dispatch",
143
- /** for `NextMethod` calls, see {@link processS3Dispatch} */
144
- S3DispatchNext = "builtin:s3-dispatch-next",
145
- /** for `new.generic` calls, see {@link processS7NewGeneric} */
146
- S7NewGeneric = "builtin:s7-new-generic",
147
- /** for `S7_dispatch` calls (and their implicit creations), see {@link processS7Dispatch} */
148
- S7Dispatch = "builtin:s7-dispatch",
149
- /** for `source` calls, see {@link processSourceCall} */
150
- Source = "builtin:source",
151
- /** for special binary operators like `%x%`, see {@link processSpecialBinOp} */
152
- SpecialBinOp = "builtin:special-bin-op",
153
- /** for `stop` calls */
154
- Stop = "builtin:stop",
155
- /** for `stopifnot` calls, see {@link processStopIfNot} */
156
- StopIfNot = "builtin:stopifnot",
157
- /** support for `:=` in subsetting assignments, see {@link processAccess} */
158
- TableAssignment = "table:assign",
159
- /** for `try` calls, see {@link processTryCatch} */
160
- Try = "builtin:try",
161
- /** for unnamed directly-linked function calls */
162
- Unnamed = "unnamed",
163
- /** for vector construction calls, see {@link processVector} */
164
- Vector = "builtin:vector",
165
- /** for `while` loops, see {@link processWhileLoop} */
166
- WhileLoop = "builtin:while-loop"
167
- }
168
86
  export declare const BuiltInProcessorMapper: {
169
87
  readonly "builtin:access": typeof processAccess;
170
88
  readonly "builtin:apply": typeof processApply;