Mercurial > hg > octave-nkf
diff libinterp/octave-value/ov-base.h @ 18484:bcd71a2531d3
Support disp/display overloading in classdef
* ov-classdef.h (octave_classdef::print, octave_classdef::print_raw):
Move definition to C++ file.
(octave_classdef::print_as_scalar): Removed method.
(octave_classdef::print_name_tag, octave_classdef::print_with_name):
New methods.
* ov-classdef.cc (octave_classdef::print): Moved from header.
(octave_classdef::print_raw): Likewise. Call overloaded disp, if
defined and not called from builtin.
(octave_classdef::print_name_tag): New method.
(octave_classdef::print_with_name): New method, calls overloaded
"display" if defined.
* pr-output.cc (octave_print_internal(std::ostream, bool): Avoid
compilation warning.
(Frats, Fdisp, Ffdisp): Allow to call non-const octave_value::print.
* ov.h (octave_value::print): Make non-const.
* ov-base.h (octave_base_value::print): Likewise.
* ov-base.cc (octave_base_value::print): Likewise.
* ov-base-diag.h (octave_base_diag::print): Likewise.
* ov-base-diag.cc (octave_base_diag::print): Likewise.
* ov-base-mat.h (octave_base_matrix::print): Likewise.
* ov-base-mat.cc (octave_base_matrix::print): Likewise.
* ov-base-scalar.h (octave_base_scalar::print): Likewise.
* ov-base-scalar.cc (octave_base_scalar::print): Likewise.
* ov-base-sparse.h (octave_base_sparse::print): Likewise.
* ov-base-sparse.cc (octave_base_sparse::print): Likewise.
* ov-cell.h (octave_cell::print): Likewise.
* ov-cell.cc (octave_cell::print): Likewise.
* ov-class.h (octave_class::print): Likewise.
* ov-class.cc (octave_class::print): Likewise.
* ov-colon.h (octave_magic_colon::print): Likewise.
* ov-colon.cc (octave_magic_colon::print): Likewise.
* ov-fcn-handle.h (octave_fcn_handle::print): Likewise.
* ov-fcn-handle.cc (octave_fcn_handle::print): Likewise.
* ov-fcn-inline.h (octave_fcn_inline::print): Likewise.
* ov-fcn-inline.cc (octave_fcn_inline::print): Likewise.
* ov-java.h (octave_java::print): Likewise.
* ov-java.cc (octave_java::print): Likewise.
* ov-lazy-idx.h (octave_lazy_index::print): Likewise.
* ov-oncleanup.h (octave_oncleanup::print): Likewise.
* ov-oncleanup.cc (octave_oncleanup::print): Likewise.
* ov-perm.h (octave_perm_matrix::print): Likewise.
* ov-perm.cc (octave_perm_matrix::print): Likewise.
* ov-range.h (octave_range::print): Likewise.
* ov-range.cc (octave_range::print): Likewise.
* ov-struct.h (octave_struct::print, octave_scalar_struct): Likewise.
* ov-struct.cc (octave_struct::print, octave_scalar_struct): Likewise.
author | Michael Goffioul <michael.goffioul@gmail.com> |
---|---|
date | Fri, 31 Jan 2014 11:41:19 -0500 |
parents | ff311e5ff6d8 |
children | 56bc1464ec59 |
line wrap: on
line diff
--- a/libinterp/octave-value/ov-base.h +++ b/libinterp/octave-value/ov-base.h @@ -606,7 +606,7 @@ virtual bool print_as_scalar (void) const { return false; } - virtual void print (std::ostream& os, bool pr_as_read_syntax = false) const; + virtual void print (std::ostream& os, bool pr_as_read_syntax = false); virtual void print_raw (std::ostream& os, bool pr_as_read_syntax = false) const;