@eagleoutice/flowr 2.6.2 → 2.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -34
- package/abstract-interpretation/data-frame/absint-visitor.d.ts +1 -1
- package/abstract-interpretation/data-frame/absint-visitor.js +6 -6
- package/abstract-interpretation/data-frame/dataframe-domain.d.ts +4 -7
- package/abstract-interpretation/data-frame/dataframe-domain.js +5 -11
- package/abstract-interpretation/data-frame/mappers/access-mapper.d.ts +3 -1
- package/abstract-interpretation/data-frame/mappers/access-mapper.js +3 -2
- package/abstract-interpretation/data-frame/mappers/arguments.js +2 -2
- package/abstract-interpretation/data-frame/mappers/assignment-mapper.d.ts +3 -1
- package/abstract-interpretation/data-frame/mappers/assignment-mapper.js +3 -2
- package/abstract-interpretation/data-frame/mappers/function-mapper.d.ts +7 -7
- package/abstract-interpretation/data-frame/mappers/function-mapper.js +28 -24
- package/abstract-interpretation/data-frame/mappers/replacement-mapper.d.ts +3 -1
- package/abstract-interpretation/data-frame/mappers/replacement-mapper.js +3 -2
- package/abstract-interpretation/data-frame/semantics.js +54 -41
- package/abstract-interpretation/data-frame/shape-inference.d.ts +3 -3
- package/abstract-interpretation/data-frame/shape-inference.js +3 -3
- package/abstract-interpretation/domains/abstract-domain.d.ts +1 -0
- package/abstract-interpretation/domains/abstract-domain.js +3 -2
- package/abstract-interpretation/domains/bounded-set-domain.js +1 -1
- package/abstract-interpretation/domains/interval-domain.d.ts +2 -2
- package/abstract-interpretation/domains/interval-domain.js +3 -6
- package/abstract-interpretation/domains/lattice.d.ts +2 -0
- package/abstract-interpretation/domains/lattice.js +3 -1
- package/abstract-interpretation/domains/positive-interval-domain.d.ts +1 -1
- package/abstract-interpretation/domains/positive-interval-domain.js +1 -1
- package/abstract-interpretation/domains/satisfiable-domain.d.ts +2 -2
- package/abstract-interpretation/domains/satisfiable-domain.js +2 -2
- package/abstract-interpretation/domains/set-range-domain.d.ts +98 -0
- package/abstract-interpretation/domains/set-range-domain.js +400 -0
- package/abstract-interpretation/domains/set-upper-bound-domain.js +2 -2
- package/abstract-interpretation/domains/singleton-domain.js +2 -2
- package/abstract-interpretation/normalized-ast-fold.d.ts +1 -1
- package/benchmark/slicer.d.ts +3 -1
- package/benchmark/slicer.js +50 -27
- package/benchmark/stats/print.js +8 -5
- package/benchmark/stats/stats.d.ts +3 -2
- package/benchmark/summarizer/data.d.ts +11 -8
- package/benchmark/summarizer/first-phase/process.js +12 -9
- package/benchmark/summarizer/second-phase/graph.d.ts +3 -1
- package/benchmark/summarizer/second-phase/graph.js +3 -1
- package/benchmark/summarizer/second-phase/process.js +24 -18
- package/cli/export-quads-app.js +1 -1
- package/cli/repl/commands/repl-dataflow.js +2 -1
- package/cli/repl/commands/repl-parse.js +16 -4
- package/cli/repl/commands/repl-query.js +1 -1
- package/cli/repl/core.js +16 -13
- package/cli/repl/server/connection.js +2 -1
- package/cli/script-core/statistics-helper-core.js +2 -1
- package/cli/slicer-app.js +3 -4
- package/cli/wiki.d.ts +4 -0
- package/cli/wiki.js +165 -0
- package/config.d.ts +4 -0
- package/config.js +6 -0
- package/control-flow/cfg-dead-code.js +14 -3
- package/control-flow/cfg-simplification.d.ts +5 -2
- package/control-flow/cfg-simplification.js +3 -0
- package/control-flow/extract-cfg.d.ts +9 -3
- package/control-flow/extract-cfg.js +44 -4
- package/control-flow/semantic-cfg-guided-visitor.d.ts +2 -2
- package/control-flow/simple-visitor.js +2 -2
- package/control-flow/useless-loop.d.ts +3 -3
- package/control-flow/useless-loop.js +16 -5
- package/core/pipeline-executor.d.ts +3 -6
- package/core/pipeline-executor.js +4 -7
- package/core/print/normalize-printer.d.ts +1 -1
- package/core/print/normalize-printer.js +2 -2
- package/core/steps/all/core/00-parse.d.ts +1 -1
- package/core/steps/all/core/00-parse.js +1 -1
- package/core/steps/all/core/10-normalize.d.ts +3 -9
- package/core/steps/all/core/10-normalize.js +1 -16
- package/core/steps/all/core/11-normalize-tree-sitter.d.ts +2 -3
- package/core/steps/all/core/11-normalize-tree-sitter.js +2 -3
- package/core/steps/all/core/20-dataflow.d.ts +3 -4
- package/core/steps/all/core/20-dataflow.js +2 -2
- package/core/steps/all/static-slicing/00-slice.d.ts +4 -2
- package/core/steps/all/static-slicing/00-slice.js +3 -2
- package/core/steps/all/static-slicing/10-reconstruct.d.ts +8 -0
- package/core/steps/all/static-slicing/10-reconstruct.js +4 -1
- package/core/steps/pipeline/default-pipelines.d.ts +94 -95
- package/core/steps/pipeline/default-pipelines.js +8 -8
- package/dataflow/cluster.js +2 -2
- package/dataflow/environments/append.d.ts +5 -0
- package/dataflow/environments/append.js +6 -20
- package/dataflow/environments/built-in.d.ts +2 -1
- package/dataflow/environments/clone.d.ts +1 -2
- package/dataflow/environments/clone.js +3 -17
- package/dataflow/environments/define.d.ts +7 -3
- package/dataflow/environments/define.js +9 -56
- package/dataflow/environments/diff.js +3 -3
- package/dataflow/environments/environment.d.ts +48 -28
- package/dataflow/environments/environment.js +187 -62
- package/dataflow/environments/overwrite.d.ts +1 -5
- package/dataflow/environments/overwrite.js +2 -61
- package/dataflow/environments/reference-to-maybe.d.ts +13 -0
- package/dataflow/environments/reference-to-maybe.js +54 -0
- package/dataflow/environments/resolve-by-name.d.ts +6 -1
- package/dataflow/environments/resolve-by-name.js +56 -4
- package/dataflow/environments/scoping.d.ts +8 -4
- package/dataflow/environments/scoping.js +13 -9
- package/dataflow/eval/resolve/alias-tracking.d.ts +10 -4
- package/dataflow/eval/resolve/alias-tracking.js +15 -13
- package/dataflow/eval/resolve/resolve-argument.d.ts +2 -1
- package/dataflow/eval/resolve/resolve-argument.js +10 -10
- package/dataflow/eval/resolve/resolve.d.ts +13 -11
- package/dataflow/eval/resolve/resolve.js +16 -15
- package/dataflow/eval/values/string/string-constants.d.ts +9 -3
- package/dataflow/eval/values/string/string-constants.js +9 -3
- package/dataflow/extractor.d.ts +2 -3
- package/dataflow/extractor.js +25 -28
- package/dataflow/fn/higher-order-function.d.ts +2 -1
- package/dataflow/fn/higher-order-function.js +4 -4
- package/dataflow/graph/dataflowgraph-builder.d.ts +9 -5
- package/dataflow/graph/dataflowgraph-builder.js +21 -11
- package/dataflow/graph/diff-dataflow-graph.js +2 -2
- package/dataflow/graph/graph.d.ts +13 -11
- package/dataflow/graph/graph.js +40 -24
- package/dataflow/graph/invert-dfg.d.ts +3 -2
- package/dataflow/graph/invert-dfg.js +3 -3
- package/dataflow/graph/resolve-graph.d.ts +2 -1
- package/dataflow/graph/resolve-graph.js +2 -2
- package/dataflow/graph/unknown-replacement.d.ts +4 -2
- package/dataflow/graph/unknown-replacement.js +4 -2
- package/dataflow/graph/vertex.d.ts +3 -3
- package/dataflow/graph/vertex.js +3 -3
- package/dataflow/info.d.ts +8 -1
- package/dataflow/info.js +21 -0
- package/dataflow/internal/linker.js +10 -11
- package/dataflow/internal/process/functions/call/argument/make-argument.d.ts +2 -2
- package/dataflow/internal/process/functions/call/argument/make-argument.js +2 -3
- package/dataflow/internal/process/functions/call/argument/unpack-argument.d.ts +7 -1
- package/dataflow/internal/process/functions/call/argument/unpack-argument.js +12 -3
- package/dataflow/internal/process/functions/call/built-in/built-in-access.d.ts +1 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-access.js +7 -7
- package/dataflow/internal/process/functions/call/built-in/built-in-apply.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-assignment.d.ts +3 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-assignment.js +6 -6
- package/dataflow/internal/process/functions/call/built-in/built-in-eval.js +14 -14
- package/dataflow/internal/process/functions/call/built-in/built-in-expression-list.js +10 -8
- package/dataflow/internal/process/functions/call/built-in/built-in-for-loop.js +4 -4
- package/dataflow/internal/process/functions/call/built-in/built-in-function-definition.d.ts +2 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-function-definition.js +10 -14
- package/dataflow/internal/process/functions/call/built-in/built-in-get.d.ts +1 -1
- 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.d.ts +3 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-if-then-else.js +8 -6
- package/dataflow/internal/process/functions/call/built-in/built-in-library.js +1 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-list.js +2 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-pipe.js +4 -4
- package/dataflow/internal/process/functions/call/built-in/built-in-repeat-loop.d.ts +6 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-repeat-loop.js +7 -2
- package/dataflow/internal/process/functions/call/built-in/built-in-replacement.js +5 -5
- package/dataflow/internal/process/functions/call/built-in/built-in-rm.js +6 -4
- package/dataflow/internal/process/functions/call/built-in/built-in-source.d.ts +15 -10
- package/dataflow/internal/process/functions/call/built-in/built-in-source.js +78 -75
- package/dataflow/internal/process/functions/call/built-in/built-in-special-bin-op.d.ts +3 -1
- package/dataflow/internal/process/functions/call/built-in/built-in-special-bin-op.js +3 -1
- 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 +5 -5
- package/dataflow/internal/process/functions/call/common.d.ts +1 -1
- package/dataflow/internal/process/functions/call/common.js +6 -7
- package/dataflow/internal/process/functions/call/default-call-handling.d.ts +3 -1
- package/dataflow/internal/process/functions/call/default-call-handling.js +3 -1
- package/dataflow/internal/process/functions/call/known-call-handling.js +4 -4
- package/dataflow/internal/process/functions/call/named-call-handling.js +4 -4
- package/dataflow/internal/process/functions/call/unnamed-call-handling.js +1 -1
- package/dataflow/internal/process/functions/process-argument.js +1 -1
- package/dataflow/internal/process/functions/process-parameter.js +4 -4
- package/dataflow/internal/process/process-symbol.js +1 -1
- package/dataflow/internal/process/process-value.d.ts +1 -1
- package/dataflow/internal/process/process-value.js +7 -7
- package/dataflow/origin/dfg-get-symbol-refs.d.ts +1 -1
- package/dataflow/origin/dfg-get-symbol-refs.js +1 -1
- package/dataflow/processor.d.ts +7 -16
- package/documentation/data/dfg/doc-data-dfg-util.d.ts +0 -2
- package/documentation/data/faq/faqs.js +27 -18
- package/documentation/data/faq/recommended-configs.d.ts +36 -0
- package/documentation/data/faq/recommended-configs.js +40 -0
- package/documentation/data/faq/wiki-faq-store.d.ts +1 -0
- package/documentation/data/faq/wiki-faq-store.js +10 -2
- package/documentation/data/server/doc-data-server-messages.js +1 -1
- package/documentation/doc-capabilities.d.ts +9 -0
- package/documentation/{print-capabilities-markdown.js → doc-capabilities.js} +18 -21
- package/documentation/doc-readme.d.ts +9 -0
- package/documentation/{print-readme.js → doc-readme.js} +31 -35
- package/documentation/doc-util/doc-benchmarks.d.ts +6 -4
- package/documentation/doc-util/doc-benchmarks.js +6 -4
- package/documentation/doc-util/doc-cfg.js +5 -8
- package/documentation/doc-util/doc-dfg.d.ts +7 -7
- package/documentation/doc-util/doc-dfg.js +15 -14
- package/documentation/doc-util/doc-escape.d.ts +6 -0
- package/documentation/doc-util/doc-escape.js +11 -0
- package/documentation/doc-util/doc-general.d.ts +22 -2
- package/documentation/doc-util/doc-general.js +22 -2
- package/documentation/doc-util/doc-normalized-ast.d.ts +10 -5
- package/documentation/doc-util/doc-normalized-ast.js +14 -10
- package/documentation/doc-util/doc-query.d.ts +12 -4
- package/documentation/doc-util/doc-query.js +18 -11
- package/documentation/doc-util/doc-search.d.ts +0 -30
- package/documentation/doc-util/doc-search.js +2 -73
- package/documentation/doc-util/doc-server-message.d.ts +5 -5
- package/documentation/doc-util/doc-server-message.js +4 -4
- package/documentation/doc-util/doc-types.d.ts +69 -32
- package/documentation/doc-util/doc-types.js +109 -62
- package/documentation/index.d.ts +9 -9
- package/documentation/index.js +9 -9
- package/documentation/issue-linting-rule.d.ts +9 -0
- package/documentation/{print-linter-issue.js → issue-linting-rule.js} +20 -23
- package/documentation/wiki-analyzer.d.ts +9 -0
- package/documentation/wiki-analyzer.js +425 -0
- package/documentation/wiki-cfg.d.ts +9 -0
- package/documentation/{print-cfg-wiki.js → wiki-cfg.js} +144 -160
- package/documentation/wiki-core.d.ts +14 -0
- package/documentation/{print-core-wiki.js → wiki-core.js} +164 -175
- package/documentation/wiki-dataflow-graph.d.ts +9 -0
- package/documentation/{print-dataflow-graph-wiki.js → wiki-dataflow-graph.js} +146 -177
- package/documentation/wiki-engine.d.ts +9 -0
- package/documentation/{print-engines-wiki.js → wiki-engine.js} +27 -42
- package/documentation/wiki-faq.d.ts +8 -0
- package/documentation/wiki-faq.js +21 -0
- package/documentation/wiki-interface.d.ts +9 -0
- package/documentation/{print-interface-wiki.js → wiki-interface.js} +59 -56
- package/documentation/wiki-linter.d.ts +9 -0
- package/documentation/{print-linter-wiki.js → wiki-linter.js} +52 -48
- package/documentation/wiki-linting-and-testing.d.ts +9 -0
- package/documentation/{print-linting-and-testing-wiki.js → wiki-linting-and-testing.js} +25 -32
- package/documentation/wiki-mk/doc-context.d.ts +186 -0
- package/documentation/wiki-mk/doc-context.js +84 -0
- package/documentation/wiki-mk/doc-maker.d.ts +95 -0
- package/documentation/wiki-mk/doc-maker.js +134 -0
- package/documentation/wiki-normalized-ast.d.ts +9 -0
- package/documentation/{print-normalized-ast-wiki.js → wiki-normalized-ast.js} +64 -47
- package/documentation/wiki-onboarding.d.ts +8 -0
- package/documentation/{print-onboarding-wiki.js → wiki-onboarding.js} +18 -15
- package/documentation/wiki-query.d.ts +9 -0
- package/documentation/{print-query-wiki.js → wiki-query.js} +62 -47
- package/documentation/wiki-search.d.ts +9 -0
- package/documentation/wiki-search.js +61 -0
- package/linter/linter-executor.js +3 -2
- package/linter/linter-format.d.ts +2 -2
- package/linter/linter-rules.d.ts +15 -19
- package/linter/rules/absolute-path.d.ts +1 -2
- package/linter/rules/absolute-path.js +5 -5
- package/linter/rules/dataframe-access-validation.d.ts +2 -2
- package/linter/rules/dataframe-access-validation.js +13 -9
- package/linter/rules/dead-code.d.ts +1 -1
- package/linter/rules/deprecated-functions.d.ts +1 -5
- package/linter/rules/file-path-validity.d.ts +1 -1
- package/linter/rules/file-path-validity.js +4 -4
- package/linter/rules/function-finder-util.d.ts +3 -7
- package/linter/rules/function-finder-util.js +1 -1
- package/linter/rules/naming-convention.d.ts +2 -2
- package/linter/rules/naming-convention.js +1 -1
- package/linter/rules/network-functions.d.ts +1 -1
- package/linter/rules/network-functions.js +1 -1
- package/linter/rules/seeded-randomness.d.ts +4 -3
- package/linter/rules/seeded-randomness.js +38 -18
- package/linter/rules/unused-definition.d.ts +1 -1
- package/linter/rules/useless-loop.d.ts +2 -2
- package/linter/rules/useless-loop.js +2 -2
- package/package.json +5 -17
- package/project/cache/flowr-analyzer-cache.d.ts +7 -10
- package/project/cache/flowr-analyzer-cache.js +17 -38
- package/project/cache/flowr-analyzer-controlflow-cache.d.ts +34 -0
- package/project/cache/flowr-analyzer-controlflow-cache.js +79 -0
- package/project/context/flowr-analyzer-context.d.ts +37 -5
- package/project/context/flowr-analyzer-context.js +51 -4
- package/project/context/flowr-analyzer-environment-context.d.ts +47 -0
- package/project/context/flowr-analyzer-environment-context.js +50 -0
- package/project/context/flowr-analyzer-files-context.d.ts +63 -13
- package/project/context/flowr-analyzer-files-context.js +110 -39
- package/project/context/flowr-file.d.ts +32 -10
- package/project/context/flowr-file.js +30 -9
- package/project/flowr-analyzer-builder.d.ts +22 -28
- package/project/flowr-analyzer-builder.js +32 -70
- package/project/flowr-analyzer.d.ts +55 -14
- package/project/flowr-analyzer.js +53 -8
- package/project/plugins/file-plugins/flowr-analyzer-description-file-plugin.d.ts +7 -1
- package/project/plugins/file-plugins/flowr-analyzer-description-file-plugin.js +13 -5
- package/project/plugins/file-plugins/flowr-analyzer-file-plugin.d.ts +3 -3
- package/project/plugins/file-plugins/flowr-analyzer-file-plugin.js +11 -5
- package/project/plugins/file-plugins/flowr-description-file.d.ts +3 -3
- package/project/plugins/file-plugins/notebooks/flowr-analyzer-jupyter-file-plugin.d.ts +22 -0
- package/project/plugins/file-plugins/notebooks/flowr-analyzer-jupyter-file-plugin.js +33 -0
- package/project/plugins/file-plugins/notebooks/flowr-analyzer-qmd-file-plugin.d.ts +22 -0
- package/project/plugins/file-plugins/notebooks/flowr-analyzer-qmd-file-plugin.js +33 -0
- package/project/plugins/file-plugins/notebooks/flowr-analyzer-rmd-file-plugin.d.ts +22 -0
- package/project/plugins/file-plugins/notebooks/flowr-analyzer-rmd-file-plugin.js +33 -0
- package/project/plugins/file-plugins/notebooks/flowr-jupyter-file.d.ts +20 -0
- package/project/plugins/file-plugins/notebooks/flowr-jupyter-file.js +42 -0
- package/project/plugins/file-plugins/notebooks/flowr-rmarkdown-file.d.ts +59 -0
- package/project/plugins/file-plugins/notebooks/flowr-rmarkdown-file.js +132 -0
- package/project/plugins/file-plugins/notebooks/notebook.d.ts +0 -0
- package/project/plugins/file-plugins/notebooks/notebook.js +2 -0
- package/project/plugins/flowr-analyzer-plugin-defaults.d.ts +5 -0
- package/project/plugins/flowr-analyzer-plugin-defaults.js +23 -0
- package/project/plugins/flowr-analyzer-plugin.d.ts +2 -0
- package/project/plugins/flowr-analyzer-plugin.js +2 -0
- package/project/plugins/loading-order-plugins/flowr-analyzer-loading-order-description-file-plugin.js +1 -1
- package/project/plugins/package-version-plugins/flowr-analyzer-package-versions-description-file-plugin.js +1 -1
- package/project/plugins/plugin-registry.d.ts +34 -0
- package/project/plugins/plugin-registry.js +62 -0
- package/project/plugins/project-discovery/flowr-analyzer-project-discovery-plugin.js +7 -1
- package/queries/catalog/call-context-query/call-context-query-executor.js +5 -6
- package/queries/catalog/call-context-query/identify-link-to-last-call-relation.d.ts +5 -2
- package/queries/catalog/call-context-query/identify-link-to-last-call-relation.js +25 -18
- package/queries/catalog/cluster-query/cluster-query-format.d.ts +1 -1
- package/queries/catalog/control-flow-query/control-flow-query-format.d.ts +1 -1
- package/queries/catalog/control-flow-query/control-flow-query-format.js +3 -2
- package/queries/catalog/dataflow-lens-query/dataflow-lens-query-executor.js +1 -1
- package/queries/catalog/dataflow-lens-query/dataflow-lens-query-format.d.ts +1 -1
- package/queries/catalog/dataflow-query/dataflow-query-format.d.ts +1 -1
- package/queries/catalog/dependencies-query/dependencies-query-executor.d.ts +1 -1
- package/queries/catalog/dependencies-query/dependencies-query-executor.js +5 -5
- package/queries/catalog/dependencies-query/dependencies-query-format.d.ts +1 -1
- package/queries/catalog/dependencies-query/dependencies-query-format.js +1 -1
- package/queries/catalog/df-shape-query/df-shape-query-executor.d.ts +1 -1
- package/queries/catalog/df-shape-query/df-shape-query-executor.js +2 -2
- package/queries/catalog/df-shape-query/df-shape-query-format.d.ts +6 -6
- package/queries/catalog/df-shape-query/df-shape-query-format.js +8 -7
- package/queries/catalog/happens-before-query/happens-before-query-executor.d.ts +2 -1
- package/queries/catalog/happens-before-query/happens-before-query-executor.js +2 -1
- package/queries/catalog/happens-before-query/happens-before-query-format.d.ts +1 -1
- package/queries/catalog/id-map-query/id-map-query-format.d.ts +1 -1
- package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-executor.d.ts +1 -1
- package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-executor.js +4 -4
- package/queries/catalog/inspect-higher-order-query/inspect-higher-order-query-format.d.ts +1 -1
- package/queries/catalog/linter-query/linter-query-format.d.ts +1 -1
- package/queries/catalog/linter-query/linter-query-format.js +13 -2
- package/queries/catalog/location-map-query/location-map-query-executor.js +2 -1
- package/queries/catalog/location-map-query/location-map-query-format.d.ts +1 -1
- package/queries/catalog/location-map-query/location-map-query-format.js +1 -1
- package/queries/catalog/normalized-ast-query/normalized-ast-query-format.d.ts +1 -1
- package/queries/catalog/origin-query/origin-query-format.d.ts +1 -1
- package/queries/catalog/project-query/project-query-executor.js +3 -1
- package/queries/catalog/project-query/project-query-format.d.ts +1 -1
- package/queries/catalog/resolve-value-query/resolve-value-query-executor.d.ts +2 -2
- package/queries/catalog/resolve-value-query/resolve-value-query-executor.js +3 -3
- package/queries/catalog/resolve-value-query/resolve-value-query-format.d.ts +1 -1
- package/queries/catalog/search-query/search-query-format.d.ts +1 -1
- package/queries/catalog/static-slice-query/static-slice-query-executor.js +2 -2
- package/queries/catalog/static-slice-query/static-slice-query-format.d.ts +1 -1
- package/queries/catalog/static-slice-query/static-slice-query-format.js +13 -1
- package/queries/query.d.ts +26 -18
- package/queries/query.js +21 -1
- package/r-bridge/lang-4.x/ast/model/collect.d.ts +2 -1
- package/r-bridge/lang-4.x/ast/model/collect.js +4 -0
- package/r-bridge/lang-4.x/ast/model/nodes/r-project.d.ts +29 -0
- package/r-bridge/lang-4.x/ast/model/nodes/r-project.js +15 -0
- package/r-bridge/lang-4.x/ast/model/processing/decorate.d.ts +5 -7
- package/r-bridge/lang-4.x/ast/model/processing/decorate.js +24 -11
- package/r-bridge/lang-4.x/ast/model/type.d.ts +2 -0
- package/r-bridge/lang-4.x/ast/model/type.js +2 -0
- package/r-bridge/lang-4.x/ast/parser/json/format.js +1 -1
- package/r-bridge/lang-4.x/ast/parser/json/parser.d.ts +9 -8
- package/r-bridge/lang-4.x/ast/parser/json/parser.js +11 -10
- package/r-bridge/lang-4.x/ast/parser/main/internal/structure/normalize-root.d.ts +4 -3
- package/r-bridge/lang-4.x/ast/parser/main/internal/structure/normalize-root.js +20 -11
- package/r-bridge/lang-4.x/tree-sitter/tree-sitter-executor.d.ts +3 -3
- package/r-bridge/lang-4.x/tree-sitter/tree-sitter-executor.js +5 -4
- package/r-bridge/lang-4.x/tree-sitter/tree-sitter-normalize.d.ts +3 -2
- package/r-bridge/lang-4.x/tree-sitter/tree-sitter-normalize.js +14 -5
- package/r-bridge/parser.d.ts +15 -5
- package/r-bridge/parser.js +27 -13
- package/r-bridge/retriever.d.ts +9 -15
- package/r-bridge/retriever.js +14 -5
- package/r-bridge/shell.d.ts +1 -1
- package/r-bridge/shell.js +1 -1
- package/reconstruct/auto-select/auto-select-defaults.d.ts +0 -1
- package/reconstruct/auto-select/magic-comments.js +1 -1
- package/reconstruct/reconstruct.d.ts +17 -9
- package/reconstruct/reconstruct.js +19 -8
- package/search/flowr-search.d.ts +12 -0
- package/search/search-executor/search-enrichers.d.ts +9 -2
- package/search/search-executor/search-enrichers.js +1 -3
- package/search/search-executor/search-generators.d.ts +1 -1
- package/search/search-executor/search-generators.js +9 -4
- package/slicing/criterion/collect-all.d.ts +3 -2
- package/slicing/criterion/collect-all.js +1 -1
- package/slicing/criterion/parse.js +4 -4
- package/slicing/static/slice-call.d.ts +3 -2
- package/slicing/static/slice-call.js +4 -4
- package/slicing/static/static-slicer.d.ts +3 -1
- package/slicing/static/static-slicer.js +6 -7
- package/statistics/features/supported/assignments/assignments.js +1 -1
- package/statistics/features/supported/control-flow/control-flow.js +2 -2
- package/statistics/features/supported/data-access/data-access.js +1 -1
- package/statistics/features/supported/defined-functions/defined-functions.js +1 -1
- package/statistics/features/supported/expression-list/statistics-expression-list.js +1 -1
- package/statistics/features/supported/loops/loops.js +1 -1
- package/statistics/features/supported/used-functions/used-functions.js +2 -2
- package/statistics/features/supported/variables/variables.js +3 -2
- package/statistics/statistics.js +3 -2
- package/util/assert.d.ts +4 -0
- package/util/assert.js +4 -0
- package/util/containers.js +1 -1
- package/util/files.d.ts +1 -1
- package/util/files.js +1 -1
- package/util/mermaid/ast.d.ts +4 -3
- package/util/mermaid/ast.js +36 -8
- package/util/mermaid/cfg.js +1 -1
- package/util/mermaid/dfg.d.ts +1 -0
- package/util/mermaid/dfg.js +3 -3
- package/util/simple-df/dfg-view.d.ts +2 -1
- package/util/simple-df/dfg-view.js +2 -2
- package/util/version.js +1 -1
- package/dataflow/environments/remove.d.ts +0 -12
- package/dataflow/environments/remove.js +0 -52
- package/documentation/print-analyzer-wiki.d.ts +0 -1
- package/documentation/print-analyzer-wiki.js +0 -141
- package/documentation/print-capabilities-markdown.d.ts +0 -1
- package/documentation/print-cfg-wiki.d.ts +0 -1
- package/documentation/print-core-wiki.d.ts +0 -5
- package/documentation/print-dataflow-graph-wiki.d.ts +0 -1
- package/documentation/print-engines-wiki.d.ts +0 -1
- package/documentation/print-faq-wiki.d.ts +0 -1
- package/documentation/print-faq-wiki.js +0 -18
- package/documentation/print-interface-wiki.d.ts +0 -1
- package/documentation/print-linter-issue.d.ts +0 -1
- package/documentation/print-linter-wiki.d.ts +0 -1
- package/documentation/print-linting-and-testing-wiki.d.ts +0 -1
- package/documentation/print-normalized-ast-wiki.d.ts +0 -1
- package/documentation/print-onboarding-wiki.d.ts +0 -1
- package/documentation/print-query-wiki.d.ts +0 -1
- package/documentation/print-readme.d.ts +0 -1
- package/documentation/print-search-wiki.d.ts +0 -1
- package/documentation/print-search-wiki.js +0 -74
- package/util/formats/adapter-format.d.ts +0 -6
- package/util/formats/adapter-format.js +0 -3
- package/util/formats/adapter.d.ts +0 -27
- package/util/formats/adapter.js +0 -58
- package/util/formats/adapters/r-adapter.d.ts +0 -4
- package/util/formats/adapters/r-adapter.js +0 -7
- package/util/formats/adapters/rmd-adapter.d.ts +0 -35
- package/util/formats/adapters/rmd-adapter.js +0 -100
|
@@ -6,7 +6,6 @@ import type { KnownParser, Parser } from '../../../r-bridge/parser';
|
|
|
6
6
|
import { PipelineExecutor } from '../../pipeline-executor';
|
|
7
7
|
import type { RShell } from '../../../r-bridge/shell';
|
|
8
8
|
import type { TreeSitterExecutor } from '../../../r-bridge/lang-4.x/tree-sitter/tree-sitter-executor';
|
|
9
|
-
import type { FlowrConfigOptions } from '../../../config';
|
|
10
9
|
export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
|
|
11
10
|
readonly name: "parse";
|
|
12
11
|
readonly humanReadableName: "parse with R shell";
|
|
@@ -19,17 +18,31 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
19
18
|
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
|
|
20
19
|
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
|
|
21
20
|
};
|
|
22
|
-
readonly 5: (
|
|
21
|
+
readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
|
|
23
22
|
};
|
|
24
23
|
readonly dependencies: readonly [];
|
|
25
24
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
|
|
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;
|
|
26
39
|
} | {
|
|
27
40
|
readonly name: "normalize";
|
|
28
41
|
readonly humanReadableName: "normalize";
|
|
29
42
|
readonly description: "Normalize the AST to flowR's AST";
|
|
30
43
|
readonly processor: (results: {
|
|
31
44
|
parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
|
|
32
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/
|
|
45
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
33
46
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
34
47
|
readonly printer: {
|
|
35
48
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -40,28 +53,14 @@ export declare const DEFAULT_SLICING_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
40
53
|
};
|
|
41
54
|
readonly dependencies: readonly ["parse"];
|
|
42
55
|
readonly requiredInput: import("../all/core/10-normalize").NormalizeRequiredInput;
|
|
43
|
-
} | {
|
|
44
|
-
readonly name: "slice";
|
|
45
|
-
readonly humanReadableName: "static slice";
|
|
46
|
-
readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
|
|
47
|
-
readonly processor: (results: {
|
|
48
|
-
dataflow?: import("../../../dataflow/info").DataflowInformation;
|
|
49
|
-
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
50
|
-
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
|
|
51
|
-
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
|
|
52
|
-
readonly printer: {
|
|
53
|
-
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
54
|
-
};
|
|
55
|
-
readonly dependencies: readonly ["dataflow"];
|
|
56
|
-
readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
|
|
57
56
|
} | {
|
|
58
57
|
readonly humanReadableName: "dataflow";
|
|
59
58
|
readonly processor: (results: {
|
|
60
59
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
61
60
|
}, input: {
|
|
62
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
63
61
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
64
|
-
|
|
62
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
63
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
65
64
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
66
65
|
};
|
|
67
66
|
readonly requiredInput: {};
|
|
@@ -103,17 +102,31 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
|
|
|
103
102
|
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
|
|
104
103
|
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
|
|
105
104
|
};
|
|
106
|
-
readonly 5: (
|
|
105
|
+
readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
|
|
107
106
|
};
|
|
108
107
|
readonly dependencies: readonly [];
|
|
109
108
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
|
|
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;
|
|
110
123
|
} | {
|
|
111
124
|
readonly name: "normalize";
|
|
112
125
|
readonly humanReadableName: "normalize";
|
|
113
126
|
readonly description: "Normalize the AST to flowR's AST";
|
|
114
127
|
readonly processor: (results: {
|
|
115
128
|
parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
|
|
116
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/
|
|
129
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
117
130
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
118
131
|
readonly printer: {
|
|
119
132
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -124,28 +137,14 @@ export declare const DEFAULT_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipeline"
|
|
|
124
137
|
};
|
|
125
138
|
readonly dependencies: readonly ["parse"];
|
|
126
139
|
readonly requiredInput: import("../all/core/10-normalize").NormalizeRequiredInput;
|
|
127
|
-
} | {
|
|
128
|
-
readonly name: "slice";
|
|
129
|
-
readonly humanReadableName: "static slice";
|
|
130
|
-
readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
|
|
131
|
-
readonly processor: (results: {
|
|
132
|
-
dataflow?: import("../../../dataflow/info").DataflowInformation;
|
|
133
|
-
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
134
|
-
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
|
|
135
|
-
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
|
|
136
|
-
readonly printer: {
|
|
137
|
-
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
138
|
-
};
|
|
139
|
-
readonly dependencies: readonly ["dataflow"];
|
|
140
|
-
readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
|
|
141
140
|
} | {
|
|
142
141
|
readonly humanReadableName: "dataflow";
|
|
143
142
|
readonly processor: (results: {
|
|
144
143
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
145
144
|
}, input: {
|
|
146
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
147
145
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
148
|
-
|
|
146
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
147
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
149
148
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
150
149
|
};
|
|
151
150
|
readonly requiredInput: {};
|
|
@@ -187,17 +186,31 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
|
|
|
187
186
|
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
|
|
188
187
|
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
|
|
189
188
|
};
|
|
190
|
-
readonly 5: (
|
|
189
|
+
readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
|
|
191
190
|
};
|
|
192
191
|
readonly dependencies: readonly [];
|
|
193
192
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
|
|
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;
|
|
194
207
|
} | {
|
|
195
208
|
readonly name: "normalize";
|
|
196
209
|
readonly humanReadableName: "normalize";
|
|
197
210
|
readonly description: "Normalize the AST to flowR's AST";
|
|
198
211
|
readonly processor: (results: {
|
|
199
212
|
parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
|
|
200
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/
|
|
213
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
201
214
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
202
215
|
readonly printer: {
|
|
203
216
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -208,28 +221,14 @@ export declare const DEFAULT_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./pipel
|
|
|
208
221
|
};
|
|
209
222
|
readonly dependencies: readonly ["parse"];
|
|
210
223
|
readonly requiredInput: import("../all/core/10-normalize").NormalizeRequiredInput;
|
|
211
|
-
} | {
|
|
212
|
-
readonly name: "slice";
|
|
213
|
-
readonly humanReadableName: "static slice";
|
|
214
|
-
readonly description: "Calculate the actual static slice from the dataflow graph and the given slicing criteria";
|
|
215
|
-
readonly processor: (results: {
|
|
216
|
-
dataflow?: import("../../../dataflow/info").DataflowInformation;
|
|
217
|
-
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
218
|
-
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>, _config: FlowrConfigOptions) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
|
|
219
|
-
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
|
|
220
|
-
readonly printer: {
|
|
221
|
-
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
222
|
-
};
|
|
223
|
-
readonly dependencies: readonly ["dataflow"];
|
|
224
|
-
readonly requiredInput: import("../all/static-slicing/00-slice").SliceRequiredInput;
|
|
225
224
|
} | {
|
|
226
225
|
readonly humanReadableName: "dataflow";
|
|
227
226
|
readonly processor: (results: {
|
|
228
227
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
229
228
|
}, input: {
|
|
230
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
231
229
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
232
|
-
|
|
230
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
231
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
233
232
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
234
233
|
};
|
|
235
234
|
readonly requiredInput: {};
|
|
@@ -252,7 +251,7 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
|
|
|
252
251
|
readonly processor: (results: {
|
|
253
252
|
dataflow?: import("../../../dataflow/info").DataflowInformation;
|
|
254
253
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
255
|
-
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput
|
|
254
|
+
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
|
|
256
255
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
|
|
257
256
|
readonly printer: {
|
|
258
257
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -264,9 +263,9 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
|
|
|
264
263
|
readonly processor: (results: {
|
|
265
264
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
266
265
|
}, input: {
|
|
267
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
268
266
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
269
|
-
|
|
267
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
268
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
270
269
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
271
270
|
};
|
|
272
271
|
readonly requiredInput: {};
|
|
@@ -315,8 +314,8 @@ export declare const TREE_SITTER_SLICING_PIPELINE: import("./pipeline").Pipeline
|
|
|
315
314
|
readonly humanReadableName: "normalize tree-sitter tree";
|
|
316
315
|
readonly description: "Normalize the AST to flowR's AST";
|
|
317
316
|
readonly processor: (results: {
|
|
318
|
-
|
|
319
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput
|
|
317
|
+
parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
|
|
318
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
320
319
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
321
320
|
readonly printer: {
|
|
322
321
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -335,7 +334,7 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
|
|
|
335
334
|
readonly processor: (results: {
|
|
336
335
|
dataflow?: import("../../../dataflow/info").DataflowInformation;
|
|
337
336
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
338
|
-
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput
|
|
337
|
+
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
|
|
339
338
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
|
|
340
339
|
readonly printer: {
|
|
341
340
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -347,9 +346,9 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
|
|
|
347
346
|
readonly processor: (results: {
|
|
348
347
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
349
348
|
}, input: {
|
|
350
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
351
349
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
352
|
-
|
|
350
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
351
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
353
352
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
354
353
|
};
|
|
355
354
|
readonly requiredInput: {};
|
|
@@ -398,8 +397,8 @@ export declare const TREE_SITTER_SLICE_AND_RECONSTRUCT_PIPELINE: import("./pipel
|
|
|
398
397
|
readonly humanReadableName: "normalize tree-sitter tree";
|
|
399
398
|
readonly description: "Normalize the AST to flowR's AST";
|
|
400
399
|
readonly processor: (results: {
|
|
401
|
-
|
|
402
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput
|
|
400
|
+
parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
|
|
401
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
403
402
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
404
403
|
readonly printer: {
|
|
405
404
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -418,7 +417,7 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
|
|
|
418
417
|
readonly processor: (results: {
|
|
419
418
|
dataflow?: import("../../../dataflow/info").DataflowInformation;
|
|
420
419
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
421
|
-
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput
|
|
420
|
+
}, input: Partial<import("../all/static-slicing/00-slice").SliceRequiredInput>) => Readonly<import("../../../slicing/static/slicer-types").SliceResult>;
|
|
422
421
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerRequest;
|
|
423
422
|
readonly printer: {
|
|
424
423
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -430,9 +429,9 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
|
|
|
430
429
|
readonly processor: (results: {
|
|
431
430
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
432
431
|
}, input: {
|
|
433
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
434
432
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
435
|
-
|
|
433
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
434
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
436
435
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
437
436
|
};
|
|
438
437
|
readonly requiredInput: {};
|
|
@@ -467,8 +466,8 @@ export declare const TREE_SITTER_SLICE_WITHOUT_RECONSTRUCT_PIPELINE: import("./p
|
|
|
467
466
|
readonly humanReadableName: "normalize tree-sitter tree";
|
|
468
467
|
readonly description: "Normalize the AST to flowR's AST";
|
|
469
468
|
readonly processor: (results: {
|
|
470
|
-
|
|
471
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput
|
|
469
|
+
parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
|
|
470
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
472
471
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
473
472
|
readonly printer: {
|
|
474
473
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -497,7 +496,7 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
497
496
|
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
|
|
498
497
|
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
|
|
499
498
|
};
|
|
500
|
-
readonly 5: (
|
|
499
|
+
readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
|
|
501
500
|
};
|
|
502
501
|
readonly dependencies: readonly [];
|
|
503
502
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
|
|
@@ -507,7 +506,7 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
507
506
|
readonly description: "Normalize the AST to flowR's AST";
|
|
508
507
|
readonly processor: (results: {
|
|
509
508
|
parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
|
|
510
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/
|
|
509
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
511
510
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
512
511
|
readonly printer: {
|
|
513
512
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -523,9 +522,9 @@ export declare const DEFAULT_DATAFLOW_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
523
522
|
readonly processor: (results: {
|
|
524
523
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
525
524
|
}, input: {
|
|
526
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
527
525
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
528
|
-
|
|
526
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
527
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
529
528
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
530
529
|
};
|
|
531
530
|
readonly requiredInput: {};
|
|
@@ -546,9 +545,9 @@ export declare const TREE_SITTER_DATAFLOW_PIPELINE: import("./pipeline").Pipelin
|
|
|
546
545
|
readonly processor: (results: {
|
|
547
546
|
normalize?: import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst;
|
|
548
547
|
}, input: {
|
|
549
|
-
request?: import("../../../r-bridge/retriever").RParseRequests;
|
|
550
548
|
parser?: Parser<import("../../../r-bridge/parser").KnownParserType>;
|
|
551
|
-
|
|
549
|
+
context?: import("../../../project/context/flowr-analyzer-context").FlowrAnalyzerContext;
|
|
550
|
+
}) => import("../../../dataflow/info").DataflowInformation & {
|
|
552
551
|
cfgQuick: import("../../../control-flow/control-flow-graph").ControlFlowInformation | undefined;
|
|
553
552
|
};
|
|
554
553
|
readonly requiredInput: {};
|
|
@@ -583,8 +582,8 @@ export declare const TREE_SITTER_DATAFLOW_PIPELINE: import("./pipeline").Pipelin
|
|
|
583
582
|
readonly humanReadableName: "normalize tree-sitter tree";
|
|
584
583
|
readonly description: "Normalize the AST to flowR's AST";
|
|
585
584
|
readonly processor: (results: {
|
|
586
|
-
|
|
587
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput
|
|
585
|
+
parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
|
|
586
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
588
587
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
589
588
|
readonly printer: {
|
|
590
589
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -609,7 +608,7 @@ export declare const DEFAULT_NORMALIZE_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
609
608
|
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
|
|
610
609
|
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
|
|
611
610
|
};
|
|
612
|
-
readonly 5: (
|
|
611
|
+
readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
|
|
613
612
|
};
|
|
614
613
|
readonly dependencies: readonly [];
|
|
615
614
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
|
|
@@ -619,7 +618,7 @@ export declare const DEFAULT_NORMALIZE_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
619
618
|
readonly description: "Normalize the AST to flowR's AST";
|
|
620
619
|
readonly processor: (results: {
|
|
621
620
|
parse?: import("../../../r-bridge/parser").ParseStepOutput<string>;
|
|
622
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/
|
|
621
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
623
622
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
624
623
|
readonly printer: {
|
|
625
624
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -651,8 +650,8 @@ export declare const TREE_SITTER_NORMALIZE_PIPELINE: import("./pipeline").Pipeli
|
|
|
651
650
|
readonly humanReadableName: "normalize tree-sitter tree";
|
|
652
651
|
readonly description: "Normalize the AST to flowR's AST";
|
|
653
652
|
readonly processor: (results: {
|
|
654
|
-
|
|
655
|
-
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput
|
|
653
|
+
parse?: import("../../../r-bridge/parser").ParseStepOutput<import("web-tree-sitter").Tree>;
|
|
654
|
+
}, input: Partial<import("../all/core/10-normalize").NormalizeRequiredInput>) => import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").NormalizedAst<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation, import("../../../r-bridge/lang-4.x/ast/model/nodes/r-project").RProject<import("../../../r-bridge/lang-4.x/ast/model/processing/decorate").ParentInformation>>;
|
|
656
655
|
readonly executed: import("../pipeline-step").PipelineStepStage.OncePerFile;
|
|
657
656
|
readonly printer: {
|
|
658
657
|
readonly 0: typeof import("../../print/print").internalPrinter;
|
|
@@ -676,7 +675,7 @@ export declare const DEFAULT_PARSE_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
676
675
|
(value: any, replacer?: (this: any, key: string, value: any) => any, space?: string | number): string;
|
|
677
676
|
(value: any, replacer?: (number | string)[] | null, space?: string | number): string;
|
|
678
677
|
};
|
|
679
|
-
readonly 5: (
|
|
678
|
+
readonly 5: (p: import("../../../r-bridge/parser").ParseStepOutput<string>, config: import("../../../util/quads").QuadSerializationConfiguration) => string;
|
|
680
679
|
};
|
|
681
680
|
readonly dependencies: readonly [];
|
|
682
681
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<string>;
|
|
@@ -697,15 +696,15 @@ export declare const TREE_SITTER_PARSE_PIPELINE: import("./pipeline").Pipeline<{
|
|
|
697
696
|
readonly dependencies: readonly [];
|
|
698
697
|
readonly requiredInput: import("../../../r-bridge/parser").ParseRequiredInput<import("web-tree-sitter").Tree>;
|
|
699
698
|
}>;
|
|
700
|
-
export declare function createParsePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'
|
|
701
|
-
export declare function createParsePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'
|
|
702
|
-
export declare function createParsePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'
|
|
703
|
-
export declare function createSlicePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'
|
|
704
|
-
export declare function createSlicePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'
|
|
705
|
-
export declare function createSlicePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'
|
|
706
|
-
export declare function createNormalizePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'
|
|
707
|
-
export declare function createNormalizePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'
|
|
708
|
-
export declare function createNormalizePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'
|
|
709
|
-
export declare function createDataflowPipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'
|
|
710
|
-
export declare function createDataflowPipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'
|
|
711
|
-
export declare function createDataflowPipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'
|
|
699
|
+
export declare function createParsePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_PARSE_PIPELINE>;
|
|
700
|
+
export declare function createParsePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_PARSE_PIPELINE>;
|
|
701
|
+
export declare function createParsePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_PARSE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_PARSE_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_PARSE_PIPELINE>;
|
|
702
|
+
export declare function createSlicePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_SLICING_PIPELINE>;
|
|
703
|
+
export declare function createSlicePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_SLICING_PIPELINE>;
|
|
704
|
+
export declare function createSlicePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_SLICING_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_SLICING_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_SLICING_PIPELINE>;
|
|
705
|
+
export declare function createNormalizePipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_NORMALIZE_PIPELINE>;
|
|
706
|
+
export declare function createNormalizePipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_NORMALIZE_PIPELINE>;
|
|
707
|
+
export declare function createNormalizePipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_NORMALIZE_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_NORMALIZE_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_NORMALIZE_PIPELINE>;
|
|
708
|
+
export declare function createDataflowPipeline(parser: TreeSitterExecutor, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>): PipelineExecutor<typeof TREE_SITTER_DATAFLOW_PIPELINE>;
|
|
709
|
+
export declare function createDataflowPipeline(parser: RShell, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_DATAFLOW_PIPELINE>;
|
|
710
|
+
export declare function createDataflowPipeline(parser: KnownParser, inputs: Omit<PipelineInput<typeof DEFAULT_DATAFLOW_PIPELINE>, 'parser'>): PipelineExecutor<typeof DEFAULT_DATAFLOW_PIPELINE> | PipelineExecutor<typeof TREE_SITTER_DATAFLOW_PIPELINE>;
|
|
@@ -37,47 +37,47 @@ exports.TREE_SITTER_PARSE_PIPELINE = (0, pipeline_1.createPipeline)(_01_parse_tr
|
|
|
37
37
|
* Returns either a {@link DEFAULT_PARSE_PIPELINE} or a {@link TREE_SITTER_PARSE_PIPELINE} depending on the parser used.
|
|
38
38
|
* @see {@link createNormalizePipeline}, {@link createDataflowPipeline}, {@link createSlicePipeline}
|
|
39
39
|
*/
|
|
40
|
-
function createParsePipeline(parser, inputs
|
|
40
|
+
function createParsePipeline(parser, inputs) {
|
|
41
41
|
const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_PARSE_PIPELINE : exports.DEFAULT_PARSE_PIPELINE;
|
|
42
42
|
return new pipeline_executor_1.PipelineExecutor(base, {
|
|
43
43
|
parser: parser,
|
|
44
44
|
...inputs
|
|
45
|
-
}
|
|
45
|
+
});
|
|
46
46
|
}
|
|
47
47
|
/**
|
|
48
48
|
* **Please use {@link FlowrAnalyzer} instead of this directly unless you really know what you are doing.**
|
|
49
49
|
* Returns either a {@link DEFAULT_SLICING_PIPELINE} or a {@link TREE_SITTER_SLICING_PIPELINE} depending on the parser used.
|
|
50
50
|
* @see {@link createParsePipeline}, {@link createNormalizePipeline}, {@link createDataflowPipeline}
|
|
51
51
|
*/
|
|
52
|
-
function createSlicePipeline(parser, inputs
|
|
52
|
+
function createSlicePipeline(parser, inputs) {
|
|
53
53
|
const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_SLICING_PIPELINE : exports.DEFAULT_SLICING_PIPELINE;
|
|
54
54
|
return new pipeline_executor_1.PipelineExecutor(base, {
|
|
55
55
|
parser: parser,
|
|
56
56
|
...inputs
|
|
57
|
-
}
|
|
57
|
+
});
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
60
|
* **Please use {@link FlowrAnalyzer} instead of this directly unless you really know what you are doing.**
|
|
61
61
|
* Returns either a {@link DEFAULT_NORMALIZE_PIPELINE} or a {@link TREE_SITTER_NORMALIZE_PIPELINE} depending on the parser used.
|
|
62
62
|
* @see {@link createParsePipeline}, {@link createDataflowPipeline}, {@link createSlicePipeline}
|
|
63
63
|
*/
|
|
64
|
-
function createNormalizePipeline(parser, inputs
|
|
64
|
+
function createNormalizePipeline(parser, inputs) {
|
|
65
65
|
const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_NORMALIZE_PIPELINE : exports.DEFAULT_NORMALIZE_PIPELINE;
|
|
66
66
|
return new pipeline_executor_1.PipelineExecutor(base, {
|
|
67
67
|
parser: parser,
|
|
68
68
|
...inputs
|
|
69
|
-
}
|
|
69
|
+
});
|
|
70
70
|
}
|
|
71
71
|
/**
|
|
72
72
|
* **Please use {@link FlowrAnalyzer} instead of this directly unless you really know what you are doing.**
|
|
73
73
|
* Returns either a {@link DEFAULT_DATAFLOW_PIPELINE} or a {@link TREE_SITTER_DATAFLOW_PIPELINE} depending on the parser used.
|
|
74
74
|
* @see {@link createParsePipeline}, {@link createNormalizePipeline}, {@link createSlicePipeline}
|
|
75
75
|
*/
|
|
76
|
-
function createDataflowPipeline(parser, inputs
|
|
76
|
+
function createDataflowPipeline(parser, inputs) {
|
|
77
77
|
const base = parser.name === 'tree-sitter' ? exports.TREE_SITTER_DATAFLOW_PIPELINE : exports.DEFAULT_DATAFLOW_PIPELINE;
|
|
78
78
|
return new pipeline_executor_1.PipelineExecutor(base, {
|
|
79
79
|
parser: parser,
|
|
80
80
|
...inputs
|
|
81
|
-
}
|
|
81
|
+
});
|
|
82
82
|
}
|
|
83
83
|
//# sourceMappingURL=default-pipelines.js.map
|
package/dataflow/cluster.js
CHANGED
|
@@ -10,13 +10,13 @@ const assert_1 = require("../util/assert");
|
|
|
10
10
|
function findAllClusters(graph) {
|
|
11
11
|
const clusters = [];
|
|
12
12
|
// we reverse the vertices since dependencies usually point "backwards" from later nodes
|
|
13
|
-
const notReached = new Set(
|
|
13
|
+
const notReached = new Set(graph.vertices(true).map(([id]) => id).toArray().reverse());
|
|
14
14
|
while (notReached.size > 0) {
|
|
15
15
|
const [startNode] = notReached;
|
|
16
16
|
notReached.delete(startNode);
|
|
17
17
|
clusters.push({
|
|
18
18
|
startNode: startNode,
|
|
19
|
-
members:
|
|
19
|
+
members: Array.from(makeCluster(graph, startNode, notReached)),
|
|
20
20
|
hasUnknownSideEffects: graph.unknownSideEffects.has(startNode)
|
|
21
21
|
});
|
|
22
22
|
}
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type REnvironmentInformation } from './environment';
|
|
2
|
+
import type { IdentifierDefinition } from './identifier';
|
|
3
|
+
/**
|
|
4
|
+
* Merges two arrays of identifier definitions, ensuring uniqueness based on `nodeId` and `definedAt`.
|
|
5
|
+
*/
|
|
6
|
+
export declare function uniqueMergeValuesInDefinitions(old: IdentifierDefinition[], value: readonly IdentifierDefinition[]): IdentifierDefinition[];
|
|
2
7
|
/**
|
|
3
8
|
* Adds all writes of `next` to `base` (i.e., the operations of `next` *might* happen).
|
|
4
9
|
*/
|
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.uniqueMergeValuesInDefinitions = uniqueMergeValuesInDefinitions;
|
|
3
4
|
exports.appendEnvironment = appendEnvironment;
|
|
4
5
|
const assert_1 = require("../../util/assert");
|
|
5
|
-
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Merges two arrays of identifier definitions, ensuring uniqueness based on `nodeId` and `definedAt`.
|
|
8
|
+
*/
|
|
9
|
+
function uniqueMergeValuesInDefinitions(old, value) {
|
|
7
10
|
const result = old;
|
|
8
11
|
for (const v of value) {
|
|
9
12
|
const find = result.findIndex(o => o.nodeId === v.nodeId && o.definedAt === v.definedAt);
|
|
@@ -13,23 +16,6 @@ function uniqueMergeValues(old, value) {
|
|
|
13
16
|
}
|
|
14
17
|
return result;
|
|
15
18
|
}
|
|
16
|
-
function appendIEnvironmentWith(base, next) {
|
|
17
|
-
(0, assert_1.guard)(base !== undefined && next !== undefined, 'can not append environments with undefined');
|
|
18
|
-
const map = new Map(base.memory);
|
|
19
|
-
for (const [key, value] of next.memory) {
|
|
20
|
-
const old = map.get(key);
|
|
21
|
-
if (old) {
|
|
22
|
-
map.set(key, uniqueMergeValues(old, value));
|
|
23
|
-
}
|
|
24
|
-
else {
|
|
25
|
-
map.set(key, value);
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
const parent = base.parent.builtInEnv ? base.parent : appendIEnvironmentWith(base.parent, next.parent);
|
|
29
|
-
const out = new environment_1.Environment(parent);
|
|
30
|
-
out.memory = map;
|
|
31
|
-
return out;
|
|
32
|
-
}
|
|
33
19
|
function appendEnvironment(base, next) {
|
|
34
20
|
if (base === undefined) {
|
|
35
21
|
return next;
|
|
@@ -39,7 +25,7 @@ function appendEnvironment(base, next) {
|
|
|
39
25
|
}
|
|
40
26
|
(0, assert_1.guard)(base.level === next.level, 'environments must have the same level to be handled, it is up to the caller to ensure that');
|
|
41
27
|
return {
|
|
42
|
-
current:
|
|
28
|
+
current: base.current.append(next.current),
|
|
43
29
|
level: base.level,
|
|
44
30
|
};
|
|
45
31
|
}
|
|
@@ -33,6 +33,7 @@ import { resolveAsMinus, resolveAsPlus, resolveAsSeq, resolveAsVector } from '..
|
|
|
33
33
|
import type { DataflowGraph } from '../graph/graph';
|
|
34
34
|
import type { VariableResolve } from '../../config';
|
|
35
35
|
import type { BuiltInConstantDefinition, BuiltInDefinition, BuiltInFunctionDefinition, BuiltInReplacementDefinition } from './built-in-config';
|
|
36
|
+
import type { ReadOnlyFlowrAnalyzerContext } from '../../project/context/flowr-analyzer-context';
|
|
36
37
|
export type BuiltIn = `built-in:${string}`;
|
|
37
38
|
/**
|
|
38
39
|
* Generate a built-in id for the given name
|
|
@@ -69,7 +70,7 @@ export interface DefaultBuiltInProcessorConfiguration extends ForceArguments {
|
|
|
69
70
|
*/
|
|
70
71
|
readonly useAsProcessor?: UseAsProcessors;
|
|
71
72
|
}
|
|
72
|
-
export type BuiltInEvalHandler = (resolve: VariableResolve, a: RNodeWithParent, env?: REnvironmentInformation, graph?: DataflowGraph, map?: AstIdMap) => Value;
|
|
73
|
+
export type BuiltInEvalHandler = (resolve: VariableResolve, a: RNodeWithParent, ctx: ReadOnlyFlowrAnalyzerContext, env?: REnvironmentInformation, graph?: DataflowGraph, map?: AstIdMap) => Value;
|
|
73
74
|
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;
|
|
74
75
|
export declare const BuiltInProcessorMapper: {
|
|
75
76
|
readonly 'builtin:default': typeof defaultBuiltInProcessor;
|
|
@@ -2,7 +2,6 @@ import { type REnvironmentInformation } from './environment';
|
|
|
2
2
|
/**
|
|
3
3
|
* Produce a clone of the given environment information.
|
|
4
4
|
* @param environment - The environment information to clone.
|
|
5
|
-
* @param builtInEnvironment - The built-in environment
|
|
6
5
|
* @param recurseParents - Whether to clone the parent environments as well.
|
|
7
6
|
*/
|
|
8
|
-
export declare function cloneEnvironmentInformation(
|
|
7
|
+
export declare function cloneEnvironmentInformation({ current, level }: REnvironmentInformation, recurseParents?: boolean): REnvironmentInformation;
|