1#ifndef joedb_Readonly_Memory_File_declared
2#define joedb_Readonly_Memory_File_declared
18 size_t pread(
char *buffer,
size_t size, int64_t offset)
const override
23 const size_t max_size =
data_size - size_t(offset);
24 const size_t n = std::min(size, max_size);
25 std::memcpy(buffer, &
data[
size_t(offset)], n);
34 data((const char *)memory),
Readonly_Memory_File(const std::string &s)
int64_t get_size() const override
Get the size of the file, or -1 if it is unknown.
Readonly_Memory_File(const std::vector< char > &v)
Readonly_Memory_File(const void *memory, size_t size)
size_t pread(char *buffer, size_t size, int64_t offset) const override
Read a range of bytes.
@ read_existing
fails if does not exist