# HG changeset patch # User jwe # Date 1116384515 0 # Node ID d33c3ef151cfcd11b9ee90778ce86bd4cec0cb65 # Parent df230b7df93c3253f320411c5251946abe56aabd [project @ 2005-05-18 02:47:23 by jwe] diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-b.cc --- a/src/OPERATORS/op-fil-b.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-bool.h" -#include "ov-typeinfo.h" - -// file by bool ops. - -DEFBINOP (lshift, file, bool) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_bool&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_b_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_bool, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-bm.cc --- a/src/OPERATORS/op-fil-bm.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-bool-mat.h" -#include "ov-typeinfo.h" - -// file by bool matrix ops. - -DEFBINOP (lshift, file, bool_matrix) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_bool_matrix&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_bm_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_bool_matrix, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-cm.cc --- a/src/OPERATORS/op-fil-cm.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-cx-mat.h" -#include "ov-typeinfo.h" - -// file by complex matrix ops. - -DEFBINOP (lshift, file, complex_matrix) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_complex_matrix&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_cm_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_complex_matrix, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-cs.cc --- a/src/OPERATORS/op-fil-cs.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-complex.h" -#include "ov-typeinfo.h" - -// file by complex scalar ops. - -DEFBINOP (lshift, file, complex) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_complex&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_cs_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_complex, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-lis.cc --- a/src/OPERATORS/op-fil-lis.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-list.h" -#include "ov-typeinfo.h" - -// file by list ops. - -DEFBINOP (lshift, file, list) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_list&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_lis_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_list, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-m.cc --- a/src/OPERATORS/op-fil-m.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-re-mat.h" -#include "ov-typeinfo.h" - -// file by matrix ops. - -DEFBINOP (lshift, file, matrix) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_matrix&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_m_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_matrix, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-rec.cc --- a/src/OPERATORS/op-fil-rec.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-struct.h" -#include "ov-typeinfo.h" - -// file by struct ops. - -DEFBINOP (lshift, file, struct) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_struct&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_rec_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_struct, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-s.cc --- a/src/OPERATORS/op-fil-s.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-scalar.h" -#include "ov-typeinfo.h" - -// file by scalar ops. - -DEFBINOP (lshift, file, scalar) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_scalar&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_s_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_scalar, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-sbm.cc --- a/src/OPERATORS/op-fil-sbm.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,75 +0,0 @@ -/* - -Copyright (C) 2004 David Bateman -Copyright (C) 1998-2004 Andy Adler - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with this program; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-typeinfo.h" - -#include "ov-bool-sparse.h" - -// file by sparse bool matrix ops. - -DEFBINOP (lshift, file, sparse_bool_matrix) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_sparse_bool_matrix&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_sbm_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_sparse_bool_matrix, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-scm.cc --- a/src/OPERATORS/op-fil-scm.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 2004 David Bateman -Copyright (C) 1998-2004 Andy Adler - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with this program; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-typeinfo.h" - -#include "ov-cx-sparse.h" - -// file by sparse complex matrix ops. - -DEFBINOP (lshift, file, sparse_complex_matrix) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_sparse_complex_matrix&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_scm_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_sparse_complex_matrix, - lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-sm.cc --- a/src/OPERATORS/op-fil-sm.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,75 +0,0 @@ -/* - -Copyright (C) 2004 David Bateman -Copyright (C) 1998-2004 Andy Adler - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with this program; see the file COPYING. If not, write to the -Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, -Boston, MA 02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-typeinfo.h" - -#include "ov-re-sparse.h" - -// file by sparse matrix ops. - -DEFBINOP (lshift, file, sparse_matrix) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_sparse_matrix&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_sm_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_sparse_matrix, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/OPERATORS/op-fil-str.cc --- a/src/OPERATORS/op-fil-str.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,76 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "mach-info.h" - -#include "error.h" -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov.h" -#include "ov-file.h" -#include "ov-str-mat.h" -#include "ov-typeinfo.h" - -// file by string ops. - -DEFBINOP (lshift, file, char_matrix_str) -{ - CAST_BINOP_ARGS (const octave_file&, const octave_char_matrix_str&); - - octave_stream oct_stream = v1.stream_value (); - - if (oct_stream) - { - std::ostream *osp = oct_stream.output_stream (); - - if (osp) - { - std::ostream& os = *osp; - - v2.print_raw (os); - } - else - error ("invalid file specified for binary operator `<<'"); - } - - return octave_value (oct_stream, v1.stream_number ()); -} - -void -install_fil_str_ops (void) -{ - INSTALL_BINOP (op_lshift, octave_file, octave_char_matrix_str, lshift); -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/ov-file.cc --- a/src/ov-file.cc Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,108 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#ifdef HAVE_CONFIG_H -#include -#endif - -#include - -#include "oct-obj.h" -#include "oct-stream.h" -#include "ops.h" -#include "ov-file.h" -#include "ov-scalar.h" -#include "unwind-prot.h" - -DEFINE_OCTAVE_ALLOCATOR (octave_file); - -DEFINE_OV_TYPEID_FUNCTIONS_AND_DATA (octave_file, "file", "file"); - -static octave_value * -default_numeric_conversion_function (const octave_value& a) -{ - CAST_CONV_ARG (const octave_file&); - - return new octave_scalar (v.stream_number ()); -} - -type_conv_fcn -octave_file::numeric_conversion_function (void) const -{ - return default_numeric_conversion_function; -} - -void -octave_file::print (std::ostream& os, bool) const -{ - print_raw (os); - newline (os); -} - -void -octave_file::print_raw (std::ostream& os, bool) const -{ - indent (os); os << "{"; newline (os); - - increment_indent_level (); - - indent (os); - os << "id = " << number; - newline (os); - - indent (os); - os << "name = " << stream.name (); - newline (os); - - indent (os); - os << "mode = " << octave_stream::mode_as_string (stream.mode ()); - newline (os); - - indent (os); - os << "arch = " - << oct_mach_info::float_format_as_string (stream.float_format ()); - newline (os); - - indent (os); - os << "status = " << (stream.is_open () ? "open" : "closed"); - newline (os); - - decrement_indent_level (); - - indent (os); os << "}"; -} - -bool -octave_file::print_name_tag (std::ostream& os, const std::string& name) const -{ - indent (os); - os << name << " ="; - newline (os); - return false; -} - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/ov-file.h --- a/src/ov-file.h Wed May 18 02:18:24 2005 +0000 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,118 +0,0 @@ -/* - -Copyright (C) 1996, 1997 John W. Eaton - -This file is part of Octave. - -Octave is free software; you can redistribute it and/or modify it -under the terms of the GNU General Public License as published by the -Free Software Foundation; either version 2, or (at your option) any -later version. - -Octave is distributed in the hope that it will be useful, but WITHOUT -ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or -FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License -for more details. - -You should have received a copy of the GNU General Public License -along with Octave; see the file COPYING. If not, write to the Free -Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -02110-1301, USA. - -*/ - -#if !defined (octave_file_h) -#define octave_file_h 1 - -#include - -#include -#include - -#include "oct-alloc.h" -#include "oct-stream.h" -#include "ov-base.h" -#include "ov-scalar.h" -#include "ov-typeinfo.h" - -class tree_walker; -class octave_stream; -class octave_value; -class octave_value_list; - -// Lists. - -class -octave_file : public octave_base_value -{ -public: - - octave_file (void) - : octave_base_value (), stream (), number (-1) { } - - octave_file (const octave_stream& s, int n) - : octave_base_value (), stream (s), number (n) { } - - octave_file (const octave_file& f) - : octave_base_value (), stream (f.stream), number (f.number) { } - - ~octave_file (void) { } - - octave_value *clone (void) const { return new octave_file (*this); } - - // For compatibility, a file object should appear as if it is a - // scalar object, in contexts where that is needed. - octave_value *empty_clone (void) const { return new octave_scalar (); } - - type_conv_fcn numeric_conversion_function (void) const; - - double double_value (bool) const { return number; } - - double scalar_value (bool) const { return number; } - - octave_stream stream_value (void) const { return stream; } - - int stream_number (void) const { return number; } - - bool is_defined (void) const { return true; } - - bool is_stream (void) const { return true; } - - // Pretend we are a real scalar for better compatibility, maybe. - - bool is_real_scalar (void) const { return true; } - - bool is_real_type (void) const { return true; } - - dim_vector dims (void) const { static dim_vector dv (1, 1); return dv; } - - octave_value all (int = 0) const { return (number != 0.0); } - - octave_value any (int = 0) const { return (number != 0.0); } - - void print (std::ostream& os, bool pr_as_read_syntax = false) const; - - void print_raw (std::ostream& os, bool pr_as_read_syntax = false) const; - - bool print_name_tag (std::ostream& os, const std::string& name) const; - -private: - - // The stream object. - octave_stream stream; - - // The number of the beast. - int number; - - DECLARE_OCTAVE_ALLOCATOR - - DECLARE_OV_TYPEID_FUNCTIONS_AND_DATA -}; - -#endif - -/* -;;; Local Variables: *** -;;; mode: C++ *** -;;; End: *** -*/ diff -r df230b7df93c -r d33c3ef151cf src/ov.cc --- a/src/ov.cc Wed May 18 02:18:24 2005 +0000 +++ b/src/ov.cc Wed May 18 02:48:35 2005 +0000 @@ -56,7 +56,6 @@ #include "ov-str-mat.h" #include "ov-range.h" #include "ov-struct.h" -#include "ov-file.h" #include "ov-streamoff.h" #include "ov-list.h" #include "ov-cs-list.h"