@eagleoutice/flowr - v2.16.3
    Preparing search index...
    FOREIGN_FUNCTION_CALLS: {
        createSearch: () => FlowrSearchBuilder<
            "from-query",
            [],
            ParentInformation,
            FlowrSearchElements<ParentInformation, (...)[]>,
        >;
        info: {
            certainty: BestEffort;
            defaultConfig: () => { resolveValues: true };
            description: "Finds problems in `.Call`, `.C`, `.External`, and `.Fortran` calls: a missing or empty `PACKAGE`, calls into base or other packages, and undeclared packages. Routine and package names are resolved through variables.";
            name: "Foreign Function Calls";
            tags: readonly [CmdCheck, Bug, Robustness];
        };
        prettyPrint: {
            full: (r: ForeignFunctionCallsResult) => string;
            query: (r: ForeignFunctionCallsResult) => string;
        };
        processSearchResult: (
            _elements: FlowrSearchElements<
                ParentInformation,
                FlowrSearchElement<(...)>[],
            >,
            config: ForeignFunctionCallsConfig,
            data: ReadonlyFlowrAnalysisProvider<KnownParser>,
        ) => Promise<{ ".meta": { consideredCalls: ... }; results: (...)[] }>;
    } = ...

    Port of the R CMD check notes on foreign function calls (checking foreign function calls, from tools:::checkFF): a call of .C, .Fortran, .Call or .External naming its routine by a string without a PACKAGE argument in a package that loads no DLL with useDynLib, with an empty PACKAGE, or with a PACKAGE naming a base package, another package, or a package the DESCRIPTION does not declare. Unlike R CMD check, it recognizes the calls by what flowR knows about them (so a redefined .Call is ignored and base::.Call is not), resolves the routine and PACKAGE through variables, and accepts any DLL the NAMESPACE loads as PACKAGE. It does not check the registration of the routines, which needs the installed package.

    Type Declaration