@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.
- package/README.md +35 -23
- package/abstract-interpretation/absint-visitor.d.ts +1 -1
- package/abstract-interpretation/absint-visitor.js +20 -20
- package/abstract-interpretation/data-frame/mappers/replacement-mapper.js +2 -2
- package/benchmark/slicer.d.ts +5 -3
- package/benchmark/slicer.js +26 -10
- package/benchmark/stats/print.js +12 -0
- package/benchmark/stats/stats.d.ts +3 -2
- package/benchmark/stats/stats.js +1 -1
- package/benchmark/summarizer/data.d.ts +1 -0
- package/benchmark/summarizer/second-phase/process.js +5 -0
- package/cli/benchmark-app.d.ts +1 -0
- package/cli/benchmark-app.js +1 -0
- package/cli/benchmark-helper-app.d.ts +2 -1
- package/cli/benchmark-helper-app.js +6 -3
- package/cli/common/options.d.ts +8 -0
- package/cli/common/options.js +3 -1
- package/cli/common/scripts-info.d.ts +8 -0
- package/cli/export-quads-app.js +1 -1
- package/cli/flowr.js +3 -3
- package/cli/repl/commands/repl-dataflow.js +5 -5
- package/cli/repl/core.d.ts +3 -3
- package/cli/repl/parser/slice-query-parser.d.ts +1 -1
- package/cli/repl/parser/slice-query-parser.js +2 -2
- package/cli/repl/server/connection.d.ts +2 -2
- package/cli/repl/server/connection.js +2 -2
- package/cli/repl/server/messages/message-slice.d.ts +1 -1
- package/cli/repl/server/messages/message-slice.js +2 -2
- package/cli/repl/server/server.d.ts +2 -2
- package/cli/script-core/statistics-core.d.ts +2 -2
- package/cli/script-core/statistics-helper-core.d.ts +2 -2
- package/cli/script-core/statistics-helper-core.js +1 -1
- package/cli/slicer-app.js +2 -2
- package/cli/statistics-app.js +1 -1
- package/cli/statistics-helper-app.js +1 -1
- package/cli/wiki.js +2 -2
- package/config.d.ts +65 -24
- package/config.js +197 -161
- package/control-flow/extract-cfg.js +7 -10
- package/control-flow/semantic-cfg-guided-visitor.d.ts +1 -1
- package/control-flow/semantic-cfg-guided-visitor.js +43 -43
- package/control-flow/useless-loop.d.ts +1 -1
- package/control-flow/useless-loop.js +3 -3
- package/core/print/dataflow-printer.d.ts +0 -14
- package/core/print/dataflow-printer.js +0 -21
- package/core/steps/all/core/20-dataflow.d.ts +3 -3
- package/core/steps/all/core/20-dataflow.js +3 -2
- package/core/steps/all/static-slicing/00-slice.d.ts +2 -5
- package/core/steps/all/static-slicing/00-slice.js +6 -8
- package/core/steps/pipeline/default-pipelines.d.ts +89 -89
- package/core/steps/pipeline-step.d.ts +2 -2
- package/dataflow/environments/built-in-proc-name.d.ts +83 -0
- package/dataflow/environments/built-in-proc-name.js +88 -0
- package/dataflow/environments/built-in.d.ts +1 -83
- package/dataflow/environments/built-in.js +37 -120
- package/dataflow/environments/default-builtin-config.d.ts +1 -1
- package/dataflow/environments/default-builtin-config.js +75 -75
- package/dataflow/environments/identifier.d.ts +1 -0
- package/dataflow/environments/identifier.js +1 -0
- package/dataflow/eval/resolve/alias-tracking.js +12 -15
- package/dataflow/eval/resolve/resolve.js +2 -2
- package/dataflow/fn/exceptions-of-function.d.ts +1 -1
- package/dataflow/fn/exceptions-of-function.js +2 -2
- package/dataflow/graph/call-graph.d.ts +49 -19
- package/dataflow/graph/call-graph.js +117 -114
- package/dataflow/graph/dataflowgraph-builder.d.ts +1 -1
- package/dataflow/graph/dataflowgraph-builder.js +2 -2
- package/dataflow/graph/df-helper.d.ts +132 -0
- package/dataflow/graph/df-helper.js +131 -0
- package/dataflow/graph/diff-dataflow-graph.d.ts +5 -10
- package/dataflow/graph/diff-dataflow-graph.js +3 -28
- package/dataflow/graph/edge.d.ts +1 -0
- package/dataflow/graph/edge.js +1 -0
- package/dataflow/graph/graph-helper.d.ts +55 -0
- package/dataflow/graph/graph-helper.js +105 -0
- package/dataflow/graph/graph.d.ts +6 -1
- package/dataflow/graph/graph.js +14 -9
- package/dataflow/graph/vertex.d.ts +1 -1
- package/dataflow/info.d.ts +14 -4
- package/dataflow/info.js +28 -16
- package/dataflow/internal/linker.d.ts +14 -10
- package/dataflow/internal/linker.js +29 -32
- package/dataflow/internal/process/functions/call/built-in/built-in-access.js +5 -5
- package/dataflow/internal/process/functions/call/built-in/built-in-apply.js +4 -4
- package/dataflow/internal/process/functions/call/built-in/built-in-assignment.js +7 -6
- package/dataflow/internal/process/functions/call/built-in/built-in-eval.d.ts +1 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-eval.js +5 -5
- package/dataflow/internal/process/functions/call/built-in/built-in-expression-list.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-for-loop.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-function-definition.js +4 -4
- package/dataflow/internal/process/functions/call/built-in/built-in-get.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-if-then-else.js +3 -3
- package/dataflow/internal/process/functions/call/built-in/built-in-library.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-list.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-local.d.ts +1 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-local.js +5 -5
- package/dataflow/internal/process/functions/call/built-in/built-in-pipe.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-quote.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-recall.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-register-hook.js +5 -5
- package/dataflow/internal/process/functions/call/built-in/built-in-repeat-loop.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-replacement.d.ts +1 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-replacement.js +5 -4
- package/dataflow/internal/process/functions/call/built-in/built-in-rm.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-s-seven-dispatch.js +3 -3
- package/dataflow/internal/process/functions/call/built-in/built-in-s-seven-new-generic.js +3 -3
- package/dataflow/internal/process/functions/call/built-in/built-in-s-three-dispatch.d.ts +1 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-s-three-dispatch.js +7 -7
- package/dataflow/internal/process/functions/call/built-in/built-in-source.d.ts +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-source.js +23 -12
- package/dataflow/internal/process/functions/call/built-in/built-in-special-bin-op.js +3 -3
- package/dataflow/internal/process/functions/call/built-in/built-in-stop-if-not.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-try-catch.js +6 -9
- package/dataflow/internal/process/functions/call/built-in/built-in-vector.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-while-loop.js +2 -2
- package/dataflow/internal/process/functions/call/known-call-handling.js +2 -2
- package/dataflow/internal/process/functions/call/named-call-handling.d.ts +1 -1
- package/dataflow/internal/process/functions/call/named-call-handling.js +1 -1
- package/dataflow/internal/process/functions/call/unnamed-call-handling.js +2 -2
- package/dataflow/internal/process/process-uninteresting-leaf.d.ts +1 -1
- package/dataflow/internal/process/process-uninteresting-leaf.js +1 -1
- package/dataflow/origin/dfg-get-origin.d.ts +1 -1
- package/dataflow/origin/dfg-get-symbol-refs.js +6 -6
- package/documentation/doc-readme.js +2 -2
- package/documentation/doc-util/doc-dfg.d.ts +3 -0
- package/documentation/doc-util/doc-dfg.js +5 -7
- package/documentation/doc-util/doc-normalized-ast.d.ts +0 -6
- package/documentation/doc-util/doc-normalized-ast.js +0 -23
- package/documentation/doc-util/doc-structure.js +3 -3
- package/documentation/doc-util/doc-types.js +3 -3
- package/documentation/wiki-analyzer.js +7 -5
- package/documentation/wiki-core.js +6 -7
- package/documentation/wiki-dataflow-graph.js +15 -13
- package/documentation/wiki-interface.js +8 -6
- package/documentation/wiki-linter.js +6 -5
- package/documentation/wiki-mk/doc-context.js +3 -4
- package/documentation/wiki-normalized-ast.js +5 -4
- package/documentation/wiki-query.js +28 -3
- package/engines.d.ts +2 -2
- package/engines.js +4 -4
- package/linter/linter-rules.d.ts +24 -1
- package/linter/linter-rules.js +3 -1
- package/linter/rules/dataframe-access-validation.js +5 -5
- package/linter/rules/naming-convention.d.ts +1 -1
- package/linter/rules/naming-convention.js +7 -3
- package/linter/rules/seeded-randomness.js +2 -2
- package/linter/rules/stop-with-call-arg.d.ts +35 -0
- package/linter/rules/stop-with-call-arg.js +72 -0
- package/linter/rules/useless-loop.d.ts +1 -1
- package/package.json +3 -1
- package/project/cache/flowr-analyzer-cache.d.ts +1 -1
- package/project/cache/flowr-analyzer-cache.js +1 -1
- package/project/context/flowr-analyzer-context.d.ts +6 -6
- package/project/context/flowr-analyzer-context.js +2 -2
- package/project/context/flowr-analyzer-files-context.d.ts +2 -2
- package/project/context/flowr-analyzer-files-context.js +28 -8
- package/project/flowr-analyzer-builder.d.ts +13 -6
- package/project/flowr-analyzer-builder.js +12 -3
- package/project/flowr-analyzer.d.ts +4 -4
- package/queries/catalog/call-context-query/identify-link-to-nested-call-relation.js +2 -2
- package/queries/catalog/call-graph-query/call-graph-query-format.d.ts +1 -1
- package/queries/catalog/call-graph-query/call-graph-query-format.js +2 -2
- package/queries/catalog/cluster-query/cluster-query-format.js +2 -2
- package/queries/catalog/config-query/config-query-format.d.ts +5 -5
- package/queries/catalog/dataflow-lens-query/dataflow-lens-query-format.js +2 -2
- package/queries/catalog/dataflow-query/dataflow-query-format.js +2 -2
- package/queries/catalog/df-shape-query/df-shape-query-executor.js +1 -2
- package/queries/catalog/df-shape-query/df-shape-query-format.d.ts +2 -2
- package/queries/catalog/does-call-query/does-call-query-executor.js +2 -2
- package/queries/catalog/does-call-query/does-call-query-format.d.ts +2 -2
- package/queries/catalog/files-query/files-query-format.d.ts +3 -3
- package/queries/catalog/happens-before-query/happens-before-query-executor.js +2 -2
- package/queries/catalog/inspect-exceptions-query/inspect-exception-query-executor.d.ts +1 -1
- package/queries/catalog/inspect-exceptions-query/inspect-exception-query-executor.js +1 -1
- package/queries/catalog/inspect-exceptions-query/inspect-exception-query-format.d.ts +2 -2
- package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-executor.js +3 -3
- package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-format.d.ts +2 -2
- package/queries/catalog/inspect-recursion-query/inspect-recursion-query-format.d.ts +2 -2
- package/queries/catalog/linter-query/linter-query-format.d.ts +3 -3
- package/queries/catalog/location-map-query/location-map-query-executor.js +2 -2
- package/queries/catalog/location-map-query/location-map-query-format.d.ts +2 -2
- package/queries/catalog/origin-query/origin-query-executor.d.ts +1 -1
- package/queries/catalog/origin-query/origin-query-executor.js +3 -3
- package/queries/catalog/origin-query/origin-query-format.d.ts +2 -2
- package/queries/catalog/provenance-query/provenance-query-executor.d.ts +9 -0
- package/queries/catalog/provenance-query/provenance-query-executor.js +37 -0
- package/queries/catalog/provenance-query/provenance-query-format.d.ts +35 -0
- package/queries/catalog/provenance-query/provenance-query-format.js +62 -0
- package/queries/catalog/resolve-value-query/resolve-value-query-executor.js +4 -4
- package/queries/catalog/resolve-value-query/resolve-value-query-format.d.ts +2 -2
- package/queries/catalog/resolve-value-query/resolve-value-query-format.js +4 -0
- package/queries/catalog/search-query/search-query-format.js +1 -1
- package/queries/catalog/static-slice-query/static-slice-query-executor.js +4 -2
- package/queries/catalog/static-slice-query/static-slice-query-format.d.ts +4 -4
- package/queries/catalog/static-slice-query/static-slice-query-format.js +3 -3
- package/queries/query.d.ts +27 -19
- package/queries/query.js +2 -0
- package/r-bridge/lang-4.x/ast/model/model.d.ts +13 -2
- package/r-bridge/lang-4.x/ast/model/model.js +20 -1
- package/r-bridge/lang-4.x/ast/model/nodes/r-function-definition.d.ts +8 -1
- package/r-bridge/lang-4.x/ast/model/nodes/r-function-definition.js +13 -0
- package/r-bridge/lang-4.x/ast/parser/json/parser.d.ts +2 -2
- package/r-bridge/lang-4.x/ast/parser/json/parser.js +2 -2
- package/r-bridge/lang-4.x/tree-sitter/tree-sitter-normalize.js +6 -2
- package/search/flowr-search-filters.d.ts +1 -1
- package/search/flowr-search-printer.js +3 -3
- package/search/search-executor/search-enrichers.js +2 -2
- package/search/search-executor/search-generators.js +1 -1
- package/slicing/criterion/parse.d.ts +40 -16
- package/slicing/criterion/parse.js +67 -63
- package/slicing/static/slicer-types.d.ts +2 -3
- package/slicing/static/static-slicer.d.ts +3 -4
- package/slicing/static/static-slicer.js +9 -12
- package/statistics/statistics.d.ts +2 -2
- package/util/diff.d.ts +2 -2
- package/util/mermaid/ast.js +4 -4
- package/util/mermaid/cfg.js +5 -5
- package/util/mermaid/dfg.d.ts +33 -18
- package/util/mermaid/dfg.js +46 -31
- package/util/mermaid/mermaid.d.ts +57 -12
- package/util/mermaid/mermaid.js +74 -67
- package/util/objects.d.ts +12 -0
- package/util/objects.js +28 -0
- package/util/range.d.ts +8 -0
- package/util/range.js +13 -1
- package/util/slice-direction.d.ts +7 -0
- package/util/slice-direction.js +12 -0
- package/util/summarizer.js +1 -1
- package/util/version.js +1 -1
- package/dataflow/graph/invert-dfg.d.ts +0 -6
- package/dataflow/graph/invert-dfg.js +0 -20
- package/dataflow/graph/resolve-graph.d.ts +0 -8
- 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:
|
|
75
|
-
readonly 4:
|
|
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:
|
|
159
|
-
readonly 4:
|
|
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:
|
|
243
|
-
readonly 4:
|
|
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:
|
|
280
|
-
readonly 4:
|
|
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:
|
|
363
|
-
readonly 4:
|
|
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:
|
|
446
|
-
readonly 4:
|
|
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:
|
|
539
|
-
readonly 4:
|
|
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:
|
|
562
|
-
readonly 4:
|
|
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 {
|
|
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:
|
|
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;
|