libstdc++
File System

Files

file  filesystem
 

Typedefs

using std::filesystem::file_time_type = __file_clock::time_point
 

Enumerations

enum class  std::filesystem::copy_options : unsigned short {
  none , skip_existing , overwrite_existing , update_existing ,
  recursive , copy_symlinks , skip_symlinks , directories_only ,
  create_symlinks , create_hard_links
}
 
enum class  std::filesystem::directory_options : unsigned char { none , follow_directory_symlink , skip_permission_denied }
 
enum class  std::filesystem::file_type : signed char {
  none , not_found , regular , directory ,
  symlink , block , character , fifo ,
  socket , unknown
}
 
enum class  std::filesystem::perm_options : unsigned { replace , add , remove , nofollow }
 
enum class  std::filesystem::perms : unsigned {
  none , owner_read , owner_write , owner_exec ,
  owner_all , group_read , group_write , group_exec ,
  group_all , others_read , others_write , others_exec ,
  others_all , all , set_uid , set_gid ,
  sticky_bit , mask , unknown
}
 

Functions

path std::filesystem::absolute (const path &__p)
 
path std::filesystem::absolute (const path &__p, error_code &__ec)
 
pathstd::filesystem::path::assign (string_type &&__source)
 
iterator std::filesystem::path::begin () const noexcept
 
path std::filesystem::canonical (const path &__p)
 
path std::filesystem::canonical (const path &__p, error_code &__ec)
 
int std::filesystem::path::compare (const string_type &__s) const noexcept
 
int std::filesystem::path::compare (const value_type *__s) const noexcept
 
void std::filesystem::copy (const path &__from, const path &__to)
 
void std::filesystem::copy (const path &__from, const path &__to, copy_options __options)
 
void std::filesystem::copy (const path &__from, const path &__to, copy_options __options, error_code &)
 
void std::filesystem::copy (const path &__from, const path &__to, error_code &__ec)
 
bool std::filesystem::copy_file (const path &__from, const path &__to)
 
bool std::filesystem::copy_file (const path &__from, const path &__to, copy_options __option)
 
bool std::filesystem::copy_file (const path &__from, const path &__to, copy_options __option, error_code &)
 
bool std::filesystem::copy_file (const path &__from, const path &__to, error_code &__ec)
 
void std::filesystem::copy_symlink (const path &__existing_symlink, const path &__new_symlink)
 
void std::filesystem::copy_symlink (const path &__existing_symlink, const path &__new_symlink, error_code &__ec) noexcept
 
bool std::filesystem::create_directories (const path &__p)
 
bool std::filesystem::create_directories (const path &__p, error_code &__ec)
 
bool std::filesystem::create_directory (const path &__p)
 
bool std::filesystem::create_directory (const path &__p, const path &attributes)
 
bool std::filesystem::create_directory (const path &__p, const path &attributes, error_code &__ec) noexcept
 
bool std::filesystem::create_directory (const path &__p, error_code &__ec) noexcept
 
void std::filesystem::create_directory_symlink (const path &__to, const path &__new_symlink)
 
void std::filesystem::create_directory_symlink (const path &__to, const path &__new_symlink, error_code &__ec) noexcept
 
void std::filesystem::create_hard_link (const path &__to, const path &__new_hard_link)
 
void std::filesystem::create_hard_link (const path &__to, const path &__new_hard_link, error_code &__ec) noexcept
 
void std::filesystem::create_symlink (const path &__to, const path &__new_symlink)
 
void std::filesystem::create_symlink (const path &__to, const path &__new_symlink, error_code &__ec) noexcept
 
path std::filesystem::current_path ()
 
void std::filesystem::current_path (const path &__p)
 
void std::filesystem::current_path (const path &__p, error_code &__ec) noexcept
 
path std::filesystem::current_path (error_code &__ec)
 
iterator std::filesystem::path::end () const noexcept
 
bool std::filesystem::equivalent (const path &__p1, const path &__p2)
 
bool std::filesystem::equivalent (const path &__p1, const path &__p2, error_code &__ec) noexcept
 
bool std::filesystem::exists (const path &__p)
 
bool std::filesystem::exists (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::exists (file_status) noexcept
 
path std::filesystem::path::extension () const
 
uintmax_t std::filesystem::file_size (const path &)
 
uintmax_t std::filesystem::file_size (const path &, error_code &) noexcept
 
path std::filesystem::path::filename () const
 
std::string std::filesystem::path::generic_string () const
 
template<typename _CharT , typename _Traits = std::char_traits<_CharT>, typename _Allocator = std::allocator<_CharT>>
std::basic_string< _CharT, _Traits, _Allocator > std::filesystem::path::generic_string (const _Allocator &__a=_Allocator()) const
 
std::u16string std::filesystem::path::generic_u16string () const
 
std::u32string std::filesystem::path::generic_u32string () const
 
std::string std::filesystem::path::generic_u8string () const
 
std::wstring std::filesystem::path::generic_wstring () const
 
uintmax_t std::filesystem::hard_link_count (const path &)
 
uintmax_t std::filesystem::hard_link_count (const path &, error_code &) noexcept
 
bool std::filesystem::path::has_extension () const noexcept
 
bool std::filesystem::path::has_stem () const noexcept
 
size_t std::filesystem::hash_value (const path &__p) noexcept
 
bool std::filesystem::path::is_absolute () const noexcept
 
bool std::filesystem::is_block_file (const path &__p)
 
bool std::filesystem::is_block_file (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_block_file (file_status __s) noexcept
 
bool std::filesystem::is_character_file (const path &__p)
 
bool std::filesystem::is_character_file (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_character_file (file_status __s) noexcept
 
bool std::filesystem::is_directory (const path &__p)
 
bool std::filesystem::is_directory (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_directory (file_status __s) noexcept
 
bool std::filesystem::is_empty (const path &__p)
 
bool std::filesystem::is_empty (const path &__p, error_code &__ec)
 
bool std::filesystem::is_fifo (const path &__p)
 
bool std::filesystem::is_fifo (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_fifo (file_status __s) noexcept
 
bool std::filesystem::is_other (const path &__p)
 
bool std::filesystem::is_other (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_other (file_status) noexcept
 
bool std::filesystem::is_regular_file (const path &__p)
 
bool std::filesystem::is_regular_file (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_regular_file (file_status) noexcept
 
bool std::filesystem::is_socket (const path &__p)
 
bool std::filesystem::is_socket (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_socket (file_status __s) noexcept
 
bool std::filesystem::is_symlink (const path &__p)
 
bool std::filesystem::is_symlink (const path &__p, error_code &__ec) noexcept
 
bool std::filesystem::is_symlink (file_status) noexcept
 
file_time_type std::filesystem::last_write_time (const path &)
 
file_time_type std::filesystem::last_write_time (const path &, error_code &) noexcept
 
void std::filesystem::last_write_time (const path &__p, file_time_type __new_time)
 
void std::filesystem::last_write_time (const path &__p, file_time_type __new_time, error_code &__ec) noexcept
 
pathstd::filesystem::path::make_preferred ()
 
copy_optionsstd::filesystem::operator&= (copy_options &__x, copy_options __y) noexcept
 
reference std::filesystem::path::iterator::operator* () const noexcept
 
iteratorstd::filesystem::path::iterator::operator++ () noexcept
 
template<typename _CharT >
__detail::_Path2< _CharT * > & std::filesystem::path::operator+= (_CharT __x)
 
pathstd::filesystem::path::operator+= (basic_string_view< value_type > __x)
 
pathstd::filesystem::path::operator+= (const string_type &__x)
 
pathstd::filesystem::path::operator+= (const value_type *__x)
 
pathstd::filesystem::path::operator+= (value_type __x)
 
iteratorstd::filesystem::path::iterator::operator-- () noexcept
 
pathstd::filesystem::path::operator= (path &&) noexcept
 
pathstd::filesystem::path::operator= (string_type &&__source)
 
constexpr copy_options std::filesystem::operator^ (copy_options __x, copy_options __y) noexcept
 
copy_optionsstd::filesystem::operator^= (copy_options &__x, copy_options __y) noexcept
 
constexpr copy_options std::filesystem::operator| (copy_options __x, copy_options __y) noexcept
 
copy_optionsstd::filesystem::operator|= (copy_options &__x, copy_options __y) noexcept
 
constexpr copy_options std::filesystem::operator~ (copy_options __x) noexcept
 
void std::filesystem::permissions (const path &, perms, perm_options, error_code &) noexcept
 
void std::filesystem::permissions (const path &__p, perms __prms, error_code &__ec) noexcept
 
void std::filesystem::permissions (const path &__p, perms __prms, perm_options __opts=perm_options::replace)
 
path std::filesystem::proximate (const path &__p, const path &__base, error_code &__ec)
 
path std::filesystem::proximate (const path &__p, const path &__base=current_path())
 
path std::filesystem::proximate (const path &__p, error_code &__ec)
 
path std::filesystem::read_symlink (const path &__p)
 
path std::filesystem::read_symlink (const path &__p, error_code &__ec)
 
path std::filesystem::relative (const path &__p, const path &__base, error_code &__ec)
 
path std::filesystem::relative (const path &__p, const path &__base=current_path())
 
path std::filesystem::relative (const path &__p, error_code &__ec)
 
bool std::filesystem::remove (const path &, error_code &) noexcept
 
bool std::filesystem::remove (const path &__p)
 
uintmax_t std::filesystem::remove_all (const path &)
 
uintmax_t std::filesystem::remove_all (const path &, error_code &)
 
void std::filesystem::rename (const path &__from, const path &__to)
 
void std::filesystem::rename (const path &__from, const path &__to, error_code &__ec) noexcept
 
void std::filesystem::resize_file (const path &__p, uintmax_t __size)
 
void std::filesystem::resize_file (const path &__p, uintmax_t __size, error_code &__ec) noexcept
 
space_info std::filesystem::space (const path &__p)
 
space_info std::filesystem::space (const path &__p, error_code &__ec) noexcept
 
file_status std::filesystem::status (const path &)
 
file_status std::filesystem::status (const path &, error_code &) noexcept
 
bool std::filesystem::status_known (file_status) noexcept
 
path std::filesystem::path::stem () const
 
std::string std::filesystem::path::string () const
 
template<typename _CharT , typename _Traits , typename _Allocator >
basic_string< _CharT, _Traits, _Allocator > std::filesystem::path::string (const _Allocator &__a) const
 
void swap (path &__lhs, path &__rhs) noexcept
 
void std::filesystem::path::swap (path &__rhs) noexcept
 
file_status std::filesystem::symlink_status (const path &)
 
file_status std::filesystem::symlink_status (const path &, error_code &) noexcept
 
path std::filesystem::temp_directory_path ()
 
path std::filesystem::temp_directory_path (error_code &__ec)
 
std::u16string std::filesystem::path::u16string () const
 
std::u32string std::filesystem::path::u32string () const
 
template<typename _InputIterator , typename _Require = __detail::_Path2<_InputIterator>, typename _CharT = __detail::__value_type_is_char_or_char8_t<_InputIterator>>
path u8path (_InputIterator __first, _InputIterator __last)
 
template<typename _Source , typename _Require = __detail::_Path<_Source>, typename _CharT = __detail::__value_type_is_char_or_char8_t<_Source>>
path u8path (const _Source &__source)
 
std::string std::filesystem::path::u8string () const
 
path std::filesystem::weakly_canonical (const path &__p)
 
path std::filesystem::weakly_canonical (const path &__p, error_code &__ec)
 
std::wstring std::filesystem::path::wstring () const
 
constexpr perms std::filesystem::operator| (perms __x, perms __y) noexcept
 
constexpr perms std::filesystem::operator^ (perms __x, perms __y) noexcept
 
constexpr perms std::filesystem::operator~ (perms __x) noexcept
 
permsstd::filesystem::operator&= (perms &__x, perms __y) noexcept
 
permsstd::filesystem::operator|= (perms &__x, perms __y) noexcept
 
permsstd::filesystem::operator^= (perms &__x, perms __y) noexcept
 
constexpr perm_options std::filesystem::operator| (perm_options __x, perm_options __y) noexcept
 
constexpr perm_options std::filesystem::operator^ (perm_options __x, perm_options __y) noexcept
 
constexpr perm_options std::filesystem::operator~ (perm_options __x) noexcept
 
perm_optionsstd::filesystem::operator&= (perm_options &__x, perm_options __y) noexcept
 
perm_optionsstd::filesystem::operator|= (perm_options &__x, perm_options __y) noexcept
 
perm_optionsstd::filesystem::operator^= (perm_options &__x, perm_options __y) noexcept
 
constexpr directory_options std::filesystem::operator| (directory_options __x, directory_options __y) noexcept
 
constexpr directory_options std::filesystem::operator^ (directory_options __x, directory_options __y) noexcept
 
constexpr directory_options std::filesystem::operator~ (directory_options __x) noexcept
 
directory_optionsstd::filesystem::operator&= (directory_options &__x, directory_options __y) noexcept
 
directory_optionsstd::filesystem::operator|= (directory_options &__x, directory_options __y) noexcept
 
directory_optionsstd::filesystem::operator^= (directory_options &__x, directory_options __y) noexcept
 
directory_iterator begin (directory_iterator __iter) noexcept
 
directory_iterator end (directory_iterator) noexcept
 
recursive_directory_iterator begin (recursive_directory_iterator __iter) noexcept
 
recursive_directory_iterator end (recursive_directory_iterator) noexcept
 

Detailed Description

Utilities for performing operations on file systems and their components, such as paths, regular files, and directories.

Typedef Documentation

◆ file_time_type

The type used for file timestamps.

Definition at line 314 of file bits/fs_fwd.h.

Enumeration Type Documentation

◆ copy_options

enum std::filesystem::copy_options : unsigned short
strong

Bitmask type controlling effects of filesystem::copy

Definition at line 84 of file bits/fs_fwd.h.

◆ directory_options

enum std::filesystem::directory_options : unsigned char
strong

Bitmask type controlling directory iteration.

Definition at line 263 of file bits/fs_fwd.h.

◆ file_type

enum std::filesystem::file_type : signed char
strong

Enumerated type representing the type of a file.

Definition at line 78 of file bits/fs_fwd.h.

◆ perm_options

enum std::filesystem::perm_options : unsigned
strong

Bitmask type controlling changes to permissions.

Definition at line 209 of file bits/fs_fwd.h.

◆ perms

enum std::filesystem::perms : unsigned
strong

Bitmask type representing file access permissions.

Definition at line 140 of file bits/fs_fwd.h.

Function Documentation

◆ begin() [1/2]

directory_iterator begin ( directory_iterator  __iter)
related

Enable range-based for using directory_iterator.

e.g. for (auto& entry : std::filesystem::directory_iterator(".")) ...

Definition at line 451 of file bits/fs_dir.h.

◆ begin() [2/2]

Enable range-based for using recursive_directory_iterator.

e.g. for (auto& entry : recursive_directory_iterator(".")) ...

Definition at line 557 of file bits/fs_dir.h.

◆ end() [1/2]

Return a past-the-end directory_iterator.

Definition at line 456 of file bits/fs_dir.h.

◆ end() [2/2]

Return a past-the-end recursive_directory_iterator.

Definition at line 562 of file bits/fs_dir.h.

◆ u8path() [1/2]

template<typename _InputIterator , typename _Require = __detail::_Path2<_InputIterator>, typename _CharT = __detail::__value_type_is_char_or_char8_t<_InputIterator>>
path u8path ( _InputIterator  __first,
_InputIterator  __last 
)
related

Create a path from a UTF-8-encoded sequence of char

Definition at line 813 of file bits/fs_path.h.

◆ u8path() [2/2]

template<typename _Source , typename _Require = __detail::_Path<_Source>, typename _CharT = __detail::__value_type_is_char_or_char8_t<_Source>>
path u8path ( const _Source &  __source)
related

Create a path from a UTF-8-encoded sequence of char

Definition at line 835 of file bits/fs_path.h.