UNPKG

@eagleoutice/flowr

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

25 lines (24 loc) 1.42 kB
import { type OutputFormatter } from '../util/text/ansi'; import { type Queries, type QueryResults, type SupportedQueryTypes } from './query'; import { NodeId } from '../r-bridge/lang-4.x/ast/model/processing/node-id'; import type { AstIdMap, ParentInformation } from '../r-bridge/lang-4.x/ast/model/processing/decorate'; import type { ReadonlyFlowrAnalysisProvider } from '../project/flowr-analyzer'; /** * Converts call context query results to an ASCII representation */ export declare function asciiCallContext(formatter: OutputFormatter, results: QueryResults<'call-context'>['call-context'], idMap: AstIdMap<ParentInformation>): string; /** * Summarizes a list of node IDs, shortening the output if it is too long * @example * ```ts * summarizeIdsIfTooLong(markdownFormatter, ['id1', 'id2', 'id3']); * // returns 'id1, id2, id3' * summarizeIdsIfTooLong(markdownFormatter, [<array of many ids>]); * // returns 'id1, id2, id3, ... (see JSON)' with a tooltip containing the full JSON array * ``` */ export declare function summarizeIdsIfTooLong(formatter: OutputFormatter, ids: readonly NodeId[]): string; /** * Generates an ASCII summary of the given query results */ export declare function asciiSummaryOfQueryResult<S extends SupportedQueryTypes>(formatter: OutputFormatter, totalInMs: number, results: QueryResults<S>, analyzer: ReadonlyFlowrAnalysisProvider, queries: Queries<S>): Promise<string>;