template <class Diagnostics, move_constructible Handle, integral Offset, std::invocable<Handle&, Offset, std::span<std::byte>> auto Read, std::invocable<> auto MakeInvalidHandle = &DefaultMakeInvalidHandle<Handle>>
class File
Defined at line 59 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
elfldltl::File
<Handle
, Offset, Read, MakeInvalidHandle> implements the File
API (see memory.h) by holding a Handle object and calling Read as a function
fit::result
<
...>(Handle
&
, Offset, std::span
<byte
>) that returns some error
value that Diagnostics::SystemError can handle. MakeInvalidHandle can be
supplied if default-construction isn't the way.
Public Methods
void File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> (const File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> & )
Defined at line 63 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
void File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> (File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> && )
Defined at line 65 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
void File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> (Diagnostics & diag)
Defined at line 66 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
void File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> (Handle handle, Diagnostics & diag)
Defined at line 70 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> & operator= (const File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> & )
Defined at line 75 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> & operator= (File<Diagnostics, Handle, Offset, Read, MakeInvalidHandle> && )
Defined at line 77 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
const Handle & get ()
Defined at line 79 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
Handle release ()
Defined at line 81 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
template <typename T>
std::optional<T> ReadFromFile (Offset offset)
Defined at line 84 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
template <typename T, ReadArrayFromFileAllocator<T> Allocator>
auto ReadArrayFromFile (off_t offset, Allocator && allocator, size_t count)
Defined at line 92 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
template <typename T, ReadArrayFromFileAllocator<T> Allocator>
auto ReadArrayFromFile (off_t offset, Allocator && allocator, size_t count)
Defined at line 92 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
template <typename T, ReadArrayFromFileAllocator<T> Allocator>
auto ReadArrayFromFile (off_t offset, Allocator && allocator, size_t count)
Defined at line 92 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
Protected Methods
Handle & handle ()
Defined at line 104 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h
const Handle & handle ()
Defined at line 105 of file ../../src/lib/elfldltl/include/lib/elfldltl/file.h