| 26 | #define BC_BLOCK_SIZE 4096 |
| 27 | |
| 28 | struct BCBlock : FastAllocated<BCBlock> /*See below, NonCopyable */ { |
| 29 | Arena arena; |
| 30 | enum { DATA_SIZE = BC_BLOCK_SIZE - sizeof(Arena) }; |
| 31 | uint8_t data[DATA_SIZE]; |
| 32 | BCBlock() { static_assert(sizeof(BCBlock) == BC_BLOCK_SIZE, "BCBlock size mismatch"); } |
| 33 | // This is copied from NonCopyable, because MSVC doesn't implement properly "Empty Base Class Optimization" |
| 34 | // for more details take a look here : |
| 35 | // http://stackoverflow.com/questions/12701469/why-empty-base-class-optimization-is-not-working |
| 36 | BCBlock(const BCBlock&) = delete; |
| 37 | BCBlock& operator=(const BCBlock&) = delete; |
| 38 | }; |
| 39 | |
| 40 | struct BufferedConnectionData { |
| 41 | explicit BufferedConnectionData(Reference<IConnection> connection); |
nothing calls this directly
no outgoing calls
no test coverage detected