7#include "file_mapping.hpp"
8#include "resource_view.hpp"
29 [[nodiscard]] access_mode
accessMode() const noexcept {
return _file_mapping_object->accessMode(); }
33 [[nodiscard]]
URL const &
location() const noexcept {
return _file_mapping_object->location(); }
37 [[nodiscard]]
size_t offset() const noexcept
override {
return _offset; }
41 [[nodiscard]]
size_t size() const noexcept
override {
return _bytes->size(); }
45 [[nodiscard]] std::byte *
data() noexcept {
return _bytes->data(); }
49 [[nodiscard]] std::byte
const *
data() const noexcept
override {
return _bytes->data(); }
53 [[nodiscard]] std::span<std::byte>
bytes() noexcept {
return *_bytes; }
57 [[nodiscard]] std::span<std::byte const>
bytes() const noexcept
override {
return *_bytes; }
62 return std::string_view{
reinterpret_cast<char *
>(
data()),
size()};
67 [[nodiscard]] std::string_view
string_view() const noexcept
override {
68 return std::string_view{
reinterpret_cast<char const *
>(
data()),
size()};
81 return std::make_unique<file_view>(
location);
91 static void unmap(std::span<std::byte> *
bytes)
noexcept;
Definition file_view.hpp:15
URL const & location() const noexcept
Definition file_view.hpp:33
std::string_view string_view() const noexcept override
Definition file_view.hpp:67
std::byte * data() noexcept
Definition file_view.hpp:45
std::string_view string_view() noexcept
Definition file_view.hpp:61
static std::unique_ptr< resource_view > loadView(URL const &location)
Definition file_view.hpp:80
size_t size() const noexcept override
Definition file_view.hpp:41
std::span< std::byte const > bytes() const noexcept override
Definition file_view.hpp:57
size_t offset() const noexcept override
Definition file_view.hpp:37
access_mode accessMode() const noexcept
Definition file_view.hpp:29
std::span< std::byte > bytes() noexcept
Definition file_view.hpp:53
std::byte const * data() const noexcept override
Definition file_view.hpp:49
void flush(void *base, size_t size)
Flush changes in memory to the open file.
A read-only memory mapping of a resource.
Definition resource_view.hpp:18