summaryrefslogtreecommitdiff
path: root/src/lines.hpp
diff options
context:
space:
mode:
authorAleksey Veresov <aleksey@veresov.pro>2019-11-08 19:49:40 +0300
committerAleksey Veresov <aleksey@veresov.pro>2019-11-08 19:56:11 +0300
commit3047ed6100a56a529f26e43ada0a3fc3c3815c3e (patch)
tree9648d5a74bae9cbd90670a8bfa0af47189e4536f /src/lines.hpp
parentc6419eed96f2832b1de2b94d711552efaa9b172d (diff)
downloadtexo-3047ed6100a56a529f26e43ada0a3fc3c3815c3e.tar
texo-3047ed6100a56a529f26e43ada0a3fc3c3815c3e.tar.xz
texo-3047ed6100a56a529f26e43ada0a3fc3c3815c3e.zip
[texo] Full rewrite of inner representation.
Diffstat (limited to 'src/lines.hpp')
-rw-r--r--src/lines.hpp25
1 files changed, 18 insertions, 7 deletions
diff --git a/src/lines.hpp b/src/lines.hpp
index d6ce555..7049919 100644
--- a/src/lines.hpp
+++ b/src/lines.hpp
@@ -6,29 +6,40 @@
#include "importer.hpp"
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Texo Lines Producer
+ */
class TexoProducerLines: public TexoProducer {
public:
TexoProducerLines(TexoExporter &exporter);
- void End();
- void Put(const Texo &piece);
+ bool End();
+
+
+ bool Put(char c);
+
+
+ bool Paragraph();
+ bool Quote();
- void Put(const TexoParagraph &piece);
- void Put(const TexoQuote &piece);
private:
bool newline;
};
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Texo Lines Importer
+ */
class TexoImporterLines: public TexoImporter {
public:
TexoImporterLines(TexoProducer &producer);
- void Put(char c);
- void Put(const ScriptVariable &str);
- void Put(FILE *file);
+
+protected:
+ bool TruePut(char c);
+
private:
bool newline;