diff --git a/textmodel.h b/textmodel.h
index bc1480873fbb389c0ad386654f330ed462afd8d4..92d387a61b5596595b4dd985c9f1c36692671755 100644 (file)
--- a/textmodel.h
+++ b/textmodel.h
const size_t d_len;
TextPiece(size_t len);
virtual void read(Reader &reader) = 0;
- virtual std::string toString() = 0;
+ virtual std::string toString() const = 0;
+ virtual void accept(Visitor &visitor) const = 0;
};
class LongPiece : public TextPiece {
+ private:
+ CHAR *d_buf;
public:
LongPiece(size_t len);
+ ~LongPiece();
virtual void read(Reader &reader);
- virtual std::string toString();
+ virtual std::string toString() const;
+ virtual std::string getText() const;
+ virtual void accept(Visitor &visitor) const;
};
class ShortPiece : public TextPiece {
+ private:
+ SHORTCHAR *d_buf;
public:
ShortPiece(size_t len);
+ ~ShortPiece();
virtual void read(Reader &reader);
- virtual std::string toString();
+ virtual std::string toString() const;
+ virtual std::string getText() const;
+ virtual void accept(Visitor &visitor) const;
};
class ViewPiece : public TextPiece {
public:
ViewPiece(Store *view);
virtual void read(Reader &reader);
- virtual std::string toString();
+ virtual std::string toString() const;
+ virtual void accept(Visitor &visitor) const;
};
class StdTextModel : public TextModel {
virtual void internalize(Reader &reader);
virtual std::string toString();
+ virtual void accept(Visitor &visitor) const;
};
} // namespace odc