1#ifndef joedb_Posix_File_declared
2#define joedb_Posix_File_declared
9#define JOEDB_HAS_BROKEN_POSIX_LOCKING
40 size_t pread(
char *buffer,
size_t size,
int64_t offset)
const override;
41 void pwrite(
const char *buffer,
size_t size,
int64_t offset)
override;
size_t pread(char *buffer, size_t size, int64_t offset) const override
static void throw_last_error(const char *action, const char *file_name)
void pwrite(const char *buffer, size_t size, int64_t offset) override
Posix_FD & operator=(const Posix_FD &)=delete
bool try_exclusive_lock(int64_t start, int64_t size)
int64_t get_size() const override
void unlock(int64_t start, int64_t size) noexcept override
void shared_lock(int64_t start, int64_t size) override
void exclusive_lock(int64_t start, int64_t size) override
Posix_FD(const Posix_FD &)=delete
Posix_FD(int fd, Open_Mode mode)
Posix_File(const std::string &file_name, Open_Mode mode)
static constexpr bool lockable
Posix_File(int fd, Open_Mode mode)