30#ifndef _GLIBCXX_FS_FWD_H
31#define _GLIBCXX_FS_FWD_H 1
33#if __cplusplus >= 201703L
39namespace std _GLIBCXX_VISIBILITY(default)
41_GLIBCXX_BEGIN_NAMESPACE_VERSION
46#if _GLIBCXX_USE_CXX11_ABI
48inline namespace __cxx11 __attribute__((__abi_tag__ (
"cxx11"))) { }
57_GLIBCXX_BEGIN_NAMESPACE_CXX11
63_GLIBCXX_END_NAMESPACE_CXX11
72#if __cpp_impl_three_way_comparison >= 201907L
79 none = 0, not_found = -1, regular = 1, directory = 2, symlink = 3,
80 block = 4, character = 5, fifo = 6, socket = 7, unknown = 8
86 skip_existing = 1, overwrite_existing = 2, update_existing = 4,
88 copy_symlinks = 16, skip_symlinks = 32,
89 directories_only = 64, create_symlinks = 128, create_hard_links = 256
100 static_cast<__utype
>(__x) &
static_cast<__utype
>(__y));
109 static_cast<__utype
>(__x) |
static_cast<__utype
>(__y));
116 using __utype =
typename std::underlying_type<copy_options>::type;
118 static_cast<__utype
>(__x) ^
static_cast<__utype
>(__y));
125 using __utype =
typename std::underlying_type<copy_options>::type;
126 return static_cast<copy_options>(~static_cast<__utype>(__x));
131 {
return __x = __x & __y; }
135 {
return __x = __x | __y; }
139 {
return __x = __x ^ __y; }
173 return static_cast<perms
>(
174 static_cast<__utype
>(__x) &
static_cast<__utype
>(__y));
179 operator|(perms __x, perms __y)
noexcept
182 return static_cast<perms
>(
183 static_cast<__utype
>(__x) |
static_cast<__utype
>(__y));
190 using __utype =
typename std::underlying_type<perms>::type;
191 return static_cast<perms>(
192 static_cast<__utype
>(__x) ^
static_cast<__utype
>(__y));
197 operator~(
perms __x)
noexcept
199 using __utype =
typename std::underlying_type<perms>::type;
200 return static_cast<perms>(~static_cast<__utype>(__x));
205 {
return __x = __x & __y; }
209 {
return __x = __x | __y; }
213 {
return __x = __x ^ __y; }
232 static_cast<__utype
>(__x) &
static_cast<__utype
>(__y));
241 static_cast<__utype
>(__x) |
static_cast<__utype
>(__y));
248 using __utype =
typename std::underlying_type<perm_options>::type;
250 static_cast<__utype
>(__x) ^
static_cast<__utype
>(__y));
257 using __utype =
typename std::underlying_type<perm_options>::type;
258 return static_cast<perm_options>(~static_cast<__utype>(__x));
263 {
return __x = __x & __y; }
267 {
return __x = __x | __y; }
271 {
return __x = __x ^ __y; }
276 none = 0, follow_directory_symlink = 1, skip_permission_denied = 2
282 constexpr directory_options
283 operator&(directory_options __x, directory_options __y)
noexcept
286 return static_cast<directory_options
>(
287 static_cast<__utype
>(__x) &
static_cast<__utype
>(__y));
291 constexpr directory_options
292 operator|(directory_options __x, directory_options __y)
noexcept
295 return static_cast<directory_options
>(
296 static_cast<__utype
>(__x) |
static_cast<__utype
>(__y));
303 using __utype =
typename std::underlying_type<directory_options>::type;
305 static_cast<__utype
>(__x) ^
static_cast<__utype
>(__y));
312 using __utype =
typename std::underlying_type<directory_options>::type;
318 {
return __x = __x & __y; }
322 {
return __x = __x | __y; }
326 {
return __x = __x ^ __y; }
348 uintmax_t file_size(
const path&);
350 uintmax_t hard_link_count(
const path&);
374 uintmax_t remove_all(
const path&);
379_GLIBCXX_END_NAMESPACE_VERSION
copy_options
Bitmask type controlling effects of filesystem::copy
perms
Bitmask type representing file access permissions.
perm_options
Bitmask type controlling changes to permissions.
directory_options
Bitmask type controlling directory iteration.
__file_clock::time_point file_time_type
The type used for file timestamps.
file_type
Enumerated type representing the type of a file.
ISO C++ entities toplevel namespace is std.
constexpr bitset< _Nb > operator&(const bitset< _Nb > &__x, const bitset< _Nb > &__y) noexcept
Global bitwise operations on bitsets.
ISO C++ 2017 namespace for File System library.
The underlying type of an enum.
Information about a file's type and permissions.
The value type used by directory iterators.
Iterator type for traversing the entries in a single directory.
Iterator type for recursively traversing a directory hierarchy.
Information about free space on a disk.
Exception type thrown by the Filesystem library.