@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
57 lines (56 loc) • 2.23 kB
TypeScript
import type { ReplCodeCommand, ReplCommand } from './repl-main';
import { scripts } from '../../common/scripts-info';
export declare const helpCommand: ReplCommand;
/**
* All commands that should be available in the REPL.
*/
declare const _commands: {
readonly help: ReplCommand;
readonly quit: ReplCommand;
readonly version: ReplCommand;
readonly execute: ReplCommand;
readonly parse: ReplCodeCommand;
readonly normalize: ReplCodeCommand;
readonly 'normalize*': ReplCodeCommand;
readonly 'normalize#': ReplCodeCommand;
readonly dataflow: ReplCodeCommand;
readonly 'dataflow*': ReplCodeCommand;
readonly dataflowsimple: ReplCodeCommand;
readonly 'dataflowsimple*': ReplCodeCommand;
readonly dataflowascii: ReplCodeCommand;
readonly dataflowsilent: ReplCodeCommand;
readonly controlflow: ReplCodeCommand;
readonly 'controlflow*': ReplCodeCommand;
readonly controlflowbb: ReplCodeCommand;
readonly 'controlflowbb*': ReplCodeCommand;
readonly query: ReplCodeCommand;
readonly 'query*': ReplCodeCommand;
};
export type ReplCommandNames = keyof typeof _commands | keyof typeof scripts;
/**
* Retrieve all REPL commands (including those generated from master scripts)
*/
export declare function getReplCommands(): Record<string, ReplCommand | ReplCodeCommand>;
/**
* The names of all commands including their aliases (but without the leading `:`)
*/
export declare function getCommandNames(): string[];
/**
* Get the command for a given command name or alias.
* @param command - The name of the command (without the leading `:`)
*/
export declare function getCommand(command: string): ReplCodeCommand | ReplCommand | undefined;
/**
* Formats the given argument name as a command line option (with single or double dashes).
*/
export declare function asOptionName(argument: string): string;
/**
* Retrieve the length of the longest command name (including star and brackets if applicable)
*/
export declare function longestCommandName(): number;
/**
* Pad the given command string to the length of the longest command name plus two spaces.
* @see {@link longestCommandName}
*/
export declare function padCmd<T>(string: T): string;
export {};