11#ifndef INCGUARD_MGL_FILE_THROWING_HANDLE_H_1612516463
12#define INCGUARD_MGL_FILE_THROWING_HANDLE_H_1612516463
43 [[nodiscard]]
constexpr bool IsOpen() const noexcept
45 return (_work) ? _work->IsOpen() :
false;
48 size_t Read(
void *buffer,
size_t size);
49 size_t Write(
const void *buffer,
size_t size);
52 size_t Skip(
size_t size);
54 [[nodiscard]]
bool IsEOF();
68 : _work(std::move(other._work))
85 _work = std::move(other._work);
文字列の参照のみを行うファイルパスクラス
Definition mgl_file_path_view.h:20
例外を発生させるファイルハンドルクラス
Definition mgl_file_throwing_handle.h:20
bool IsEOF()
ファイルストリームが終端に達しているかを取得
Definition mgl_file_throwing_handle.cc:193
size_t GetOffset()
ストリーム位置を取得
Definition mgl_file_throwing_handle.cc:172
void Close()
ファイルをクローズ
Definition mgl_file_throwing_handle.cc:57
ThrowingHandle & operator=(ThrowingHandle &&other) noexcept
ムーブ代入演算
Definition mgl_file_throwing_handle.h:79
constexpr ThrowingHandle() noexcept
コンストラクタ
Definition mgl_file_throwing_handle.h:27
size_t Seek(SeekType seekType, int32_t offset)
ストリーム位置を設定
Definition mgl_file_throwing_handle.cc:123
void Open(const PathView &path, OpenMode mode=OpenMode::Read)
ファイルをオープン
Definition mgl_file_throwing_handle.cc:40
constexpr bool IsOpen() const noexcept
ファイルがオープンされているかを取得
Definition mgl_file_throwing_handle.h:43
ThrowingHandle(ThrowingHandle &&other) noexcept
ムーブコンストラクタ
Definition mgl_file_throwing_handle.h:67
size_t Skip(size_t size)
ストリーム位置をスキップ
Definition mgl_file_throwing_handle.cc:159
size_t GetSize()
オープンしているファイルのサイズを取得
Definition mgl_file_throwing_handle.cc:213
STL::unique_ptr< AccessWork > AccessWorkPtr
ファイルアクセスのためのワークのポインタ型
Definition mgl_file_access_work.h:130
SeekType
シークタイプ
Definition mgl_file_defs.h:63
OpenMode
オープンモード
Definition mgl_file_defs.h:48