Filesystem TS
Technical Specifications
Collaboration diagram for Filesystem TS:

## Files

file | experimental/filesystem

## Typedefs

using | std::experimental::filesystem::file_time_type = std::chrono::system_clock::time_point

## Enumerations

enum class | std::experimental::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::experimental::filesystem::directory_options : unsigned char { none , follow_directory_symlink , skip_permission_denied }
enum class | std::experimental::filesystem::file_type : signed char { none , not_found , regular , directory , symlink , block , character , fifo , socket , unknown }
enum class | std::experimental::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 , add_perms , remove_perms , symlink_nofollow }

## Functions

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

## Detailed Description

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

ISO/IEC TS 18822:2015 C++ File System Technical Specification

Since
  C++11

Remarks
  Link using `-lstdc++fs` to use these types and functions.

## Typedef Documentation

## file_time_type

using std::experimental::filesystem::v1::file_time_type = typedef std::chrono::system_clock::time_point

The type used for file timestamps.

Definition at line 273 of file experimental/bits/fs_fwd.h.

## Enumeration Type Documentation

## copy_options

enum std::experimental::filesystem::v1::copy_options : unsigned short

strong

Bitmask type controlling effects of `filesystem::copy`

Definition at line 95 of file experimental/bits/fs_fwd.h.

## directory_options

enum std::experimental::filesystem::v1::directory_options : unsigned char

strong

Bitmask type controlling directory iteration.

Definition at line 222 of file experimental/bits/fs_fwd.h.

## file_type

enum std::experimental::filesystem::v1::file_type : signed char

strong

Enumerated type representing the type of a file.

Definition at line 89 of file experimental/bits/fs_fwd.h.

## perms

enum std::experimental::filesystem::v1::perms : unsigned

strong

Bitmask type representing file access permissions.

Definition at line 150 of file experimental/bits/fs_fwd.h.