@eagleoutice/flowr-dev
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
26 lines (25 loc) • 1.54 kB
TypeScript
import { FlowrAnalyzerFilePlugin } from './flowr-analyzer-file-plugin';
import { SemVer } from 'semver';
import type { PathLike } from 'fs';
import type { FlowrAnalyzerContext } from '../../context/flowr-analyzer-context';
import type { FlowrFileProvider } from '../../context/flowr-file';
/** `Rprofile.site` is the site-wide, `.Rprofile` the user/project profile. */
export declare const RprofileFilePattern: RegExp;
/** `.Renviron` is the user/project environment file, `Renviron.site` the site-wide one. */
export declare const RenvironFilePattern: RegExp;
/**
* Marks R startup files: profiles (`.Rprofile`, `Rprofile.site`) are R source, so they get
* {@link FileRole.Startup} and {@link FileRole.Source}; environment files (`.Renviron`, `Renviron.site`) hold
* `KEY=value` definitions rather than R code, so they only get {@link FileRole.Environment}.
* The {@link FlowrAnalyzerLoadingOrderRprofilePlugin} moves the profile files to the front of the loading order.
*/
export declare class FlowrAnalyzerRprofileFilePlugin extends FlowrAnalyzerFilePlugin {
readonly name = "flowr-analyzer-rprofile-file-plugin";
readonly description = "Marks R startup files (.Rprofile, Rprofile.site, .Renviron, Renviron.site).";
readonly version: SemVer;
private readonly profilePattern;
private readonly environPattern;
constructor(profilePattern?: RegExp, environPattern?: RegExp);
applies(file: PathLike): boolean;
process(_ctx: FlowrAnalyzerContext, file: FlowrFileProvider): [FlowrFileProvider, true];
}