diff --git a/include/dollop.h b/include/dollop.h index a1220411d679030820a5218ef83c5dd39e0bb890..8619c70f102715f67dd88bf426e4958888b3d1d7 100644 --- a/include/dollop.h +++ b/include/dollop.h @@ -92,6 +92,7 @@ class Dollop_t : public Placeable_t, public std::list<DollopEntry_t*> { Dollop_t() : m_size(0), m_fallthrough_dollop(NULL), + m_fallback_dollop(NULL), m_fallthrough_patched(false), m_coalesced(false), m_was_truncated(false) {} @@ -113,6 +114,11 @@ class Dollop_t : public Placeable_t, public std::list<DollopEntry_t*> { friend std::ostream &operator<<(std::ostream &, const Dollop_t &); + void FallbackDollop(Dollop_t *fallback) { + m_fallback_dollop = fallback; + } + Dollop_t *FallbackDollop(void) const { return m_fallback_dollop; } + void FallthroughDollop(Dollop_t *fallthrough) { m_fallthrough_dollop = fallthrough; } @@ -131,7 +137,7 @@ class Dollop_t : public Placeable_t, public std::list<DollopEntry_t*> { private: size_t CalculateWorstCaseSize(); size_t m_size; - Dollop_t *m_fallthrough_dollop; + Dollop_t *m_fallthrough_dollop, *m_fallback_dollop; bool m_fallthrough_patched; bool m_coalesced; bool m_was_truncated;