UNPKG

@eagleoutice/flowr-dev

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

28 lines (27 loc) 1.67 kB
import { FlowrAnalyzerPackageVersionsPlugin } from './flowr-analyzer-package-versions-plugin'; import { SemVer } from 'semver'; import type { FlowrAnalyzerContext } from '../../context/flowr-analyzer-context'; import { FlowrRProjectFile, FlowrUvrManifestFile } from '../file-plugins/files/flowr-manifest-files'; /** * Extracts the project metadata and the declared dependencies from a project manifest. The name is contributed * without a namespace: such a project is no package, so `a::b` must not resolve against it. */ declare abstract class FlowrAnalyzerMetaManifestFilePlugin extends FlowrAnalyzerPackageVersionsPlugin { readonly version: SemVer; /** the manifest flavor this plugin reads, the others are left to their own plugin */ protected abstract readonly reads: abstract new (...args: never[]) => object; process(ctx: FlowrAnalyzerContext): void; } /** Reads an rv `rproject.toml`. */ export declare class FlowrAnalyzerMetaRProjectFilePlugin extends FlowrAnalyzerMetaManifestFilePlugin { readonly name = "flowr-analyzer-meta-rproject-file-plugin"; readonly description = "Extracts project meta information and dependencies from an rproject.toml."; protected readonly reads: typeof FlowrRProjectFile; } /** Reads a uvr `uvr.toml`, whose `[dev-dependencies]` land in `suggests`. */ export declare class FlowrAnalyzerMetaUvrManifestFilePlugin extends FlowrAnalyzerMetaManifestFilePlugin { readonly name = "flowr-analyzer-meta-uvr-manifest-file-plugin"; readonly description = "Extracts project meta information and dependencies from a uvr.toml."; protected readonly reads: typeof FlowrUvrManifestFile; } export {};