@eagleoutice/flowr - v2.13.14
    Preparing search index...
    interface ConfigQuery {
        inspect?: readonly string[];
        reset?: boolean;
        type: "config";
        update?: {
            abstractInterpretation?: {
                dataFrame?: (...) | (...);
                wideningThreshold?: (...) | (...);
            };
            defaultEngine?: "r-shell"
            | "tree-sitter";
            defaultPlugins?: ((...) | (...) | (...))[];
            engines?: ((...) | (...) | (...))[];
            gas?: {
                features?: (...) | (...);
                heapProvider?: (...) | (...);
                thresholds?: (...) | (...);
                [key: string]: unknown;
            };
            ignoreLoadCalls?: boolean;
            ignoreSourceCalls?: boolean;
            incremental?: {
                alwaysIncremental?: (...)
                | (...)
                | (...);
                parsing?: (...) | (...);
            };
            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?: {
                basePackages?: (...)
                | (...);
                classification?: (...) | (...);
                discovery?: (...) | (...);
                failOnInaccessiblePath?: (...) | (...) | (...);
                implicitSources?: (...) | (...);
                resolveUnknownPathsOnDisk?: (...) | (...) | (...);
                useProjectType?: (...) | (...);
            };
            repl?: {
                autoUseFileProtocol?: (...)
                | (...)
                | (...);
                dfProcessorHeat?: (...) | (...) | (...);
                hints?: (...) | (...) | (...);
                plugins?: (...) | (...);
                queryStats?: (...) | (...) | (...);
                quickStats?: (...) | (...) | (...);
                showPlugins?: (...) | (...) | (...);
            };
            semantics?: { environment?: (...)
            | (...) };
            solver?: {
                evalStrings?: (...) | (...) | (...);
                instrument?: (...) | (...);
                resolveSource?: (...) | (...);
                sigdb?: (...) | (...);
                slicer?: (...) | (...);
                trackEnvironments?: (...) | (...) | (...);
                variables?: (...) | (...);
                versionManagement?: (...) | (...);
            };
            specializeConfig?: {
                notebook?: (...)
                | (...);
                package?: (...) | (...);
                project?: (...) | (...);
                script?: (...) | (...);
                "shiny-app"?: (...) | (...);
                unknown?: (...) | (...);
            };
            [key: string]: unknown;
        };
    }

    Hierarchy (View Summary)

    Index
    inspect?: readonly string[]

    a .-separated path to inspect (read) a single config value instead of dumping the whole config (repl: path, which also accepts a */** glob)

    reset?: boolean

    discard every runtime update made so far, reverting to the config the analyzer was created with (repl: +reset)

    type: "config"

    used to select the query type :)

    update?: {
        abstractInterpretation?: {
            dataFrame?: (...) | (...);
            wideningThreshold?: (...) | (...);
        };
        defaultEngine?: "r-shell"
        | "tree-sitter";
        defaultPlugins?: ((...) | (...) | (...))[];
        engines?: ((...) | (...) | (...))[];
        gas?: {
            features?: (...) | (...);
            heapProvider?: (...) | (...);
            thresholds?: (...) | (...);
            [key: string]: unknown;
        };
        ignoreLoadCalls?: boolean;
        ignoreSourceCalls?: boolean;
        incremental?: {
            alwaysIncremental?: (...)
            | (...)
            | (...);
            parsing?: (...) | (...);
        };
        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?: {
            basePackages?: (...)
            | (...);
            classification?: (...) | (...);
            discovery?: (...) | (...);
            failOnInaccessiblePath?: (...) | (...) | (...);
            implicitSources?: (...) | (...);
            resolveUnknownPathsOnDisk?: (...) | (...) | (...);
            useProjectType?: (...) | (...);
        };
        repl?: {
            autoUseFileProtocol?: (...)
            | (...)
            | (...);
            dfProcessorHeat?: (...) | (...) | (...);
            hints?: (...) | (...) | (...);
            plugins?: (...) | (...);
            queryStats?: (...) | (...) | (...);
            quickStats?: (...) | (...) | (...);
            showPlugins?: (...) | (...) | (...);
        };
        semantics?: { environment?: (...)
        | (...) };
        solver?: {
            evalStrings?: (...) | (...) | (...);
            instrument?: (...) | (...);
            resolveSource?: (...) | (...);
            sigdb?: (...) | (...);
            slicer?: (...) | (...);
            trackEnvironments?: (...) | (...) | (...);
            variables?: (...) | (...);
            versionManagement?: (...) | (...);
        };
        specializeConfig?: {
            notebook?: (...)
            | (...);
            package?: (...) | (...);
            project?: (...) | (...);
            script?: (...) | (...);
            "shiny-app"?: (...) | (...);
            unknown?: (...) | (...);
        };
        [key: string]: unknown;
    }

    Type Declaration

    • [key: string]: unknown
    • Optional ReadonlyabstractInterpretation?: { dataFrame?: (...) | (...); wideningThreshold?: (...) | (...) }

      Configuration options for abstract interpretation

      • Optional ReadonlydataFrame?: (...) | (...)

        The configuration of the shape inference for data frames

      • Optional ReadonlywideningThreshold?: (...) | (...)

        The threshold for the number of visitations of a node at which widening should be performed to ensure the termination of the fixpoint iteration

    • Optional ReadonlydefaultEngine?: "r-shell" | "tree-sitter"

      The default engine to use for interacting with R code. If this is undefined, an arbitrary engine from engines will be used.

    • Optional ReadonlydefaultPlugins?: ((...) | (...) | (...))[]

      Plugins to load by default when creating a new FlowrAnalyzer

    • Optional Readonlyengines?: ((...) | (...) | (...))[]

      The engines to use for interacting with R code. Currently, supports TreeSitterEngineConfig and RShellEngineConfig. An empty array means all available engines will be used.

    • Optional Readonlygas?: {
          features?: (...) | (...);
          heapProvider?: (...) | (...);
          thresholds?: (...) | (...);
          [key: string]: unknown;
      }

      Resource-usage guard (gas) configuration. Gas checks are disabled by default (all feature factors are 0). Set a feature factor > 0 to enable checking for that feature.

      • Optional Readonlyfeatures?: (...) | (...)

        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 detection (v8 module, then Chromium's performance.memory). Return undefined to skip the memory check.

      • Optional Readonlythresholds?: (...) | (...)

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

    • Optional ReadonlyignoreLoadCalls?: boolean

      Whether load calls should be ignored, causing processLoadCall's behavior to be skipped

    • Optional ReadonlyignoreSourceCalls?: boolean

      Whether source calls should be ignored, causing processSourceCall's behavior to be skipped

    • Optional Readonlyincremental?: { alwaysIncremental?: (...) | (...) | (...); parsing?: (...) | (...) }
      • Optional ReadonlyalwaysIncremental?: (...) | (...) | (...)

        Always take the incremental path, regardless of heuristics

      • Optional Readonlyparsing?: (...) | (...)
    • 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 (and with it the problematic-inputs linter) about further frameworks. Everything here is added to what flowR already knows, so a shiny app keeps its input even when you declare your own. Usually set per ProjectKind via specializeConfig.

      InputClassifierConfig - for what the entries mean

      • 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?: (...) | (...) }

      Linter configuration, usually specialized per ProjectKind via FlowrConfig.specializeConfig.

      • Optional ReadonlydisabledRules?: (...) | (...)

        Rule names excluded from the default rule set (a rule requested explicitly still runs).

    • Optional ReadonlylogLevel?: "debug" | "silly" | "trace" | "info" | "warn" | "error" | "fatal"
    • Optional Readonlyproject?: {
          basePackages?: (...) | (...);
          classification?: (...) | (...);
          discovery?: (...) | (...);
          failOnInaccessiblePath?: (...) | (...) | (...);
          implicitSources?: (...) | (...);
          resolveUnknownPathsOnDisk?: (...) | (...) | (...);
          useProjectType?: (...) | (...);
      }
      • OptionalbasePackages?: (...) | (...)

        The packages considered part of R itself, used e.g. by the project query to classify dependencies. If unset, flowR derives them (for the assumed R version) from the signature database via baseRPackages.

      • Optionalclassification?: (...) | (...)

        Overrides for the signals flowR uses to classify the ProjectKind; unset fields keep the built-in defaults.

      • Optionaldiscovery?: (...) | (...)

        Scoping options for the default project discovery.

      • OptionalfailOnInaccessiblePath?: (...) | (...) | (...)

        Whether a directory that cannot be traversed during file discovery (e.g. due to permissions) aborts the analysis; when false (the default) such paths are logged and skipped.

      • OptionalimplicitSources?: (...) | (...)

        Files a framework loads on its own, without any source() call (e.g. global.R in a shiny app), in load order. Entries are case-insensitive globs (R/*.R) matched against the path, a plain name matches any file with that name; entries matching nothing are warned about. Usually set per ProjectKind via FlowrConfig.specializeConfig.

      • OptionalresolveUnknownPathsOnDisk?: (...) | (...) | (...)

        Whether to resolve unknown paths loaded by the r project disk when trying to source/analyze files

      • OptionaluseProjectType?: (...) | (...)

        Overwrite the ProjectKind flowR would otherwise infer from the analyzed files, e.g. when auto-detection guesses wrong.

    • Optional Readonlyrepl?: {
          autoUseFileProtocol?: (...) | (...) | (...);
          dfProcessorHeat?: (...) | (...) | (...);
          hints?: (...) | (...) | (...);
          plugins?: (...) | (...);
          queryStats?: (...) | (...) | (...);
          quickStats?: (...) | (...) | (...);
          showPlugins?: (...) | (...) | (...);
      }

      Configuration options for the REPL

      • OptionalautoUseFileProtocol?: (...) | (...) | (...)

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

      • OptionaldfProcessorHeat?: (...) | (...) | (...)

        This instruments the dataflow processors to count how often each processor is called

      • Optionalhints?: (...) | (...) | (...)

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

      • Optionalplugins?: (...) | (...)

        Plugins to load in REPL mode

      • OptionalqueryStats?: (...) | (...) | (...)

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

      • OptionalquickStats?: (...) | (...) | (...)

        Whether to show quick stats in the REPL after each evaluation

      • OptionalshowPlugins?: (...) | (...) | (...)

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

    • Optional Readonlysemantics?: { environment?: (...) | (...) }

      Configure language semantics and how flowR handles them

      • Optional Readonlyenvironment?: (...) | (...)

        Semantics regarding the handling of the environment

    • Optional Readonlysolver?: {
          evalStrings?: (...) | (...) | (...);
          instrument?: (...) | (...);
          resolveSource?: (...) | (...);
          sigdb?: (...) | (...);
          slicer?: (...) | (...);
          trackEnvironments?: (...) | (...) | (...);
          variables?: (...) | (...);
          versionManagement?: (...) | (...);
      }

      How to resolve constants, constraints, cells, …

      • Optional ReadonlyevalStrings?: (...) | (...) | (...)

        Should we include eval(parse(text="...")) calls in the dataflow graph?

      • Optional Readonlyinstrument?: (...) | (...)

        These keys are only intended for use within code, allowing to instrument the dataflow analyzer!

      • Optional ReadonlyresolveSource?: (...) | (...)

        If lax source calls are active, flowR searches for sourced files much more freely, based on the configurations you give it. This option is only in effect if ignoreSourceCalls is set to false.

      • Optional Readonlysigdb?: (...) | (...)

        Resolving library()/use() exports from a signature database (e.g. the bundled flowr-sigdb).

      • Optionalslicer?: (...) | (...)

        The configuration for flowR's slicer

      • Optional ReadonlytrackEnvironments?: (...) | (...) | (...)

        Track user-created environments (new.env(), assign(..., envir=e), get(..., envir=e), local({}, envir=e), e$x <- v, attach(e)) with precise per-variable envState. When disabled all envir-style calls fall through to the conservative global treatment.

      • Optional Readonlyvariables?: (...) | (...)

        How to resolve variables and their values

      • Optional ReadonlyversionManagement?: (...) | (...)

        Policies for reasoning about dependency versions (independent of how the signature database is loaded).

    • Optional ReadonlyspecializeConfig?: {
          notebook?: (...) | (...);
          package?: (...) | (...);
          project?: (...) | (...);
          script?: (...) | (...);
          "shiny-app"?: (...) | (...);
          unknown?: (...) | (...);
      }

      Overwrite (parts of) this configuration depending on the ProjectKind flowR detects for the project, e.g. to give a shiny app its implicit sources. An entry may inherit another kind's overwrite (merged first, with the entry's own keys winning) to avoid repeating it. Resolve it with FlowrConfig.forKind.