]> www.ginac.de Git - ginac.git/blobdiff - ginac/operators.h
Synced to HEAD
[ginac.git] / ginac / operators.h
index b84d38b6eb85affb6b7a294b99b68f4ec389cc3f..b9b8ed08adc69124ebabd04e01d5238752f95a12 100644 (file)
@@ -3,7 +3,7 @@
  *  Interface to GiNaC's overloaded operators. */
 
 /*
- *  GiNaC Copyright (C) 1999-2001 Johannes Gutenberg University Mainz, Germany
+ *  GiNaC Copyright (C) 1999-2004 Johannes Gutenberg University Mainz, Germany
  *
  *  This program is free software; you can redistribute it and/or modify
  *  it under the terms of the GNU General Public License as published by
@@ -23,7 +23,7 @@
 #ifndef __GINAC_OPERATORS_H__
 #define __GINAC_OPERATORS_H__
 
-#include <iostream>
+#include <iosfwd>
 
 namespace GiNaC {
 
@@ -74,17 +74,31 @@ const numeric operator++(numeric & lh, int);
 const numeric operator--(numeric & lh, int);
 
 // binary relational operators ex with ex
-relational operator==(const ex & lh, const ex & rh);
-relational operator!=(const ex & lh, const ex & rh);
-relational operator<(const ex & lh, const ex & rh);
-relational operator<=(const ex & lh, const ex & rh);
-relational operator>(const ex & lh, const ex & rh);
-relational operator>=(const ex & lh, const ex & rh);
+const relational operator==(const ex & lh, const ex & rh);
+const relational operator!=(const ex & lh, const ex & rh);
+const relational operator<(const ex & lh, const ex & rh);
+const relational operator<=(const ex & lh, const ex & rh);
+const relational operator>(const ex & lh, const ex & rh);
+const relational operator>=(const ex & lh, const ex & rh);
 
 // input/output stream operators
 std::ostream & operator<<(std::ostream & os, const ex & e);
 std::istream & operator>>(std::istream & is, ex & e);
 
+// input/output stream manipulators
+std::ostream & dflt(std::ostream & os);
+std::ostream & latex(std::ostream & os);
+std::ostream & python(std::ostream & os);
+std::ostream & python_repr(std::ostream & os);
+std::ostream & tree(std::ostream & os);
+std::ostream & csrc(std::ostream & os); // same as csrc_double
+std::ostream & csrc_float(std::ostream & os);
+std::ostream & csrc_double(std::ostream & os);
+std::ostream & csrc_cl_N(std::ostream & os);
+
+std::ostream & index_dimensions(std::ostream & os);
+std::ostream & no_index_dimensions(std::ostream & os);
+
 } // namespace GiNaC
 
 #endif // ndef __GINAC_OPERATORS_H__