changeset 10204:1d430a849f3c

print class name for classes that don't define a display method
author jstorrs@gmail.com
date Wed, 27 Jan 2010 02:22:04 -0500
parents 27777bd27e71
children eea99d24adae
files src/ChangeLog src/ov-class.cc
diffstat 2 files changed, 12 insertions(+), 1 deletions(-) [+]
line wrap: on
line diff
--- a/src/ChangeLog	Tue Jan 26 23:27:21 2010 -0500
+++ b/src/ChangeLog	Wed Jan 27 02:22:04 2010 -0500
@@ -1,3 +1,8 @@
+2010-01-27  Judd Storrs  <jstorrs@gmail.com>
+
+	* ov-class.cc (octave_class::print_with_name) Add default case for
+	classes that don't define a display method.
+
 2010-01-26  Shai Ayal  <shaiay@users.sourceforge.net>
 
 	* gl-render.cc (draw_text): scale position.
--- a/src/ov-class.cc	Tue Jan 26 23:27:21 2010 -0500
+++ b/src/ov-class.cc	Wed Jan 27 02:22:04 2010 -0500
@@ -972,7 +972,7 @@
 }
 
 void
-octave_class::print_with_name (std::ostream&, const std::string& name, 
+octave_class::print_with_name (std::ostream& os, const std::string& name, 
 			       bool)
 {
   octave_value fcn = symbol_table::find_method ("display", class_name ());
@@ -992,6 +992,12 @@
 
       feval (fcn.function_value (), args);
     }
+  else
+    {
+      indent (os);
+      os << name << " = <class " << class_name () << ">";
+      newline (os);
+    }
 }
 
 // Loading a class properly requires an exemplar map entry for success.