@eagleoutice/flowr - v2.15.8
    Preparing search index...

    Interface FlowrAnalysisProvider<Parser>

    Extends the ReadonlyFlowrAnalysisProvider with methods that allow modifying the analyzer state.

    interface FlowrAnalysisProvider<Parser extends KnownParser = KnownParser> {
        addFile(
            ...f: (string | RParseRequestFromFile | FlowrFileProvider<string>)[],
        ): void;
        addRequest(...request: (string | RAnalysisRequest)[]): void;
        callGraph(force?: boolean): Promise<CallGraph>;
        context(): FlowrAnalyzerContext;
        controlflow(
            simplifications?: readonly (
                | "unique-cf-sets"
                | "analyze-dead-code"
                | "remove-dead-code"
                | "to-basic-blocks"
            )[],
            force?: boolean,
        ): Promise<ControlFlowInformation<CfgVertex>>;
        dataflow(
            force?: boolean,
        ): Promise<DataflowInformation & PipelinePerStepMetaInformation>;
        flowrConfig: FlowrConfig;
        functionInfo(
            name: string | Identifier,
            version?: string,
        ): FnInfo | undefined;
        inspectContext(): ReadOnlyFlowrAnalyzerContext;
        normalize(
            force?: boolean,
        ): Promise<
            NormalizedAst<ParentInformation, RProject<ParentInformation>> & PipelinePerStepMetaInformation,
        >;
        normalizeStandalone(data: string | RParseRequest): NormalizedAst;
        parse(
            force?: boolean,
        ): Promise<NonNullable<AnalyzerCacheType<Parser>["parse"]>>;
        parserInformation(): KnownParserInformation;
        parseStandalone(data: string | RParseRequest): Tree;
        peekCallGraph(): CallGraph | undefined;
        peekControlflow(
            simplifications?: readonly (
                | "unique-cf-sets"
                | "analyze-dead-code"
                | "remove-dead-code"
                | "to-basic-blocks"
            )[],
        ): ControlFlowInformation<CfgVertex>
        | undefined;
        peekDataflow(): | DataflowInformation & PipelinePerStepMetaInformation
        | undefined;
        peekNormalize(): | NormalizedAst<
            ParentInformation,
            RProject<ParentInformation>,
        > & PipelinePerStepMetaInformation
        | undefined;
        peekParse(): NonNullable<AnalyzerCacheType<Parser>["parse"]> | undefined;
        query<
            Types extends
                | "search"
                | "project"
                | "linter"
                | "config"
                | "dependencies"
                | "dataflow"
                | "files"
                | "call-context"
                | "does-call"
                | "call-graph"
                | "control-flow"
                | "dataflow-lens"
                | "absint"
                | "normalized-ast"
                | "id-map"
                | "dataflow-cluster"
                | "static-slice"
                | "location-map"
                | "happens-before"
                | "inspect-exception"
                | "inspect-higher-order"
                | "inspect-recursion"
                | "inspect-fn-props"
                | "resolve-value"
                | "signature"
                | "origin"
                | "provenance"
                | "input-sources"
                | "dice"
                | "guess-dep-versions" = | "search"
            | "project"
            | "linter"
            | "config"
            | "dependencies"
            | "dataflow"
            | "files"
            | "call-context"
            | "does-call"
            | "call-graph"
            | "control-flow"
            | "dataflow-lens"
            | "absint"
            | "normalized-ast"
            | "id-map"
            | "dataflow-cluster"
            | "static-slice"
            | "location-map"
            | "happens-before"
            | "inspect-exception"
            | "inspect-higher-order"
            | "inspect-recursion"
            | "inspect-fn-props"
            | "resolve-value"
            | "signature"
            | "origin"
            | "provenance"
            | "input-sources"
            | "dice"
            | "guess-dep-versions",
        >(
            query: Queries<Types>,
            options?: FlowrAnalysisOptions,
        ): Promise<QueryResults<Types>>;
        receive(event: InvalidationEvent): void;
        reset(): void;
        resetConfig(): void;
        runFull(force?: boolean, options?: FlowrAnalysisOptions): Promise<void>;
        runSearch<Search extends FlowrSearchLike>(
            search: Search,
            options?: FlowrAnalysisOptions,
        ): Promise<GetSearchElements<SearchOutput<Search>>>;
        updateConfig(
            update: {
                abstractInterpretation?: {
                    dataFrame?: { maxColNames?: ...; readLoadedData?: ... };
                    followCalls?: boolean;
                    wideningThreshold?: number;
                };
                defaultEngine?: "r-shell"
                | "tree-sitter";
                defaultPlugins?: (string | [(...)?, (...)?] | undefined)[];
                engines?: (
                    | {
                        lax?: ...;
                        treeSitterWasmPath?: ...;
                        type?: ...;
                        wasmPath?: ...;
                        [key: ...]: ...;
                    }
                    | { rPath?: ...; type?: ...; [key: ...]: ... }
                    | undefined
                )[];
                gas?: {
                    countedCheckEvery?: number;
                    features?: { [key: ...]: ... };
                    heapProvider?: () => ...;
                    thresholds?: {
                        memory?: ...;
                        steps?: ...;
                        timeMs?: ...;
                        vertices?: ...;
                        [key: ...]: ...;
                    };
                    [key: string]: unknown;
                };
                ignoreLoadCalls?: boolean;
                ignoreSourceCalls?: boolean;
                incremental?: {
                    alwaysIncremental?: boolean;
                    parsing?: { activated?: ...; heuristics?: ... };
                };
                inputSources?: {
                    cmdline?: (...)[];
                    const?: (...)[];
                    dconst?: (...)[];
                    ffi?: (...)[];
                    file?: (...)[];
                    glob?: (...)[];
                    lang?: (...)[];
                    linkedEntryPoints?: (...)[];
                    linkedObjects?: (...)[];
                    narrowing?: (...)[];
                    net?: (...)[];
                    options?: (...)[];
                    param?: (...)[];
                    pure?: (...)[];
                    rand?: (...)[];
                    scope?: (...)[];
                    system?: (...)[];
                    tempfile?: (...)[];
                    unknown?: (...)[];
                    user?: (...)[];
                };
                linter?: { disabledRules?: (...)[] };
                logLevel?:
                    | "debug"
                    | "silly"
                    | "trace"
                    | "info"
                    | "warn"
                    | "error"
                    | "fatal";
                project?: {
                    assumeImplicitEcho?: boolean;
                    basePackages?: (...)[];
                    classification?: {
                        notebookExtensions?: ...;
                        shinyDescriptionTypes?: ...;
                        shinyEntryFiles?: ...;
                        shinyUsagePattern?: ...;
                    };
                    discovery?: { full?: ...; ignore?: ...; perKind?: ... };
                    failOnInaccessiblePath?: boolean;
                    implicitSources?: (...)[];
                    resolveUnknownPathsOnDisk?: boolean;
                    useProjectType?: ProjectKind;
                };
                repl?: {
                    autoUseFileProtocol?: boolean;
                    dfProcessorHeat?: boolean;
                    hints?: boolean;
                    plugins?: (...)[];
                    queryStats?: boolean;
                    quickStats?: boolean;
                    showPlugins?: boolean;
                };
                semantics?: { environment?: { overwriteBuiltIns?: ... } };
                solver?: {
                    assumeAttachedPackages?: (...)[];
                    evalStrings?: boolean;
                    instrument?: { dataflowExtractors?: ... };
                    resolveSource?: {
                        applyReplacements?: ...;
                        assumeFilesExist?: ...;
                        dropPaths?: ...;
                        ignoreCapitalization?: ...;
                        inferWorkingDirectory?: ...;
                        repeatedSourceLimit?: ...;
                        searchPath?: ...;
                        [key: ...]: ...;
                    };
                    sigdb?: {
                        additionalPaths?: ...;
                        assumedRVersion?: ...;
                        autoSync?: ...;
                        blobCacheBudgetMb?: ...;
                        downloadRepo?: ...;
                        eagerlyLoad?: ...;
                        eagerlyLoadExports?: ...;
                        enabled?: ...;
                        installedLibrary?: ...;
                        linkBaseR?: ...;
                        linkBaseRCalls?: ...;
                        linkDescriptionDependencies?: ...;
                        linkPackageCalls?: ...;
                        loadProjectDependencies?: ...;
                        versionOverrides?: ...;
                        versionSelection?: ...;
                        warmInBackground?: ...;
                    };
                    slicer?: { autoExtend?: ...; threshold?: ... };
                    trackEnvironments?: boolean;
                    transitiveSideEffectRounds?: number;
                    variables?: VariableResolve;
                    versionManagement?: { linkedVersionGroups?: ... };
                };
                specializeConfig?: {
                    notebook?: {
                        abstractInterpretation?: ...;
                        defaultEngine?: ...;
                        defaultPlugins?: ...;
                        engines?: ...;
                        gas?: ...;
                        ignoreLoadCalls?: ...;
                        ignoreSourceCalls?: ...;
                        incremental?: ...;
                        inherit?: ...;
                        inputSources?: ...;
                        linter?: ...;
                        logLevel?: ...;
                        project?: ...;
                        repl?: ...;
                        semantics?: ...;
                        solver?: ...;
                        specializeConfig?: ...;
                    };
                    package?: {
                        abstractInterpretation?: ...;
                        defaultEngine?: ...;
                        defaultPlugins?: ...;
                        engines?: ...;
                        gas?: ...;
                        ignoreLoadCalls?: ...;
                        ignoreSourceCalls?: ...;
                        incremental?: ...;
                        inherit?: ...;
                        inputSources?: ...;
                        linter?: ...;
                        logLevel?: ...;
                        project?: ...;
                        repl?: ...;
                        semantics?: ...;
                        solver?: ...;
                        specializeConfig?: ...;
                    };
                    project?: {
                        abstractInterpretation?: ...;
                        defaultEngine?: ...;
                        defaultPlugins?: ...;
                        engines?: ...;
                        gas?: ...;
                        ignoreLoadCalls?: ...;
                        ignoreSourceCalls?: ...;
                        incremental?: ...;
                        inherit?: ...;
                        inputSources?: ...;
                        linter?: ...;
                        logLevel?: ...;
                        project?: ...;
                        repl?: ...;
                        semantics?: ...;
                        solver?: ...;
                        specializeConfig?: ...;
                    };
                    script?: {
                        abstractInterpretation?: ...;
                        defaultEngine?: ...;
                        defaultPlugins?: ...;
                        engines?: ...;
                        gas?: ...;
                        ignoreLoadCalls?: ...;
                        ignoreSourceCalls?: ...;
                        incremental?: ...;
                        inherit?: ...;
                        inputSources?: ...;
                        linter?: ...;
                        logLevel?: ...;
                        project?: ...;
                        repl?: ...;
                        semantics?: ...;
                        solver?: ...;
                        specializeConfig?: ...;
                    };
                    "shiny-app"?: {
                        abstractInterpretation?: ...;
                        defaultEngine?: ...;
                        defaultPlugins?: ...;
                        engines?: ...;
                        gas?: ...;
                        ignoreLoadCalls?: ...;
                        ignoreSourceCalls?: ...;
                        incremental?: ...;
                        inherit?: ...;
                        inputSources?: ...;
                        linter?: ...;
                        logLevel?: ...;
                        project?: ...;
                        repl?: ...;
                        semantics?: ...;
                        solver?: ...;
                        specializeConfig?: ...;
                    };
                    unknown?: {
                        abstractInterpretation?: ...;
                        defaultEngine?: ...;
                        defaultPlugins?: ...;
                        engines?: ...;
                        gas?: ...;
                        ignoreLoadCalls?: ...;
                        ignoreSourceCalls?: ...;
                        incremental?: ...;
                        inherit?: ...;
                        inputSources?: ...;
                        linter?: ...;
                        logLevel?: ...;
                        project?: ...;
                        repl?: ...;
                        semantics?: ...;
                        solver?: ...;
                        specializeConfig?: ...;
                    };
                };
            },
        ): void;
    }

    Type Parameters

    Hierarchy (View Summary)

    Index
    flowrConfig: FlowrConfig

    This is the config used for the analyzer

    • Add one or multiple requests to analyze.

      Parameters

      • ...request: (string | RAnalysisRequest)[]

        One or multiple requests or a file path (with the file:// protocol). If you just enter a string without the fileProtocol, it will be interpreted as R code.

      Returns void

      addFile - for adding files to the analyzer's context.

    • What flowR knows about the function name, whether that is one of its own built-ins, a package function the signature database carries, or both; see fnInfo.

      A string is read the way R source spells a name, so 'dplyr::lead' and 'dplyr:::internal' name the package function rather than a symbol with a :: in it (pass an Identifier for that one).

      Parameters

      • name: string | Identifier

        The function to ask about, 'dplyr::lead' or Identifier.make('lead', 'dplyr') to pin the package down.

      • Optionalversion: string

        The package version to answer for, the one the analysis assumes if omitted.

      Returns FnInfo | undefined

    • Access the query API for the request.

      Type Parameters

      • Types extends
            | "search"
            | "project"
            | "linter"
            | "config"
            | "dependencies"
            | "dataflow"
            | "files"
            | "call-context"
            | "does-call"
            | "call-graph"
            | "control-flow"
            | "dataflow-lens"
            | "absint"
            | "normalized-ast"
            | "id-map"
            | "dataflow-cluster"
            | "static-slice"
            | "location-map"
            | "happens-before"
            | "inspect-exception"
            | "inspect-higher-order"
            | "inspect-recursion"
            | "inspect-fn-props"
            | "resolve-value"
            | "signature"
            | "origin"
            | "provenance"
            | "input-sources"
            | "dice"
            | "guess-dep-versions" =
            | "search"
            | "project"
            | "linter"
            | "config"
            | "dependencies"
            | "dataflow"
            | "files"
            | "call-context"
            | "does-call"
            | "call-graph"
            | "control-flow"
            | "dataflow-lens"
            | "absint"
            | "normalized-ast"
            | "id-map"
            | "dataflow-cluster"
            | "static-slice"
            | "location-map"
            | "happens-before"
            | "inspect-exception"
            | "inspect-higher-order"
            | "inspect-recursion"
            | "inspect-fn-props"
            | "resolve-value"
            | "signature"
            | "origin"
            | "provenance"
            | "input-sources"
            | "dice"
            | "guess-dep-versions"

      Parameters

      Returns Promise<QueryResults<Types>>

    • Merge a runtime update into the base config and invalidate the derived config and cached analysis, so it takes effect.

      Parameters

      • update: {
            abstractInterpretation?: {
                dataFrame?: { maxColNames?: ...; readLoadedData?: ... };
                followCalls?: boolean;
                wideningThreshold?: number;
            };
            defaultEngine?: "r-shell"
            | "tree-sitter";
            defaultPlugins?: (string | [(...)?, (...)?] | undefined)[];
            engines?: (
                | {
                    lax?: ...;
                    treeSitterWasmPath?: ...;
                    type?: ...;
                    wasmPath?: ...;
                    [key: ...]: ...;
                }
                | { rPath?: ...; type?: ...; [key: ...]: ... }
                | undefined
            )[];
            gas?: {
                countedCheckEvery?: number;
                features?: { [key: ...]: ... };
                heapProvider?: () => ...;
                thresholds?: {
                    memory?: ...;
                    steps?: ...;
                    timeMs?: ...;
                    vertices?: ...;
                    [key: ...]: ...;
                };
                [key: string]: unknown;
            };
            ignoreLoadCalls?: boolean;
            ignoreSourceCalls?: boolean;
            incremental?: {
                alwaysIncremental?: boolean;
                parsing?: { activated?: ...; heuristics?: ... };
            };
            inputSources?: {
                cmdline?: (...)[];
                const?: (...)[];
                dconst?: (...)[];
                ffi?: (...)[];
                file?: (...)[];
                glob?: (...)[];
                lang?: (...)[];
                linkedEntryPoints?: (...)[];
                linkedObjects?: (...)[];
                narrowing?: (...)[];
                net?: (...)[];
                options?: (...)[];
                param?: (...)[];
                pure?: (...)[];
                rand?: (...)[];
                scope?: (...)[];
                system?: (...)[];
                tempfile?: (...)[];
                unknown?: (...)[];
                user?: (...)[];
            };
            linter?: { disabledRules?: (...)[] };
            logLevel?:
                | "debug"
                | "silly"
                | "trace"
                | "info"
                | "warn"
                | "error"
                | "fatal";
            project?: {
                assumeImplicitEcho?: boolean;
                basePackages?: (...)[];
                classification?: {
                    notebookExtensions?: ...;
                    shinyDescriptionTypes?: ...;
                    shinyEntryFiles?: ...;
                    shinyUsagePattern?: ...;
                };
                discovery?: { full?: ...; ignore?: ...; perKind?: ... };
                failOnInaccessiblePath?: boolean;
                implicitSources?: (...)[];
                resolveUnknownPathsOnDisk?: boolean;
                useProjectType?: ProjectKind;
            };
            repl?: {
                autoUseFileProtocol?: boolean;
                dfProcessorHeat?: boolean;
                hints?: boolean;
                plugins?: (...)[];
                queryStats?: boolean;
                quickStats?: boolean;
                showPlugins?: boolean;
            };
            semantics?: { environment?: { overwriteBuiltIns?: ... } };
            solver?: {
                assumeAttachedPackages?: (...)[];
                evalStrings?: boolean;
                instrument?: { dataflowExtractors?: ... };
                resolveSource?: {
                    applyReplacements?: ...;
                    assumeFilesExist?: ...;
                    dropPaths?: ...;
                    ignoreCapitalization?: ...;
                    inferWorkingDirectory?: ...;
                    repeatedSourceLimit?: ...;
                    searchPath?: ...;
                    [key: ...]: ...;
                };
                sigdb?: {
                    additionalPaths?: ...;
                    assumedRVersion?: ...;
                    autoSync?: ...;
                    blobCacheBudgetMb?: ...;
                    downloadRepo?: ...;
                    eagerlyLoad?: ...;
                    eagerlyLoadExports?: ...;
                    enabled?: ...;
                    installedLibrary?: ...;
                    linkBaseR?: ...;
                    linkBaseRCalls?: ...;
                    linkDescriptionDependencies?: ...;
                    linkPackageCalls?: ...;
                    loadProjectDependencies?: ...;
                    versionOverrides?: ...;
                    versionSelection?: ...;
                    warmInBackground?: ...;
                };
                slicer?: { autoExtend?: ...; threshold?: ... };
                trackEnvironments?: boolean;
                transitiveSideEffectRounds?: number;
                variables?: VariableResolve;
                versionManagement?: { linkedVersionGroups?: ... };
            };
            specializeConfig?: {
                notebook?: {
                    abstractInterpretation?: ...;
                    defaultEngine?: ...;
                    defaultPlugins?: ...;
                    engines?: ...;
                    gas?: ...;
                    ignoreLoadCalls?: ...;
                    ignoreSourceCalls?: ...;
                    incremental?: ...;
                    inherit?: ...;
                    inputSources?: ...;
                    linter?: ...;
                    logLevel?: ...;
                    project?: ...;
                    repl?: ...;
                    semantics?: ...;
                    solver?: ...;
                    specializeConfig?: ...;
                };
                package?: {
                    abstractInterpretation?: ...;
                    defaultEngine?: ...;
                    defaultPlugins?: ...;
                    engines?: ...;
                    gas?: ...;
                    ignoreLoadCalls?: ...;
                    ignoreSourceCalls?: ...;
                    incremental?: ...;
                    inherit?: ...;
                    inputSources?: ...;
                    linter?: ...;
                    logLevel?: ...;
                    project?: ...;
                    repl?: ...;
                    semantics?: ...;
                    solver?: ...;
                    specializeConfig?: ...;
                };
                project?: {
                    abstractInterpretation?: ...;
                    defaultEngine?: ...;
                    defaultPlugins?: ...;
                    engines?: ...;
                    gas?: ...;
                    ignoreLoadCalls?: ...;
                    ignoreSourceCalls?: ...;
                    incremental?: ...;
                    inherit?: ...;
                    inputSources?: ...;
                    linter?: ...;
                    logLevel?: ...;
                    project?: ...;
                    repl?: ...;
                    semantics?: ...;
                    solver?: ...;
                    specializeConfig?: ...;
                };
                script?: {
                    abstractInterpretation?: ...;
                    defaultEngine?: ...;
                    defaultPlugins?: ...;
                    engines?: ...;
                    gas?: ...;
                    ignoreLoadCalls?: ...;
                    ignoreSourceCalls?: ...;
                    incremental?: ...;
                    inherit?: ...;
                    inputSources?: ...;
                    linter?: ...;
                    logLevel?: ...;
                    project?: ...;
                    repl?: ...;
                    semantics?: ...;
                    solver?: ...;
                    specializeConfig?: ...;
                };
                "shiny-app"?: {
                    abstractInterpretation?: ...;
                    defaultEngine?: ...;
                    defaultPlugins?: ...;
                    engines?: ...;
                    gas?: ...;
                    ignoreLoadCalls?: ...;
                    ignoreSourceCalls?: ...;
                    incremental?: ...;
                    inherit?: ...;
                    inputSources?: ...;
                    linter?: ...;
                    logLevel?: ...;
                    project?: ...;
                    repl?: ...;
                    semantics?: ...;
                    solver?: ...;
                    specializeConfig?: ...;
                };
                unknown?: {
                    abstractInterpretation?: ...;
                    defaultEngine?: ...;
                    defaultPlugins?: ...;
                    engines?: ...;
                    gas?: ...;
                    ignoreLoadCalls?: ...;
                    ignoreSourceCalls?: ...;
                    incremental?: ...;
                    inherit?: ...;
                    inputSources?: ...;
                    linter?: ...;
                    logLevel?: ...;
                    project?: ...;
                    repl?: ...;
                    semantics?: ...;
                    solver?: ...;
                    specializeConfig?: ...;
                };
            };
        }
        • Optional ReadonlyabstractInterpretation?: {
              dataFrame?: { maxColNames?: ...; readLoadedData?: ... };
              followCalls?: boolean;
              wideningThreshold?: number;
          }
        • Optional ReadonlydefaultEngine?: "r-shell" | "tree-sitter"

          The default engine to use. If undefined, an arbitrary one from engines is used.

        • Optional ReadonlydefaultPlugins?: (string | [(...)?, (...)?] | undefined)[]
        • Optional Readonlyengines?: (
              | {
                  lax?: ...;
                  treeSitterWasmPath?: ...;
                  type?: ...;
                  wasmPath?: ...;
                  [key: ...]: ...;
              }
              | { rPath?: ...; type?: ...; [key: ...]: ... }
              | undefined
          )[]

          Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

        • Optional Readonlygas?: {
              countedCheckEvery?: number;
              features?: { [key: ...]: ... };
              heapProvider?: () => ...;
              thresholds?: {
                  memory?: ...;
                  steps?: ...;
                  timeMs?: ...;
                  vertices?: ...;
                  [key: ...]: ...;
              };
              [key: string]: unknown;
          }

          Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

          • Optional ReadonlycountedCheckEvery?: number

            How many calls one accounting of an armed budget covers (default DefaultCountedCheckEvery). Trades how far a run may overshoot a bound against what the guard costs per node: 1 counts exactly, larger counts coarsely.

          • Optional Readonlyfeatures?: { [key: ...]: ... }

            Per-feature sensitivity factors. Missing or 0 disables checking with zero overhead.

          • Optional ReadonlyheapProvider?: () => ...

            Custom heap statistics source (programmatic configs only), overriding the built-in v8/performance.memory detection. Return undefined to skip the memory check.

          • Optional Readonlythresholds?: { memory?: ...; steps?: ...; timeMs?: ...; vertices?: ...; [key: ...]: ... }

            Thresholds scaled by each feature factor before comparison, optionally bounded per feature (see GasThresholdSpec).

            • Optional Readonlymemory?: ...

              Heap-usage fraction thresholds (0-1, before factor scaling).

            • Optional Readonlysteps?: ...

              Processed-AST-node thresholds, counted rather than sampled. Only read by keys that arm a budget (i.e. GasFeatureKey.Dataflow); absent means unbounded.

            • Optional ReadonlytimeMs?: ...

              Elapsed analysis time thresholds in milliseconds (before factor scaling).

            • Optional Readonlyvertices?: ...

              Created-dataflow-vertex thresholds, counted like FlowrGasThresholds.steps.

        • Optional ReadonlyignoreLoadCalls?: boolean
        • Optional ReadonlyignoreSourceCalls?: boolean
        • Optional Readonlyincremental?: { alwaysIncremental?: boolean; parsing?: { activated?: ...; heuristics?: ... } }
        • Optional ReadonlyinputSources?: {
              cmdline?: (...)[];
              const?: (...)[];
              dconst?: (...)[];
              ffi?: (...)[];
              file?: (...)[];
              glob?: (...)[];
              lang?: (...)[];
              linkedEntryPoints?: (...)[];
              linkedObjects?: (...)[];
              narrowing?: (...)[];
              net?: (...)[];
              options?: (...)[];
              param?: (...)[];
              pure?: (...)[];
              rand?: (...)[];
              scope?: (...)[];
              system?: (...)[];
              tempfile?: (...)[];
              unknown?: (...)[];
              user?: (...)[];
          }

          Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

          • Optionalcmdline?: (...)[]
          • Optionalconst?: (...)[]
          • Optionaldconst?: (...)[]
          • Optionalffi?: (...)[]
          • Optionalfile?: (...)[]
          • Optionalglob?: (...)[]
          • Optionallang?: (...)[]
          • OptionallinkedEntryPoints?: (...)[]

            Calls that hand a function to a framework, which then binds linkedObjects to its parameters by position.

          • OptionallinkedObjects?: (...)[]

            Objects provided by a framework rather than by the code itself, like shiny's input.

          • Optionalnarrowing?: (...)[]

            Functions whose result is bounded by one of their arguments (classified by that argument alone).

          • Optionalnet?: (...)[]
          • Optionaloptions?: (...)[]
          • Optionalparam?: (...)[]
          • Optionalpure?: (...)[]

            Functions which are considered to be pure (i.e., deterministic, trusted, safe, idempotent on the lub of the input types)

          • Optionalrand?: (...)[]
          • Optionalscope?: (...)[]
          • Optionalsystem?: (...)[]
          • Optionaltempfile?: (...)[]
          • Optionalunknown?: (...)[]
          • Optionaluser?: (...)[]
        • Optional Readonlylinter?: { disabledRules?: (...)[] }
        • Optional ReadonlylogLevel?: "debug" | "silly" | "trace" | "info" | "warn" | "error" | "fatal"
        • Optional Readonlyproject?: {
              assumeImplicitEcho?: boolean;
              basePackages?: (...)[];
              classification?: {
                  notebookExtensions?: ...;
                  shinyDescriptionTypes?: ...;
                  shinyEntryFiles?: ...;
                  shinyUsagePattern?: ...;
              };
              discovery?: { full?: ...; ignore?: ...; perKind?: ... };
              failOnInaccessiblePath?: boolean;
              implicitSources?: (...)[];
              resolveUnknownPathsOnDisk?: boolean;
              useProjectType?: ProjectKind;
          }
          • OptionalassumeImplicitEcho?: boolean

            Whether the top level's visible results count as an output (the print category); off by default for a ProjectKind.Package, whose top level runs at install time.

          • OptionalbasePackages?: (...)[]

            The packages considered part of R itself; if unset, flowR derives them (for the assumed R version) from the signature database via baseRPackages.

          • Optionalclassification?: {
                notebookExtensions?: ...;
                shinyDescriptionTypes?: ...;
                shinyEntryFiles?: ...;
                shinyUsagePattern?: ...;
            }
            • OptionalnotebookExtensions?: ...

              File extensions marking a notebook (default ipynb, rmd, rmarkdown, qmd, rnw).

            • OptionalshinyDescriptionTypes?: ...

              DESCRIPTION Type: values that mark a shiny app (default shiny, shiny-app, shinyapp).

            • OptionalshinyEntryFiles?: ...

              File names a shiny app is assembled from (default app.R, ui.R, server.R, global.R).

            • OptionalshinyUsagePattern?: ...
          • Optionaldiscovery?: { full?: ...; ignore?: ...; perKind?: ... }
          • OptionalfailOnInaccessiblePath?: boolean
          • OptionalimplicitSources?: (...)[]
          • OptionalresolveUnknownPathsOnDisk?: boolean
          • OptionaluseProjectType?: ProjectKind
        • Optional Readonlyrepl?: {
              autoUseFileProtocol?: boolean;
              dfProcessorHeat?: boolean;
              hints?: boolean;
              plugins?: (...)[];
              queryStats?: boolean;
              quickStats?: boolean;
              showPlugins?: boolean;
          }
          • OptionalautoUseFileProtocol?: boolean

            Automatically use the file protocol for inputs that look like paths (default true)

          • OptionaldfProcessorHeat?: boolean
          • Optionalhints?: boolean

            Whether to show dim inline hints (e.g. :help) on the empty prompt; automatically disabled on non-interactive terminals

          • Optionalplugins?: (...)[]
          • OptionalqueryStats?: boolean

            Whether :query closes with the line stating how long the queries took (default true, :query* never prints it)

          • OptionalquickStats?: boolean
          • OptionalshowPlugins?: boolean

            Whether :version grays out the plugins that did not activate during the last analysis (default false)

        • Optional Readonlysemantics?: { environment?: { overwriteBuiltIns?: ... } }
        • Optional Readonlysolver?: {
              assumeAttachedPackages?: (...)[];
              evalStrings?: boolean;
              instrument?: { dataflowExtractors?: ... };
              resolveSource?: {
                  applyReplacements?: ...;
                  assumeFilesExist?: ...;
                  dropPaths?: ...;
                  ignoreCapitalization?: ...;
                  inferWorkingDirectory?: ...;
                  repeatedSourceLimit?: ...;
                  searchPath?: ...;
                  [key: ...]: ...;
              };
              sigdb?: {
                  additionalPaths?: ...;
                  assumedRVersion?: ...;
                  autoSync?: ...;
                  blobCacheBudgetMb?: ...;
                  downloadRepo?: ...;
                  eagerlyLoad?: ...;
                  eagerlyLoadExports?: ...;
                  enabled?: ...;
                  installedLibrary?: ...;
                  linkBaseR?: ...;
                  linkBaseRCalls?: ...;
                  linkDescriptionDependencies?: ...;
                  linkPackageCalls?: ...;
                  loadProjectDependencies?: ...;
                  versionOverrides?: ...;
                  versionSelection?: ...;
                  warmInBackground?: ...;
              };
              slicer?: { autoExtend?: ...; threshold?: ... };
              trackEnvironments?: boolean;
              transitiveSideEffectRounds?: number;
              variables?: VariableResolve;
              versionManagement?: { linkedVersionGroups?: ... };
          }
          • Optional ReadonlyassumeAttachedPackages?: (...)[]
          • Optional ReadonlyevalStrings?: boolean
          • Optional Readonlyinstrument?: { dataflowExtractors?: ... }
            • OptionaldataflowExtractors?: ...

              Modify the dataflow processors used during analysis; keep every processor correctness requires present. May affect precision/performance arbitrarily -- prefer decorating existing processors over replacing them.

          • Optional ReadonlyresolveSource?: {
                applyReplacements?: ...;
                assumeFilesExist?: ...;
                dropPaths?: ...;
                ignoreCapitalization?: ...;
                inferWorkingDirectory?: ...;
                repeatedSourceLimit?: ...;
                searchPath?: ...;
                [key: ...]: ...;
            }
            • Optional ReadonlyapplyReplacements?: ...

              Regex replacements to try against a sourced file's candidate name, tried in order alongside the original name, e.g. { '.*\\.R$': 'main.R' } makes source("foo bar.R") also try main.R.

            • Optional ReadonlyassumeFilesExist?: ...
            • Optional ReadonlydropPaths?: ...
            • Optional ReadonlyignoreCapitalization?: ...
            • Optional ReadonlyinferWorkingDirectory?: ...
            • Optional ReadonlyrepeatedSourceLimit?: ...
            • Optional ReadonlysearchPath?: ...
          • Optional Readonlysigdb?: {
                additionalPaths?: ...;
                assumedRVersion?: ...;
                autoSync?: ...;
                blobCacheBudgetMb?: ...;
                downloadRepo?: ...;
                eagerlyLoad?: ...;
                eagerlyLoadExports?: ...;
                enabled?: ...;
                installedLibrary?: ...;
                linkBaseR?: ...;
                linkBaseRCalls?: ...;
                linkDescriptionDependencies?: ...;
                linkPackageCalls?: ...;
                loadProjectDependencies?: ...;
                versionOverrides?: ...;
                versionSelection?: ...;
                warmInBackground?: ...;
            }
            • Optional ReadonlyadditionalPaths?: ...
            • Optional ReadonlyassumedRVersion?: ...

              R version assumed when resolving versioned (base-R) exports: a pin, or "auto" to detect the installed R (falling back to DefaultAssumedRVersion if none, e.g. tree-sitter). See resolveAssumedRVersion.

            • Optional ReadonlyautoSync?: ...
            • Optional ReadonlyblobCacheBudgetMb?: ...

              How many MiB of decoded package blobs every open bundle may hold together; a bigger budget re-reads and re-parses less, a smaller one keeps less in memory (default 16).

            • Optional ReadonlydownloadRepo?: ...
            • Optional ReadonlyeagerlyLoad?: ...
            • Optional ReadonlyeagerlyLoadExports?: ...
            • Optional Readonlyenabled?: ...
            • Optional ReadonlyinstalledLibrary?: ...

              Recovering a package no signature database knows (e.g. maptools) from its local install: DESCRIPTION states the version, NAMESPACE the exports. Opt-in, since it reads outside the analyzed project.

            • Optional ReadonlylinkBaseR?: ...

              Eagerly attach base-R namespaces (from a signature database) so bare base calls resolve without library() (default false; changes every analysis; needs a base-R signature database).

            • Optional ReadonlylinkBaseRCalls?: ...

              Add a lightweight Reads edge from a bare base-R call to its signature-database function vertex (built-in:pkg:fn); base-R qualification stays edge-free unless this is on (default false; adds edges to every base call).

            • Optional ReadonlylinkDescriptionDependencies?: ...

              Eagerly attach the namespaces of the project's declared DESCRIPTION dependencies (Imports/Depends) so their exports resolve without an explicit library() (default false; changes every analysis; needs a signature database resolving the declared packages).

            • Optional ReadonlylinkPackageCalls?: ...

              Add a lightweight Reads edge from a resolved package call (pkg::fn/attached export) to its signature-database function vertex (default false).

            • Optional ReadonlyloadProjectDependencies?: ...
            • Optional ReadonlyversionOverrides?: ...

              Force an exact version for specific packages (mapping a package name to a version), overriding both the project constraint and the versionSelection policy; a version missing from the database falls back with a warning (default {}).

            • Optional ReadonlyversionSelection?: ...
            • Optional ReadonlywarmInBackground?: ...

              Decompress the hot shards (base + most-downloaded) in a background task on startup, so the first library() lookup is warm (default false; useful for long-running servers/REPLs, not one-shot runs).

          • Optionalslicer?: { autoExtend?: ...; threshold?: ... }
          • Optional ReadonlytrackEnvironments?: boolean
          • Optional ReadonlytransitiveSideEffectRounds?: number
          • Optional Readonlyvariables?: VariableResolve
          • Optional ReadonlyversionManagement?: { linkedVersionGroups?: ... }
        • Optional ReadonlyspecializeConfig?: {
              notebook?: {
                  abstractInterpretation?: ...;
                  defaultEngine?: ...;
                  defaultPlugins?: ...;
                  engines?: ...;
                  gas?: ...;
                  ignoreLoadCalls?: ...;
                  ignoreSourceCalls?: ...;
                  incremental?: ...;
                  inherit?: ...;
                  inputSources?: ...;
                  linter?: ...;
                  logLevel?: ...;
                  project?: ...;
                  repl?: ...;
                  semantics?: ...;
                  solver?: ...;
                  specializeConfig?: ...;
              };
              package?: {
                  abstractInterpretation?: ...;
                  defaultEngine?: ...;
                  defaultPlugins?: ...;
                  engines?: ...;
                  gas?: ...;
                  ignoreLoadCalls?: ...;
                  ignoreSourceCalls?: ...;
                  incremental?: ...;
                  inherit?: ...;
                  inputSources?: ...;
                  linter?: ...;
                  logLevel?: ...;
                  project?: ...;
                  repl?: ...;
                  semantics?: ...;
                  solver?: ...;
                  specializeConfig?: ...;
              };
              project?: {
                  abstractInterpretation?: ...;
                  defaultEngine?: ...;
                  defaultPlugins?: ...;
                  engines?: ...;
                  gas?: ...;
                  ignoreLoadCalls?: ...;
                  ignoreSourceCalls?: ...;
                  incremental?: ...;
                  inherit?: ...;
                  inputSources?: ...;
                  linter?: ...;
                  logLevel?: ...;
                  project?: ...;
                  repl?: ...;
                  semantics?: ...;
                  solver?: ...;
                  specializeConfig?: ...;
              };
              script?: {
                  abstractInterpretation?: ...;
                  defaultEngine?: ...;
                  defaultPlugins?: ...;
                  engines?: ...;
                  gas?: ...;
                  ignoreLoadCalls?: ...;
                  ignoreSourceCalls?: ...;
                  incremental?: ...;
                  inherit?: ...;
                  inputSources?: ...;
                  linter?: ...;
                  logLevel?: ...;
                  project?: ...;
                  repl?: ...;
                  semantics?: ...;
                  solver?: ...;
                  specializeConfig?: ...;
              };
              "shiny-app"?: {
                  abstractInterpretation?: ...;
                  defaultEngine?: ...;
                  defaultPlugins?: ...;
                  engines?: ...;
                  gas?: ...;
                  ignoreLoadCalls?: ...;
                  ignoreSourceCalls?: ...;
                  incremental?: ...;
                  inherit?: ...;
                  inputSources?: ...;
                  linter?: ...;
                  logLevel?: ...;
                  project?: ...;
                  repl?: ...;
                  semantics?: ...;
                  solver?: ...;
                  specializeConfig?: ...;
              };
              unknown?: {
                  abstractInterpretation?: ...;
                  defaultEngine?: ...;
                  defaultPlugins?: ...;
                  engines?: ...;
                  gas?: ...;
                  ignoreLoadCalls?: ...;
                  ignoreSourceCalls?: ...;
                  incremental?: ...;
                  inherit?: ...;
                  inputSources?: ...;
                  linter?: ...;
                  logLevel?: ...;
                  project?: ...;
                  repl?: ...;
                  semantics?: ...;
                  solver?: ...;
                  specializeConfig?: ...;
              };
          }

          Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

          • Optionalnotebook?: {
                abstractInterpretation?: ...;
                defaultEngine?: ...;
                defaultPlugins?: ...;
                engines?: ...;
                gas?: ...;
                ignoreLoadCalls?: ...;
                ignoreSourceCalls?: ...;
                incremental?: ...;
                inherit?: ...;
                inputSources?: ...;
                linter?: ...;
                logLevel?: ...;
                project?: ...;
                repl?: ...;
                semantics?: ...;
                solver?: ...;
                specializeConfig?: ...;
            }
            • Optional ReadonlyabstractInterpretation?: ...
            • Optional ReadonlydefaultEngine?: ...

              The default engine to use. If undefined, an arbitrary one from engines is used.

            • Optional ReadonlydefaultPlugins?: ...
            • Optional Readonlyengines?: ...

              Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

            • Optional Readonlygas?: ...

              Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

            • Optional ReadonlyignoreLoadCalls?: ...
            • Optional ReadonlyignoreSourceCalls?: ...
            • Optional Readonlyincremental?: ...
            • Optional Readonlyinherit?: ...
            • Optional ReadonlyinputSources?: ...

              Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

            • Optional Readonlylinter?: ...
            • Optional ReadonlylogLevel?: ...
            • Optional Readonlyproject?: ...
            • Optional Readonlyrepl?: ...
            • Optional Readonlysemantics?: ...
            • Optional Readonlysolver?: ...
            • Optional ReadonlyspecializeConfig?: ...

              Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

          • Optionalpackage?: {
                abstractInterpretation?: ...;
                defaultEngine?: ...;
                defaultPlugins?: ...;
                engines?: ...;
                gas?: ...;
                ignoreLoadCalls?: ...;
                ignoreSourceCalls?: ...;
                incremental?: ...;
                inherit?: ...;
                inputSources?: ...;
                linter?: ...;
                logLevel?: ...;
                project?: ...;
                repl?: ...;
                semantics?: ...;
                solver?: ...;
                specializeConfig?: ...;
            }
            • Optional ReadonlyabstractInterpretation?: ...
            • Optional ReadonlydefaultEngine?: ...

              The default engine to use. If undefined, an arbitrary one from engines is used.

            • Optional ReadonlydefaultPlugins?: ...
            • Optional Readonlyengines?: ...

              Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

            • Optional Readonlygas?: ...

              Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

            • Optional ReadonlyignoreLoadCalls?: ...
            • Optional ReadonlyignoreSourceCalls?: ...
            • Optional Readonlyincremental?: ...
            • Optional Readonlyinherit?: ...
            • Optional ReadonlyinputSources?: ...

              Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

            • Optional Readonlylinter?: ...
            • Optional ReadonlylogLevel?: ...
            • Optional Readonlyproject?: ...
            • Optional Readonlyrepl?: ...
            • Optional Readonlysemantics?: ...
            • Optional Readonlysolver?: ...
            • Optional ReadonlyspecializeConfig?: ...

              Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

          • Optionalproject?: {
                abstractInterpretation?: ...;
                defaultEngine?: ...;
                defaultPlugins?: ...;
                engines?: ...;
                gas?: ...;
                ignoreLoadCalls?: ...;
                ignoreSourceCalls?: ...;
                incremental?: ...;
                inherit?: ...;
                inputSources?: ...;
                linter?: ...;
                logLevel?: ...;
                project?: ...;
                repl?: ...;
                semantics?: ...;
                solver?: ...;
                specializeConfig?: ...;
            }
            • Optional ReadonlyabstractInterpretation?: ...
            • Optional ReadonlydefaultEngine?: ...

              The default engine to use. If undefined, an arbitrary one from engines is used.

            • Optional ReadonlydefaultPlugins?: ...
            • Optional Readonlyengines?: ...

              Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

            • Optional Readonlygas?: ...

              Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

            • Optional ReadonlyignoreLoadCalls?: ...
            • Optional ReadonlyignoreSourceCalls?: ...
            • Optional Readonlyincremental?: ...
            • Optional Readonlyinherit?: ...
            • Optional ReadonlyinputSources?: ...

              Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

            • Optional Readonlylinter?: ...
            • Optional ReadonlylogLevel?: ...
            • Optional Readonlyproject?: ...
            • Optional Readonlyrepl?: ...
            • Optional Readonlysemantics?: ...
            • Optional Readonlysolver?: ...
            • Optional ReadonlyspecializeConfig?: ...

              Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

          • Optionalscript?: {
                abstractInterpretation?: ...;
                defaultEngine?: ...;
                defaultPlugins?: ...;
                engines?: ...;
                gas?: ...;
                ignoreLoadCalls?: ...;
                ignoreSourceCalls?: ...;
                incremental?: ...;
                inherit?: ...;
                inputSources?: ...;
                linter?: ...;
                logLevel?: ...;
                project?: ...;
                repl?: ...;
                semantics?: ...;
                solver?: ...;
                specializeConfig?: ...;
            }
            • Optional ReadonlyabstractInterpretation?: ...
            • Optional ReadonlydefaultEngine?: ...

              The default engine to use. If undefined, an arbitrary one from engines is used.

            • Optional ReadonlydefaultPlugins?: ...
            • Optional Readonlyengines?: ...

              Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

            • Optional Readonlygas?: ...

              Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

            • Optional ReadonlyignoreLoadCalls?: ...
            • Optional ReadonlyignoreSourceCalls?: ...
            • Optional Readonlyincremental?: ...
            • Optional Readonlyinherit?: ...
            • Optional ReadonlyinputSources?: ...

              Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

            • Optional Readonlylinter?: ...
            • Optional ReadonlylogLevel?: ...
            • Optional Readonlyproject?: ...
            • Optional Readonlyrepl?: ...
            • Optional Readonlysemantics?: ...
            • Optional Readonlysolver?: ...
            • Optional ReadonlyspecializeConfig?: ...

              Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

          • Optionalshiny-app?: {
                abstractInterpretation?: ...;
                defaultEngine?: ...;
                defaultPlugins?: ...;
                engines?: ...;
                gas?: ...;
                ignoreLoadCalls?: ...;
                ignoreSourceCalls?: ...;
                incremental?: ...;
                inherit?: ...;
                inputSources?: ...;
                linter?: ...;
                logLevel?: ...;
                project?: ...;
                repl?: ...;
                semantics?: ...;
                solver?: ...;
                specializeConfig?: ...;
            }
            • Optional ReadonlyabstractInterpretation?: ...
            • Optional ReadonlydefaultEngine?: ...

              The default engine to use. If undefined, an arbitrary one from engines is used.

            • Optional ReadonlydefaultPlugins?: ...
            • Optional Readonlyengines?: ...

              Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

            • Optional Readonlygas?: ...

              Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

            • Optional ReadonlyignoreLoadCalls?: ...
            • Optional ReadonlyignoreSourceCalls?: ...
            • Optional Readonlyincremental?: ...
            • Optional Readonlyinherit?: ...
            • Optional ReadonlyinputSources?: ...

              Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

            • Optional Readonlylinter?: ...
            • Optional ReadonlylogLevel?: ...
            • Optional Readonlyproject?: ...
            • Optional Readonlyrepl?: ...
            • Optional Readonlysemantics?: ...
            • Optional Readonlysolver?: ...
            • Optional ReadonlyspecializeConfig?: ...

              Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

          • Optionalunknown?: {
                abstractInterpretation?: ...;
                defaultEngine?: ...;
                defaultPlugins?: ...;
                engines?: ...;
                gas?: ...;
                ignoreLoadCalls?: ...;
                ignoreSourceCalls?: ...;
                incremental?: ...;
                inherit?: ...;
                inputSources?: ...;
                linter?: ...;
                logLevel?: ...;
                project?: ...;
                repl?: ...;
                semantics?: ...;
                solver?: ...;
                specializeConfig?: ...;
            }
            • Optional ReadonlyabstractInterpretation?: ...
            • Optional ReadonlydefaultEngine?: ...

              The default engine to use. If undefined, an arbitrary one from engines is used.

            • Optional ReadonlydefaultPlugins?: ...
            • Optional Readonlyengines?: ...

              Engines to use for interacting with R code (TreeSitterEngineConfig, RShellEngineConfig); empty means all available engines.

            • Optional Readonlygas?: ...

              Resource-usage guard (gas) configuration; disabled by default (every feature factor 0), enable by setting a feature's factor > 0. See FlowrGasConfig, ReadOnlyFlowrAnalyzerGasContext.

            • Optional ReadonlyignoreLoadCalls?: ...
            • Optional ReadonlyignoreSourceCalls?: ...
            • Optional Readonlyincremental?: ...
            • Optional Readonlyinherit?: ...
            • Optional ReadonlyinputSources?: ...

              Teaches the InputSourcesQuery|input-sources analysis further frameworks; entries are added to what flowR knows already. Usually set per ProjectKind via specializeConfig. See InputClassifierConfig.

            • Optional Readonlylinter?: ...
            • Optional ReadonlylogLevel?: ...
            • Optional Readonlyproject?: ...
            • Optional Readonlyrepl?: ...
            • Optional Readonlysemantics?: ...
            • Optional Readonlysolver?: ...
            • Optional ReadonlyspecializeConfig?: ...

              Overwrite (parts of) this configuration per ProjectKind; an entry may inherit another kind's overwrite first (own keys win). Resolve with FlowrConfig.forKind.

      Returns void