diff --git a/pj_base/include/pj_base/buffer_anchor.hpp b/pj_base/include/pj_base/buffer_anchor.hpp index 7d699a0c..ebaa9730 100644 --- a/pj_base/include/pj_base/buffer_anchor.hpp +++ b/pj_base/include/pj_base/buffer_anchor.hpp @@ -39,6 +39,14 @@ using BufferAnchor = std::shared_ptr; struct PayloadView { Span bytes; BufferAnchor anchor; + + PayloadView() = default; + + PayloadView(Span bytes_, BufferAnchor anchor_) : bytes(bytes_), anchor(std::move(anchor_)) {} + + PayloadView(std::shared_ptr> buffer) + : bytes(buffer ? Span(buffer->data(), buffer->size()) : Span()), + anchor(std::move(buffer)) {} }; } // namespace sdk