+/**
+ * \file math_mathmlstream.C
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
+ *
+ * \author André Pönitz
+ *
+ * Full author contact details are available in file CREDITS.
+ */
+
#include <config.h>
#include "math_mathmlstream.h"
#include "math_inset.h"
+#include "math_data.h"
#include "math_extern.h"
-#include "debug.h"
#include "support/lyxalgo.h"
-#include "support/LOstream.h"
+using std::strlen;
using std::ostream;
-using std::strlen;
+
namespace {
- bool isAlpha(char c)
+ bool isAlpha(char c)
{
return ('a' <= c && c <= 'z') || ('A' <= c && c <= 'Z');
}
WriteStream & operator<<(WriteStream & ws, char const * s)
{
+ if (ws.pendingSpace() && strlen(s) > 0) {
+ if (isAlpha(s[0]))
+ ws.os() << ' ';
+ ws.pendingSpace(false);
+ }
ws.os() << s;
ws.addlines(int(lyx::count(s, s + strlen(s), '\n')));
return ws;
}
-
//////////////////////////////////////////////////////////////////////
MapleStream & operator<<(MapleStream & ms, MathAtom const & at)
{
- at->maplize(ms);
+ at->maple(ms);
return ms;
}
MapleStream & operator<<(MapleStream & ms, MathArray const & ar)
{
- maplize(ar, ms);
+ maple(ar, ms);
return ms;
}
//////////////////////////////////////////////////////////////////////
+MaximaStream & operator<<(MaximaStream & ms, MathAtom const & at)
+{
+ at->maxima(ms);
+ return ms;
+}
+
+
+MaximaStream & operator<<(MaximaStream & ms, MathArray const & ar)
+{
+ maxima(ar, ms);
+ return ms;
+}
+
+
+MaximaStream & operator<<(MaximaStream & ms, char const * s)
+{
+ ms.os() << s;
+ return ms;
+}
+
+
+MaximaStream & operator<<(MaximaStream & ms, char c)
+{
+ ms.os() << c;
+ return ms;
+}
+
+
+MaximaStream & operator<<(MaximaStream & ms, int i)
+{
+ ms.os() << i;
+ return ms;
+}
+
+
+//////////////////////////////////////////////////////////////////////
+
+
MathematicaStream & operator<<(MathematicaStream & ms, MathAtom const & at)
{
- at->mathematicize(ms);
+ at->mathematica(ms);
return ms;
}
MathematicaStream & operator<<(MathematicaStream & ms, MathArray const & ar)
{
- mathematicize(ar, ms);
+ mathematica(ar, ms);
return ms;
}
OctaveStream & operator<<(OctaveStream & ns, MathAtom const & at)
{
- at->octavize(ns);
+ at->octave(ns);
return ns;
}
OctaveStream & operator<<(OctaveStream & ns, MathArray const & ar)
{
- octavize(ar, ns);
+ octave(ar, ns);
return ns;
}
//////////////////////////////////////////////////////////////////////
-