summaryrefslogtreecommitdiff
path: root/src/lines.hpp
diff options
context:
space:
mode:
authorAleksey Veresov <aleksey@veresov.pro>2019-10-25 14:10:45 +0300
committerAleksey Veresov <aleksey@veresov.pro>2019-10-25 14:10:45 +0300
commit1de3a9aae84ec71c4fd83604ea9c45204efb9baf (patch)
tree99246ae8cbb19864657360b513f501d796a92db5 /src/lines.hpp
parent2c12c0652d2b8c8440e1e908f004826840ed14ab (diff)
downloadtexo-1de3a9aae84ec71c4fd83604ea9c45204efb9baf.tar
texo-1de3a9aae84ec71c4fd83604ea9c45204efb9baf.tar.xz
texo-1de3a9aae84ec71c4fd83604ea9c45204efb9baf.zip
.
Diffstat (limited to 'src/lines.hpp')
-rw-r--r--src/lines.hpp41
1 files changed, 41 insertions, 0 deletions
diff --git a/src/lines.hpp b/src/lines.hpp
new file mode 100644
index 0000000..4f68cb9
--- /dev/null
+++ b/src/lines.hpp
@@ -0,0 +1,41 @@
+#ifndef TEXO_INCLUDED_LINES
+#define TEXO_INCLUDED_LINES
+
+#include "exporter.hpp"
+#include "producer.hpp"
+#include "importer.hpp"
+
+
+class TexoProducerLines: public TexoProducer {
+public:
+ TexoProducerLines(TexoExporter &exporter);
+
+ void Put(const Texo &piece);
+
+ void Put(const TexoParagraph &piece);
+ void Put(const TexoQuote &piece);
+
+ void Put(const TexoLineBreak &piece);
+
+private:
+ bool quoted;
+ bool newline;
+};
+
+
+class TexoImporterLines: public TexoImporter {
+public:
+ TexoImporterLines(TexoProducer &producer);
+ ~TexoImporterLines();
+
+ void Put(char c);
+ void Put(const ScriptVariable &str);
+ void Put(FILE *file);
+
+private:
+ bool quoted;
+ bool newline;
+};
+
+
+#endif