acme
Foundational cross-platform layer of the ca2 framework
Loading...
Searching...
No Matches
filesystem.h
1// Created by camilo on 2021-08-09 14:40 BRT <3ThomasBorregaardSorensen!!
2#pragma once
3
4
5enum enum_seek
6{
7
8 e_seek_set = 0x0,
9 e_seek_current = 0x1,
10 e_seek_from_end = 0x2,
11
12};
13
14
15namespace file
16{
17
18
19 enum enum_open : ::u64
20 {
21
22 e_open_none = 0ull,
23 e_open_read = 0x000001ull,
24 e_open_write = 0x000002ull,
25 e_open_read_write = 0x000003ull,
26 e_open_share_compat = 0x000000ull,
27 e_open_share_exclusive = 0x000010ull,
28 e_open_share_deny_write = 0x000020ull,
29 e_open_share_deny_read = 0x000030ull,
30 e_open_share_deny_none = 0x000040ull,
31 e_open_share_mask = e_open_share_deny_none | e_open_share_deny_read | e_open_share_deny_write | e_open_share_exclusive,
32 e_open_no_inherit = 0x000080ull,
33 e_open_create = 0x001000ull,
34 e_open_no_truncate = 0x002000ull,
35 e_open_text = 0x004000ull, // type_text and type_binary are used in
36 e_open_binary = 0x008000ull, // derived classes only
37 e_open_defer_create_directory = 0x010000ull,
38 e_open_update_unknown_length_supported = 0x020000ull,
39 e_open_truncate = 0x040000ull,
40 e_open_no_callstack = 0x080000ull,
41 e_open_no_cache = 0x100000ull,
42 e_open_no_share_violation_wait = 0x200000ull,
43 e_open_no_follow_uniform_resource_locator = 0x400000ull,
44 e_open_no_exception_on_open = 0x10000000ull,
45 e_open_file = 0x20000000ull,
46 e_open_no_exception_if_not_found = 0x40000000ull,
47 _e_open_delete = 0x80000000ull,
48 _e_open_stat = 0x100000000ull,
49 _e_open_set_stat = 0x200000000ull,
50 _e_open_create_directory = 0x400000000ull,
51 _e_open_set_current_directory = 0x800000000ull,
52
53
54 };
55
56
57 enum enum_state
58 {
59
60 e_state_none = 0,
61 e_state_end_of_file = 1,
62 e_state_read_line_truncated = 2,
63
64 };
65
66
67 DECLARE_C_FLAG(e_open, enum_open);
68 DECLARE_C_FLAG(e_state, enum_state);
69
70
71} // namespace file
72
Definition filesystem.h:16