UNPKG

@eagleoutice/flowr-dev

Version:

Static Dataflow Analyzer and Program Slicer for the R Programming Language

160 lines 13.9 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.WriteFunctions = void 0; const function_info_1 = require("./function-info"); const built_in_props_1 = require("../../../../dataflow/environments/built-in-props"); const derived_functions_1 = require("./derived-functions"); const other_path_functions_1 = require("./other-path-functions"); const read_functions_1 = require("./read-functions"); const OutputRedirects = [ { type: 'link-to-last-call', callName: 'sink', attachLinkInfo: { argIdx: 0, argName: 'file', when: function_info_1.DependencyInfoLinkConstraint.IfUnknown, resolveValue: true } } ]; const WriteFunctionsWithMore = [ { package: 'base', name: 'save.image', argIdx: 0, argName: 'file', resolveValue: true, defaultValue: '.RData' }, { package: 'base', name: 'dump', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'utils', name: 'write.csv', 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: 'inform', 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: '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_excel_csv', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'readr', name: 'write_excel_csv2', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'readr', name: 'write_file', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'readr', name: 'write_tsv', 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: 'haven', name: 'write_sas', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'haven', name: 'write_sav', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'haven', name: 'write_dta', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'haven', 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: 'grDevices', name: 'jpeg', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'grDevices', name: 'png', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'grDevices', name: 'windows', argIdx: 0, argName: 'file', resolveValue: true }, { package: 'grDevices', name: 'cairo_pdf', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'grDevices', name: 'svg', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'grDevices', name: 'bmp', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'grDevices', name: 'tiff', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'grDevices', name: 'X11', argIdx: 0, argName: 'file', resolveValue: true }, { package: 'grDevices', name: 'quartz', argIdx: 0, argName: 'file', resolveValue: true }, { package: 'ragg', name: 'agg_png', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'ragg', name: 'agg_jpeg', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'ragg', name: 'agg_tiff', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'ragg', name: 'agg_ppm', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'ragg', name: 'agg_webp', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'car', name: 'Export', argIdx: 0, argName: 'file', resolveValue: true }, { package: 'LIM', name: 'PrintMat', linkTo: OutputRedirects, resolveValue: true }, // write_spss/write_stata moved sjmisc -> sjlabelled, so do not pin a namespace (match either); write_sas also lives in haven { name: 'write_spss', argIdx: 1, argName: 'path', resolveValue: true }, { name: 'write_stata', 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: 'ggplot2', 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: '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: 'data.table', name: 'fwrite', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'writexl', name: 'write_xlsx', argIdx: 1, argName: 'path', resolveValue: true }, { package: 'openxlsx', name: 'write.xlsx', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'vroom', name: 'vroom_write', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'vroom', name: 'vroom_write_lines', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'rio', name: 'export', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'rio', name: 'export_list', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'magick', name: 'image_write', argIdx: 1, argName: 'path', resolveValue: true, ignoreIf: 'arg-missing' }, { package: 'compiler', name: 'cmpfile', argIdx: 1, argName: 'outfile', resolveValue: true }, /* image / raster */ { package: 'jpeg', name: 'writeJPEG', argIdx: 1, argName: 'target', resolveValue: true, ignoreIf: 'arg-missing' }, { package: 'png', name: 'writePNG', argIdx: 1, argName: 'target', resolveValue: true, ignoreIf: 'arg-missing' }, { package: 'tiff', name: 'writeTIFF', argIdx: 1, argName: 'where', resolveValue: true }, { package: 'imager', name: 'make.video', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'OpenImageR', name: 'writeImage', argIdx: 1, argName: 'file_name', resolveValue: true }, { package: 'EBImage', name: 'writeImage', argIdx: 1, argName: 'files', resolveValue: true }, { package: 'gifski', name: 'gifski', argIdx: 1, argName: 'gif_file', resolveValue: true }, { package: 'gifski', name: 'save_gif', argIdx: 1, argName: 'gif_file', resolveValue: true }, { package: 'svglite', name: 'svglite', argIdx: 0, argName: 'file', resolveValue: true }, /* audio / video */ { package: 'av', name: 'av_encode_video', argIdx: 1, argName: 'output', resolveValue: true }, { package: 'av', name: 'av_audio_convert', argIdx: 1, argName: 'output', resolveValue: true }, { package: 'av', name: 'av_capture_graphics', argIdx: 1, argName: 'output', resolveValue: true }, { package: 'tuneR', name: 'writeWave', argIdx: 1, argName: 'filename', resolveValue: true }, { package: 'seewave', name: 'savewav', argName: 'filename', resolveValue: true, defaultValue: '<wave-name>' }, { package: 'audio', name: 'save.wave', argIdx: 1, argName: 'where', resolveValue: true }, /* geospatial */ { package: 'terra', name: 'writeRaster', argIdx: 1, argName: 'filename', resolveValue: true }, { package: 'terra', name: 'writeVector', argIdx: 1, argName: 'filename', resolveValue: true }, { package: 'terra', name: 'writeCDF', argIdx: 1, argName: 'filename', resolveValue: true }, { package: 'raster', name: 'writeRaster', argIdx: 1, argName: 'filename', resolveValue: true }, { package: 'stars', name: 'write_stars', argIdx: 1, argName: 'dsn', resolveValue: true }, /* array / binary science formats */ { package: 'ncdf4', name: 'nc_create', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'RNetCDF', name: 'create.nc', argIdx: 0, argName: 'filename', resolveValue: true }, { package: 'R.matlab', name: 'writeMat', argIdx: 0, argName: 'con', resolveValue: true }, { package: 'rhdf5', name: 'h5write', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'rhdf5', name: 'h5createFile', argIdx: 0, argName: 'file', resolveValue: true }, { package: 'fst', name: 'write_fst', argIdx: 1, argName: 'path', resolveValue: true }, { package: 'qs', name: 'qsave', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'yaml', name: 'write_yaml', argIdx: 1, argName: 'file', resolveValue: true }, /* phylogeny / sequence */ { package: 'ape', name: 'write.dna', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'ape', name: 'write.nexus.data', argIdx: 1, argName: 'file', resolveValue: true }, { package: 'seqinr', name: 'write.fasta', argIdx: 2, argName: 'file.out', resolveValue: true } ]; exports.WriteFunctions = [ ...WriteFunctionsWithMore, ...(0, derived_functions_1.functionInfosFromProps)(built_in_props_1.CallProp.File | built_in_props_1.CallProp.Writes, [...WriteFunctionsWithMore, ...other_path_functions_1.OtherPathFunctions, ...read_functions_1.ReadFunctions]) ]; //# sourceMappingURL=write-functions.js.map