GNU Octave 7.1.0
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
file-io.cc File Reference
#include <cerrno>
#include <cstdio>
#include <iomanip>
#include <string>
#include "file-ops.h"
#include "file-stat.h"
#include "iconv-wrappers.h"
#include "lo-ieee.h"
#include "lo-sysdep.h"
#include "localcharset-wrapper.h"
#include "mkostemp-wrapper.h"
#include "oct-env.h"
#include "oct-locbuf.h"
#include "tmpfile-wrapper.h"
#include "unistd-wrappers.h"
#include "builtin-defun-decls.h"
#include "defun.h"
#include "error.h"
#include "errwarn.h"
#include "file-io.h"
#include "interpreter-private.h"
#include "interpreter.h"
#include "load-path.h"
#include "oct-fstrm.h"
#include "oct-iostrm.h"
#include "oct-map.h"
#include "oct-prcstrm.h"
#include "oct-stream.h"
#include "oct-strstrm.h"
#include "ov.h"
#include "ovl.h"
#include "pager.h"
#include "sysdep.h"
#include "utils.h"
#include "variables.h"
Include dependency graph for file-io.cc:

Go to the source code of this file.

Functions

void cleanup_tmp_files_deprecated (void)
 
static octave_value const_value (const char *, const octave_value_list &args, const octave_value &val)
 
static octave_value const_value (const char *, const octave_value_list &args, int val)
 
static int convert (int x, int ibase, int obase)
 
static octave_value do_fread (stream &os, const octave_value &size_arg, const octave_value &prec_arg, const octave_value &skip_arg, const octave_value &arch_arg, octave_idx_type &count)
 
static int do_fwrite (stream &os, const octave_value &data, const octave_value &prec_arg, const octave_value &skip_arg, const octave_value &arch_arg)
 
static stream do_stream_open (const octave_value &tc_name, const octave_value &tc_mode, const octave_value &tc_arch, const octave_value &tc_encoding, const char *fcn, int &fid)
 
static stream do_stream_open (const std::string &name, const std::string &mode_arg, const std::string &arch, std::string encoding, int &fid)
 
OCTAVE_EXPORT octave_value_list F__textscan__ (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffclear (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffclose (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffeof (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fferror (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffflush (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffgetl (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffgets (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffopen (octave::interpreter &interp, const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Ffprintf (octave::interpreter &interp, const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Ffputs (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffread (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffreport (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffrewind (octave::interpreter &interp, const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Ffscanf (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffseek (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffskipl (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fftell (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ffwrite (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fmkstemp (octave::interpreter &interp, const octave_value_list &args, int)
 
static std::ios::openmode fopen_mode_to_ios_mode (const std::string &mode)
 
OCTAVE_EXPORT octave_value_list FP_tmpdir (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fpclose (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fpopen (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fprintf (octave::interpreter &interp, const octave_value_list &args, int nargout)
 
OCTAVE_EXPORT octave_value_list Fputs (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fscanf (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list FSEEK_CUR (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list FSEEK_END (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list FSEEK_SET (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fsprintf (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fsscanf (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fstderr (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fstdin (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fstdout (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ftempname (const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ftextscan (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Ftmpfile (octave::interpreter &interp, const octave_value_list &args, int)
 
OCTAVE_EXPORT octave_value_list Fumask (const octave_value_list &args, int)
 
static std::string get_scan_string_data (const octave_value &val, const std::string &who)
 
void mark_for_deletion_deprecated (const std::string &file)
 
static OCTAVE_NAMESPACE_BEGIN void normalize_fopen_mode (std::string &mode, bool &use_zlib)
 
static octave_value_list printf_internal (interpreter &interp, const std::string &who, const octave_value_list &args, int nargout)
 
static octave_value_list puts_internal (interpreter &interp, const std::string &who, const octave_value_list &args)
 
static octave_value_list scanf_internal (interpreter &interp, const std::string &who, const octave_value_list &args)
 
static octave_value_list textscan_internal (interpreter &interp, const std::string &who, const octave_value_list &args)
 

Function Documentation

◆ cleanup_tmp_files_deprecated()

void cleanup_tmp_files_deprecated ( void  )

Definition at line 3268 of file file-io.cc.

References octave::__get_interpreter__().

◆ const_value() [1/2]

static octave_value const_value ( const char *  ,
const octave_value_list args,
const octave_value val 
)
static

Definition at line 3203 of file file-io.cc.

References octave_value_list::length(), octave_value(), and print_usage().

◆ const_value() [2/2]

static octave_value const_value ( const char *  ,
const octave_value_list args,
int  val 
)
static

◆ convert()

static int convert ( int  x,
int  ibase,
int  obase 
)
static

Definition at line 3077 of file file-io.cc.

References error(), and x.

Referenced by Fumask().

◆ do_fread()

static octave_value do_fread ( stream &  os,
const octave_value size_arg,
const octave_value prec_arg,
const octave_value skip_arg,
const octave_value arch_arg,
octave_idx_type count 
)
static

◆ do_fwrite()

static int do_fwrite ( stream &  os,
const octave_value data,
const octave_value prec_arg,
const octave_value skip_arg,
const octave_value arch_arg 
)
static

◆ do_stream_open() [1/2]

static stream do_stream_open ( const octave_value tc_name,
const octave_value tc_mode,
const octave_value tc_arch,
const octave_value tc_encoding,
const char *  fcn,
int fid 
)
static

Definition at line 468 of file file-io.cc.

References do_stream_open(), name, and octave_value::xstring_value().

◆ do_stream_open() [2/2]

static stream do_stream_open ( const std::string &  name,
const std::string &  mode_arg,
const std::string &  arch,
std::string  encoding,
int fid 
)
static

◆ F__textscan__()

OCTAVE_EXPORT octave_value_list F__textscan__ ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 1532 of file file-io.cc.

References print_usage(), and textscan_internal().

◆ Ffclear()

OCTAVE_EXPORT octave_value_list Ffclear ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 206 of file file-io.cc.

References ovl(), and print_usage().

◆ Ffclose()

OCTAVE_EXPORT octave_value_list Ffclose ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 190 of file file-io.cc.

References ovl(), and print_usage().

◆ Ffeof()

OCTAVE_EXPORT octave_value_list Ffeof ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 2715 of file file-io.cc.

References ovl(), and print_usage().

◆ Fferror()

OCTAVE_EXPORT octave_value_list Fferror ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 2746 of file file-io.cc.

References ovl(), and print_usage().

◆ Ffflush()

OCTAVE_EXPORT octave_value_list Ffflush ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 235 of file file-io.cc.

References flush_stdout(), and print_usage().

Referenced by gnuplot_graphics_toolkit::send_quit().

◆ Ffgetl()

OCTAVE_EXPORT octave_value_list Ffgetl ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 281 of file file-io.cc.

References octave_value(), ovl(), and print_usage().

◆ Ffgets()

OCTAVE_EXPORT octave_value_list Ffgets ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 324 of file file-io.cc.

References octave_value(), ovl(), and print_usage().

◆ Ffopen()

OCTAVE_EXPORT octave_value_list Ffopen ( octave::interpreter &  interp,
const octave_value_list args,
int  nargout 
)

◆ Ffprintf()

OCTAVE_EXPORT octave_value_list Ffprintf ( octave::interpreter &  interp,
const octave_value_list args,
int  nargout 
)

Definition at line 842 of file file-io.cc.

References printf_internal().

◆ Ffputs()

OCTAVE_EXPORT octave_value_list Ffputs ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 901 of file file-io.cc.

References puts_internal().

Referenced by gnuplot_graphics_toolkit::send_quit().

◆ Ffread()

OCTAVE_EXPORT octave_value_list Ffread ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

◆ Ffreport()

OCTAVE_EXPORT octave_value_list Ffreport ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 688 of file file-io.cc.

References octave_stdout, ovl(), and warning().

◆ Ffrewind()

OCTAVE_EXPORT octave_value_list Ffrewind ( octave::interpreter &  interp,
const octave_value_list args,
int  nargout 
)

Definition at line 710 of file file-io.cc.

References ovl(), and print_usage().

◆ Ffscanf()

OCTAVE_EXPORT octave_value_list Ffscanf ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 1078 of file file-io.cc.

References scanf_internal().

◆ Ffseek()

OCTAVE_EXPORT octave_value_list Ffseek ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 746 of file file-io.cc.

References octave_value(), ovl(), and print_usage().

◆ Ffskipl()

OCTAVE_EXPORT octave_value_list Ffskipl ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 366 of file file-io.cc.

References octave_value(), ovl(), and print_usage().

◆ Fftell()

OCTAVE_EXPORT octave_value_list Fftell ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 768 of file file-io.cc.

References ovl(), and print_usage().

◆ Ffwrite()

OCTAVE_EXPORT octave_value_list Ffwrite ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 2669 of file file-io.cc.

References do_fwrite(), octave_value::is_string(), ovl(), and print_usage().

◆ Fmkstemp()

OCTAVE_EXPORT octave_value_list Fmkstemp ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

◆ fopen_mode_to_ios_mode()

static std::ios::openmode fopen_mode_to_ios_mode ( const std::string &  mode)
static

Definition at line 142 of file file-io.cc.

References error(), and octave::math::trunc().

Referenced by do_stream_open(), Fmkstemp(), and Ftmpfile().

◆ FP_tmpdir()

OCTAVE_EXPORT octave_value_list FP_tmpdir ( const octave_value_list args,
int   
)

Definition at line 3158 of file file-io.cc.

References get_P_tmpdir(), ovl(), and print_usage().

◆ Fpclose()

OCTAVE_EXPORT octave_value_list Fpclose ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 2846 of file file-io.cc.

References ovl(), and print_usage().

Referenced by gnuplot_graphics_toolkit::send_quit().

◆ Fpopen()

OCTAVE_EXPORT octave_value_list Fpopen ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

◆ Fprintf()

OCTAVE_EXPORT octave_value_list Fprintf ( octave::interpreter &  interp,
const octave_value_list args,
int  nargout 
)

Definition at line 865 of file file-io.cc.

References octave_value_list::prepend(), and printf_internal().

◆ Fputs()

OCTAVE_EXPORT octave_value_list Fputs ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 919 of file file-io.cc.

References octave_value_list::prepend(), and puts_internal().

◆ Fscanf()

OCTAVE_EXPORT octave_value_list Fscanf ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 1175 of file file-io.cc.

References octave_value_list::prepend(), and scanf_internal().

◆ FSEEK_CUR()

OCTAVE_EXPORT octave_value_list FSEEK_CUR ( const octave_value_list args,
int   
)

Definition at line 3186 of file file-io.cc.

References const_value().

◆ FSEEK_END()

OCTAVE_EXPORT octave_value_list FSEEK_END ( const octave_value_list args,
int   
)

Definition at line 3197 of file file-io.cc.

References const_value().

◆ FSEEK_SET()

OCTAVE_EXPORT octave_value_list FSEEK_SET ( const octave_value_list args,
int   
)

Definition at line 3175 of file file-io.cc.

References const_value().

◆ Fsprintf()

◆ Fsscanf()

OCTAVE_EXPORT octave_value_list Fsscanf ( const octave_value_list args,
int   
)

◆ Fstderr()

OCTAVE_EXPORT octave_value_list Fstderr ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 3249 of file file-io.cc.

References const_value().

◆ Fstdin()

OCTAVE_EXPORT octave_value_list Fstdin ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 3220 of file file-io.cc.

References const_value().

◆ Fstdout()

OCTAVE_EXPORT octave_value_list Fstdout ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 3234 of file file-io.cc.

References const_value().

◆ Ftempname()

OCTAVE_EXPORT octave_value_list Ftempname ( const octave_value_list args,
int   
)

Definition at line 2874 of file file-io.cc.

References ovl(), print_usage(), and octave::sys::tempnam().

◆ Ftextscan()

OCTAVE_EXPORT octave_value_list Ftextscan ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

Definition at line 1520 of file file-io.cc.

References textscan_internal().

◆ Ftmpfile()

OCTAVE_EXPORT octave_value_list Ftmpfile ( octave::interpreter &  interp,
const octave_value_list args,
int   
)

◆ Fumask()

OCTAVE_EXPORT octave_value_list Fumask ( const octave_value_list args,
int   
)

Definition at line 3118 of file file-io.cc.

References convert(), error(), ovl(), print_usage(), and octave::sys::umask().

◆ get_scan_string_data()

static std::string get_scan_string_data ( const octave_value val,
const std::string &  who 
)
static

◆ mark_for_deletion_deprecated()

void mark_for_deletion_deprecated ( const std::string &  file)

Definition at line 3259 of file file-io.cc.

References octave::__get_interpreter__().

◆ normalize_fopen_mode()

static OCTAVE_NAMESPACE_BEGIN void normalize_fopen_mode ( std::string &  mode,
bool use_zlib 
)
static

Definition at line 90 of file file-io.cc.

References err_disabled_feature().

Referenced by do_stream_open().

◆ printf_internal()

static octave_value_list printf_internal ( interpreter interp,
const std::string &  who,
const octave_value_list args,
int  nargout 
)
static

◆ puts_internal()

static octave_value_list puts_internal ( interpreter interp,
const std::string &  who,
const octave_value_list args 
)
static

Definition at line 876 of file file-io.cc.

References interpreter::get_stream_list(), octave_value_list::length(), ovl(), and print_usage().

Referenced by Ffputs(), and Fputs().

◆ scanf_internal()

static octave_value_list scanf_internal ( interpreter interp,
const std::string &  who,
const octave_value_list args 
)
static

◆ textscan_internal()

static octave_value_list textscan_internal ( interpreter interp,
const std::string &  who,
const octave_value_list args 
)
static