diff options
| author | Stefan Boberg <[email protected]> | 2021-10-29 18:10:34 +0200 |
|---|---|---|
| committer | Stefan Boberg <[email protected]> | 2021-10-29 18:10:34 +0200 |
| commit | 96eebb30391cd89923926dfde80754d486fc9db4 (patch) | |
| tree | e045b36478f62bddf355e80aa1b0f403fa501fef | |
| parent | Lockfile implementation (#24) (diff) | |
| download | zen-96eebb30391cd89923926dfde80754d486fc9db4.tar.xz zen-96eebb30391cd89923926dfde80754d486fc9db4.zip | |
Added SharedBuffer::MakeView implementation accepting container argument, to make tests easier to write
| -rw-r--r-- | zencore/include/zencore/sharedbuffer.h | 6 |
1 files changed, 6 insertions, 0 deletions
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 */ |