aboutsummaryrefslogtreecommitdiff
path: root/include/cru/common/io/OpenFileFlag.h
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2023-10-03 23:52:51 +0800
committercrupest <crupest@outlook.com>2023-10-04 00:13:26 +0800
commitb09a5c7cea5b4eb32b3318c97b046f018b297d8c (patch)
tree46e21a6536fd0dcbca1bb0e3ec3a55cc17c110e6 /include/cru/common/io/OpenFileFlag.h
parent21985bda6c2631c1b78d3a0e9987f67dffca5bad (diff)
downloadcru-b09a5c7cea5b4eb32b3318c97b046f018b297d8c.tar.gz
cru-b09a5c7cea5b4eb32b3318c97b046f018b297d8c.tar.bz2
cru-b09a5c7cea5b4eb32b3318c97b046f018b297d8c.zip
...
Diffstat (limited to 'include/cru/common/io/OpenFileFlag.h')
-rw-r--r--include/cru/common/io/OpenFileFlag.h27
1 files changed, 27 insertions, 0 deletions
diff --git a/include/cru/common/io/OpenFileFlag.h b/include/cru/common/io/OpenFileFlag.h
index bca1d737..fd8b6e2c 100644
--- a/include/cru/common/io/OpenFileFlag.h
+++ b/include/cru/common/io/OpenFileFlag.h
@@ -9,11 +9,38 @@ struct OpenFileFlagTag {};
using OpenFileFlag = Bitmask<details::OpenFileFlagTag>;
struct OpenFileFlags {
+ /**
+ * \brief for reading
+ */
static constexpr OpenFileFlag Read{0x1};
+
+ /**
+ * \brief for writing
+ */
static constexpr OpenFileFlag Write{0x2};
+
+ /**
+ * \brief when writing, seek to end first
+ * Only effective for writing.
+ */
static constexpr OpenFileFlag Append{0x4};
+
+ /**
+ * \brief when writing, truncate the file to empty
+ * Only effective for writing.
+ * So the content is erased! Be careful!
+ */
static constexpr OpenFileFlag Truncate{0x8};
+
+ /**
+ * \brief when writing, if the file does not exist, create one
+ * Only effective for writing.
+ */
static constexpr OpenFileFlag Create{0x10};
+
+ /**
+ * TODO: ???
+ */
static constexpr OpenFileFlag Exclusive{0x20};
};
} // namespace cru::io