1 #ifndef MATH_MATHMLSTREAM_H
2 #define MATH_MATHMLSTREAM_H
5 #include "support/LOstream.h"
13 MTag(char const * const tag) : tag_(tag) {}
15 char const * const tag_;
20 ETag(char const * const tag) : tag_(tag) {}
22 char const * const tag_;
27 explicit MathMLStream(std::ostream & os);
29 MathMLStream & operator<<(MathInset const *);
31 MathMLStream & operator<<(MathArray const &);
33 MathMLStream & operator<<(char const *);
35 MathMLStream & operator<<(char);
37 MathMLStream & operator<<(MTag const &);
39 MathMLStream & operator<<(ETag const &);
54 explicit NormalStream(std::ostream & os) : os_(os) {}
58 NormalStream & operator<<(MathInset const *);
60 NormalStream & operator<<(MathArray const &);
62 NormalStream & operator<<(char const *);
64 NormalStream & operator<<(char);
70 explicit MapleStream(std::ostream & os) : os_(os) {}
74 MapleStream & operator<<(MathInset const *);
76 MapleStream & operator<<(MathArray const &);
78 MapleStream & operator<<(char const *);
80 MapleStream & operator<<(char);
82 MapleStream & operator<<(int);
88 explicit OctaveStream(std::ostream & os) : os_(os) {}
92 OctaveStream & operator<<(MathInset const *);
94 OctaveStream & operator<<(MathArray const &);
96 OctaveStream & operator<<(char const *);
98 OctaveStream & operator<<(char);
104 WriteStream(Buffer const * buffer_, std::ostream & os_, bool fragile_);
106 explicit WriteStream(std::ostream & os_);
109 WriteStream & operator<<(MathInset const *);
111 WriteStream & operator<<(MathArray const &);
113 WriteStream & operator<<(char const *);
115 WriteStream & operator<<(char);
118 Buffer const * buffer;