| 112 | // Arenas and allocate both the message data and Msg struct from them, forming |
| 113 | // a linked list. |
| 114 | struct Msg { |
| 115 | time_t ts; |
| 116 | std::string message; |
| 117 | |
| 118 | Msg(time_t ts, std::string message) |
| 119 | : ts(ts), |
| 120 | message(std::move(message)) { |
| 121 | } |
| 122 | }; |
| 123 | |
| 124 | // A buffer of messages waiting to be flushed. |
| 125 | struct Buffer { |