]> www.ginac.de Git - ginac.git/blobdiff - ginac/idx.cpp
implemented operator-> for the iterators
[ginac.git] / ginac / idx.cpp
index 1b4bf6f5e3d2f781d00080892f8f719ce2c2012d..67603cf271fb7efca16b0e76d8f1420fe53af2b2 100644 (file)
@@ -29,7 +29,6 @@
 #include "lst.h"
 #include "relational.h"
 #include "operators.h"
-#include "print.h"
 #include "archive.h"
 #include "utils.h"
 
@@ -134,7 +133,7 @@ DEFAULT_UNARCHIVE(spinidx)
 // functions overriding virtual functions from base classes
 //////////
 
-void idx::do_print_idx(const print_context & c, unsigned level) const
+void idx::print_index(const print_context & c, unsigned level) const
 {
        bool need_parens = !(is_exactly_a<numeric>(value) || is_a<symbol>(value));
        if (need_parens)
@@ -152,19 +151,19 @@ void idx::do_print_idx(const print_context & c, unsigned level) const
 void idx::do_print(const print_context & c, unsigned level) const
 {
        c.s << ".";
-       do_print_idx(c, level);
+       print_index(c, level);
 }
 
 void idx::do_print_latex(const print_latex & c, unsigned level) const
 {
        c.s << "{";
-       do_print_idx(c, level);
+       print_index(c, level);
        c.s << "}";
 }
 
 void idx::do_print_tree(const print_tree & c, unsigned level) const
 {
-       c.s << std::string(level, ' ') << class_name()
+       c.s << std::string(level, ' ') << class_name() << " @" << this
            << std::hex << ", hash=0x" << hashvalue << ", flags=0x" << flags << std::dec
            << std::endl;
        value.print(c, level +  c.delta_indent);
@@ -177,12 +176,12 @@ void varidx::do_print(const print_context & c, unsigned level) const
                c.s << ".";
        else
                c.s << "~";
-       do_print_idx(c, level);
+       print_index(c, level);
 }
 
 void varidx::do_print_tree(const print_tree & c, unsigned level) const
 {
-       c.s << std::string(level, ' ') << class_name()
+       c.s << std::string(level, ' ') << class_name() << " @" << this
            << std::hex << ", hash=0x" << hashvalue << ", flags=0x" << flags << std::dec
            << (covariant ? ", covariant" : ", contravariant")
            << std::endl;
@@ -198,7 +197,7 @@ void spinidx::do_print(const print_context & c, unsigned level) const
                c.s << "~";
        if (dotted)
                c.s << "*";
-       do_print_idx(c, level);
+       print_index(c, level);
 }
 
 void spinidx::do_print_latex(const print_latex & c, unsigned level) const
@@ -207,13 +206,13 @@ void spinidx::do_print_latex(const print_latex & c, unsigned level) const
                c.s << "\\dot{";
        else
                c.s << "{";
-       do_print_idx(c, level);
+       print_index(c, level);
        c.s << "}";
 }
 
 void spinidx::do_print_tree(const print_tree & c, unsigned level) const
 {
-       c.s << std::string(level, ' ') << class_name()
+       c.s << std::string(level, ' ') << class_name() << " @" << this
            << std::hex << ", hash=0x" << hashvalue << ", flags=0x" << flags << std::dec
            << (covariant ? ", covariant" : ", contravariant")
            << (dotted ? ", dotted" : ", undotted")