@eagleoutice/flowr
Version:
Static Dataflow Analyzer and Program Slicer for the R Programming Language
120 lines • 10.4 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.WriteFunctions = void 0;
const function_info_1 = require("./function-info");
const OutputRedirects = [
{ type: 'link-to-last-call', callName: 'sink', attachLinkInfo: { argIdx: 0, argName: 'file', when: function_info_1.DependencyInfoLinkConstraint.IfUnknown, resolveValue: true } }
];
exports.WriteFunctions = [
{ package: 'base', name: 'save', argName: 'file', resolveValue: true },
{ package: 'base', name: 'save.image', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'base', name: 'write', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'base', name: 'dput', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'base', name: 'dump', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'utils', name: 'write.table', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'utils', name: 'write.csv', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'base', name: 'saveRDS', argIdx: 1, argName: 'file', resolveValue: true },
{
package: 'base',
name: 'try',
linkTo: OutputRedirects,
argIdx: 2,
argName: 'outFile',
resolveValue: true,
defaultValue: 'stderr',
ignoreIf: 'arg-true',
additionalArgs: {
val: { argIdx: 1, argName: 'silent' }
}
},
// write functions that don't have argIndex are assumed to write to stdout
{ package: 'base', name: 'print', linkTo: OutputRedirects, resolveValue: false },
{ package: 'base', name: 'cat', linkTo: OutputRedirects, argName: 'file', resolveValue: true },
{ package: 'base', name: 'message', linkTo: OutputRedirects, resolveValue: false },
{ package: 'base', name: 'warning', linkTo: OutputRedirects, resolveValue: false },
{ package: 'rlang', name: 'warn', linkTo: OutputRedirects, resolveValue: false },
{ package: 'rlang', name: 'info', linkTo: OutputRedirects, resolveValue: false },
{ package: 'cli', name: 'cli_warn', linkTo: OutputRedirects, resolveValue: false },
{ package: 'cli', name: 'cli_abort', linkTo: OutputRedirects, resolveValue: false },
{ package: 'base', name: 'writeLines', argIdx: 1, argName: 'con', resolveValue: true },
{ package: 'base', name: 'writeChar', argIdx: 1, argName: 'con', resolveValue: true },
{ package: 'base', name: 'writeBin', argIdx: 1, argName: 'con', resolveValue: true },
{ package: 'base', name: 'file', argIdx: 0, argName: 'description', resolveValue: true, ignoreIf: 'mode-only-read', additionalArgs: { mode: { argIdx: 1, argName: 'open', resolveValue: true } } },
{ package: 'base', name: 'url', argIdx: 0, argName: 'description', resolveValue: true, ignoreIf: 'mode-only-read', additionalArgs: { mode: { argIdx: 1, argName: 'open', resolveValue: true } } },
{ package: 'readr', name: 'write_csv', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_csv2', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_delim', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_dsv', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_fwf', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_tsv', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_table', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_log', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_lines', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'readr', name: 'write_rds', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'heaven', name: 'write_sas', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'heaven', name: 'write_sav', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'heaven', name: 'write_por', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'heaven', name: 'write_dta', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'heaven', name: 'write_xpt', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'feather', name: 'write_feather', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'foreign', name: 'write.arff', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'foreign', name: 'write.dbf', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'foreign', name: 'write.dta', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'foreign', name: 'write.foreign', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'xlsx', name: 'write.xlsx', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'xlsx', name: 'write.xlsx2', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'pdf', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'jpeg', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'png', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'windows', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'postscript', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'xfix', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'bitmap', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'pictex', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'cairo_pdf', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'svg', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'bmp', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'tiff', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'X11', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'graphics', name: 'quartz', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'car', name: 'Export', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'LIM', name: 'PrintMat', linkTo: OutputRedirects, resolveValue: true },
{ package: 'sjmisc', name: 'write_spss', argIdx: 1, argName: 'path', resolveValue: true },
{ package: 'sjmisc', name: 'write_stata', argIdx: 1, argName: 'path', resolveValue: true },
{ package: 'sjmisc', name: 'write_sas', argIdx: 1, argName: 'path', resolveValue: true },
{ package: 'ape', name: 'write.tree', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'ape', name: 'write.nexus', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'ape', name: 'write.phyloXML', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'Claddis', name: 'write_nexus_matrix', argIdx: 1, argName: 'file_name', resolveValue: true },
{ package: 'Claddis', name: 'write_tnt_matrix', argIdx: 1, argName: 'file_name', resolveValue: true },
{ package: 'rgdal', name: 'writeOGR', argIdx: 1, argName: 'dsn', resolveValue: true },
{ package: 'rgdal', name: 'writeGDAL', argIdx: 1, argName: 'fname', resolveValue: true },
{ package: 'arrow', name: 'write_parquet', argIdx: 1, argName: 'sink', resolveValue: true },
{ package: 'sf', name: 'st_write', argIdx: 1, argName: 'dsn', resolveValue: true },
{ package: 'sf', name: 'write_sf', argIdx: 1, argName: 'dsn', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'maptools', name: 'writePolyShape', argIdx: 1, argName: 'fn', resolveValue: true },
{ package: 'XLConnect', name: 'writeNamedRegionToFile', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'XLConnect', name: 'writeWorksheetToFile', argIdx: 0, argName: 'file', resolveValue: true },
{ package: 'visNetwork', name: 'visSave', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'DiagrammeR', name: 'save_graph', argIdx: 1, argName: 'file', resolveValue: true },
{ package: 'DiagrammeR', name: 'export_graph', argName: 'file_name', resolveValue: true },
{ package: 'ggplot', name: 'ggsave', argIdx: 0, argName: 'filename', resolveValue: true },
{ package: 'cowplot', name: 'ggsave2', argIdx: 0, argName: 'filename', resolveValue: true },
{ package: 'tinyplot', name: 'tinyplot', argName: 'file', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'tinyplot', name: 'plt', argName: 'file', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rasterpdf', name: 'raster_pdf', argIdx: 0, argName: 'filename', resolveValue: true },
{ package: 'rasterpdf', name: 'agg_pdf', argIdx: 0, argName: 'filename', resolveValue: true },
{ package: 'highcharter', name: 'hc_exporting', argName: 'filename', resolveValue: true },
{ package: 'jsonlite', name: 'write_json', argIdx: 1, argName: 'path', resolveValue: true },
{ package: 'rpolars', name: 'sink_ipc', argIdx: 0, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'sink_csv', argIdx: 0, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'sink_ndjson', argIdx: 0, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'sink_parquet', argIdx: 0, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'lazyframe__lazy_sink_csv', argIdx: 0, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'write_ipc', argIdx: 0, argName: 'file', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'write_csv', argIdx: 0, argName: 'file', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'write_ndjson', argIdx: 0, argName: 'file', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'rpolars', name: 'write_parquet', argIdx: 0, argName: 'file', resolveValue: true, ignoreIf: 'arg-missing' },
{ package: 'magick', name: 'image_write', argIdx: 1, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' },
];
//# sourceMappingURL=write-functions.js.map