diff --git a/textmodel.h b/textmodel.h
index 13a3d56df9803caf546a0907117f9d21e79e84f5..93fa5b7aeba80aabbbddad13534b784484322f11 100644 (file)
--- a/textmodel.h
+++ b/textmodel.h
virtual void internalize(Reader &reader);
};
+ class TextPiece {
+ public:
+ const size_t d_len;
+ TextPiece(size_t len);
+ virtual void read(Reader &reader) = 0;
+ };
+
+ class LongPiece : public TextPiece {
+ public:
+ LongPiece(size_t len);
+ virtual void read(Reader &reader);
+ };
+
+ class ShortPiece : public TextPiece {
+ public:
+ ShortPiece(size_t len);
+ virtual void read(Reader &reader);
+ };
+
+ class ViewPiece : public TextPiece {
+ public:
+ ViewPiece();
+ virtual void read(Reader &reader);
+ };
+
class StdTextModel : public TextModel {
private:
static const std::string TYPENAME;