From 96eebb30391cd89923926dfde80754d486fc9db4 Mon Sep 17 00:00:00 2001 From: Stefan Boberg Date: Fri, 29 Oct 2021 18:10:34 +0200 Subject: Added SharedBuffer::MakeView implementation accepting container argument, to make tests easier to write --- zencore/include/zencore/sharedbuffer.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'zencore/include') diff --git a/zencore/include/zencore/sharedbuffer.h b/zencore/include/zencore/sharedbuffer.h index 640c3fe74..1f87dc639 100644 --- a/zencore/include/zencore/sharedbuffer.h +++ b/zencore/include/zencore/sharedbuffer.h @@ -143,6 +143,12 @@ public: /** Make a non-owned view of the input */ [[nodiscard]] inline static SharedBuffer MakeView(MemoryView View) { return MakeView(View.GetData(), View.GetSize()); } + /** Make a non-owning view of the memory of the contiguous container. */ + [[nodiscard]] inline static SharedBuffer MakeView(const std::ranges::contiguous_range auto& Container) + { + std::span Span = Container; + return MakeView(Span.data(), Span.size() * sizeof(typename decltype(Span)::element_type)); + } /** Make a non-owned view of the input */ [[nodiscard]] ZENCORE_API static SharedBuffer MakeView(const void* Data, uint64_t Size); /** Make a non-owned view of the input */ -- cgit v1.2.3