+{
+ check_sub_data(off, sz, "Buffer::sub_data");
+ BufferBackend::sub_data(off, sz, d);
+}
+
+Buffer::AsyncTransfer Buffer::sub_data_async(size_t off, size_t sz)
+{
+ check_sub_data(off, sz, "Buffer::sub_data_async");
+ return AsyncTransfer(*this, off, sz);
+}
+
+void Buffer::check_sub_data(size_t off, size_t sz, const char *func)