blob: 47069b295c63a5bc580269283442765cb09bcb86 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
#include "cru/base/io/OpenFileFlag.h"
namespace cru::io {
bool CheckOpenFileFlag(OpenFileFlag flags) {
auto has = [flags](OpenFileFlag flag) { return flags & flag; };
if ((has(OpenFileFlags::Append) || has(OpenFileFlags::Truncate) ||
has(OpenFileFlags::Create)) &&
!has(OpenFileFlags::Write)) {
return false;
}
if (has(OpenFileFlags::Truncate) && has(OpenFileFlags::Append)) {
return false;
}
return true;
}
} // namespace cru::io
|