30 #ifndef _GLIBCXX_EXPERIMENTAL_FS_OPS_H    31 #define _GLIBCXX_EXPERIMENTAL_FS_OPS_H 1    33 #if __cplusplus < 201103L    39 namespace std _GLIBCXX_VISIBILITY(default)
    41 namespace experimental
    47 _GLIBCXX_BEGIN_NAMESPACE_VERSION
    54   path absolute(
const path& __p, 
const path& __base = current_path());
    56   path canonical(
const path& __p, 
const path& __base = current_path());
    57   path canonical(
const path& __p, error_code& __ec);
    58   path canonical(
const path& __p, 
const path& __base, error_code& __ec);
    61   copy(
const path& __from, 
const path& __to)
    62   { copy(__from, __to, copy_options::none); }
    65   copy(
const path& __from, 
const path& __to, error_code& __ec) noexcept
    66   { copy(__from, __to, copy_options::none, __ec); }
    68   void copy(
const path& __from, 
const path& __to, 
copy_options __options);
    69   void copy(
const path& __from, 
const path& __to, 
copy_options __options,
    70             error_code& __ec) noexcept;
    73   copy_file(
const path& __from, 
const path& __to)
    74   { 
return copy_file(__from, __to, copy_options::none); }
    77   copy_file(
const path& __from, 
const path& __to, error_code& __ec) noexcept
    78   { 
return copy_file(__from, __to, copy_options::none, __ec); }
    80   bool copy_file(
const path& __from, 
const path& __to, 
copy_options __option);
    81   bool copy_file(
const path& __from, 
const path& __to, 
copy_options __option,
    82                  error_code& __ec) noexcept;
    84   void copy_symlink(
const path& __existing_symlink, 
const path& __new_symlink);
    85   void copy_symlink(
const path& __existing_symlink, 
const path& __new_symlink,
    86                     error_code& __ec) noexcept;
    88   bool create_directories(
const path& __p);
    89   bool create_directories(
const path& __p, error_code& __ec) noexcept;
    91   bool create_directory(
const path& __p);
    92   bool create_directory(
const path& __p, error_code& __ec) noexcept;
    94   bool create_directory(
const path& __p, 
const path& attributes);
    95   bool create_directory(
const path& __p, 
const path& attributes,
    96                         error_code& __ec) noexcept;
    98   void create_directory_symlink(
const path& __to, 
const path& __new_symlink);
    99   void create_directory_symlink(
const path& __to, 
const path& __new_symlink,
   100                                 error_code& __ec) noexcept;
   102   void create_hard_link(
const path& __to, 
const path& __new_hard_link);
   103   void create_hard_link(
const path& __to, 
const path& __new_hard_link,
   104                         error_code& __ec) noexcept;
   106   void create_symlink(
const path& __to, 
const path& __new_symlink);
   107   void create_symlink(
const path& __to, 
const path& __new_symlink,
   108                       error_code& __ec) noexcept;
   111   path current_path(error_code& __ec);
   112   void current_path(
const path& __p);
   113   void current_path(
const path& __p, error_code& __ec) noexcept;
   116   equivalent(
const path& __p1, 
const path& __p2);
   119   equivalent(
const path& __p1, 
const path& __p2, error_code& __ec) noexcept;
   122   exists(file_status __s) noexcept
   123   { 
return status_known(__s) && __s.type() != file_type::not_found; }
   126   exists(
const path& __p)
   127   { 
return exists(status(__p)); }
   130   exists(
const path& __p, error_code& __ec) noexcept
   132     auto __s = status(__p, __ec);
   133     if (status_known(__s))
   138   uintmax_t file_size(
const path& __p);
   139   uintmax_t file_size(
const path& __p, error_code& __ec) noexcept;
   141   uintmax_t hard_link_count(
const path& __p);
   142   uintmax_t hard_link_count(
const path& __p, error_code& __ec) noexcept;
   145   is_block_file(file_status __s) noexcept
   146   { 
return __s.type() == file_type::block; }
   149   is_block_file(
const path& __p)
   150   { 
return is_block_file(status(__p)); }
   153   is_block_file(
const path& __p, error_code& __ec) noexcept
   154   { 
return is_block_file(status(__p, __ec)); }
   157   is_character_file(file_status __s) noexcept
   158   { 
return __s.type() == file_type::character; }
   161   is_character_file(
const path& __p)
   162   { 
return is_character_file(status(__p)); }
   165   is_character_file(
const path& __p, error_code& __ec) noexcept
   166   { 
return is_character_file(status(__p, __ec)); }
   169   is_directory(file_status __s) noexcept
   170   { 
return __s.type() == file_type::directory; }
   173   is_directory(
const path& __p)
   174   { 
return is_directory(status(__p)); }
   177   is_directory(
const path& __p, error_code& __ec) noexcept
   178   { 
return is_directory(status(__p, __ec)); }
   180   bool is_empty(
const path& __p);
   181   bool is_empty(
const path& __p, error_code& __ec) noexcept;
   184   is_fifo(file_status __s) noexcept
   185   { 
return __s.type() == file_type::fifo; }
   188   is_fifo(
const path& __p)
   189   { 
return is_fifo(status(__p)); }
   192   is_fifo(
const path& __p, error_code& __ec) noexcept
   193   { 
return is_fifo(status(__p, __ec)); }
   196   is_other(file_status __s) noexcept
   198     return exists(__s) && !is_regular_file(__s) && !is_directory(__s)
   203   is_other(
const path& __p)
   204   { 
return is_other(status(__p)); }
   207   is_other(
const path& __p, error_code& __ec) noexcept
   208   { 
return is_other(status(__p, __ec)); }
   211   is_regular_file(file_status __s) noexcept
   212   { 
return __s.type() == file_type::regular; }
   215   is_regular_file(
const path& __p)
   216   { 
return is_regular_file(status(__p)); }
   219   is_regular_file(
const path& __p, error_code& __ec) noexcept
   220   { 
return is_regular_file(status(__p, __ec)); }
   223   is_socket(file_status __s) noexcept
   224   { 
return __s.type() == file_type::socket; }
   227   is_socket(
const path& __p)
   228   { 
return is_socket(status(__p)); }
   231   is_socket(
const path& __p, error_code& __ec) noexcept
   232   { 
return is_socket(status(__p, __ec)); }
   235   is_symlink(file_status __s) noexcept
   236   { 
return __s.type() == file_type::symlink; }
   239   is_symlink(
const path& __p)
   240   { 
return is_symlink(symlink_status(__p)); }
   243   is_symlink(
const path& __p, error_code& __ec) noexcept
   244   { 
return is_symlink(symlink_status(__p, __ec)); }
   246   file_time_type  last_write_time(
const path& __p);
   247   file_time_type  last_write_time(
const path& __p, error_code& __ec) noexcept;
   248   void last_write_time(
const path& __p, file_time_type __new_time);
   249   void last_write_time(
const path& __p, file_time_type __new_time,
   250                        error_code& __ec) noexcept;
   252   void permissions(
const path& __p, 
perms __prms);
   253   void permissions(
const path& __p, 
perms __prms, error_code& __ec) noexcept;
   255   path read_symlink(
const path& __p);
   256   path read_symlink(
const path& __p, error_code& __ec);
   258   bool remove(
const path& __p);
   259   bool remove(
const path& __p, error_code& __ec) noexcept;
   261   uintmax_t remove_all(
const path& __p);
   262   uintmax_t remove_all(
const path& __p, error_code& __ec) noexcept;
   264   void rename(
const path& __from, 
const path& __to);
   265   void rename(
const path& __from, 
const path& __to, error_code& __ec) noexcept;
   267   void resize_file(
const path& __p, uintmax_t __size);
   268   void resize_file(
const path& __p, uintmax_t __size, error_code& __ec) noexcept;
   270   space_info space(
const path& __p);
   271   space_info space(
const path& __p, error_code& __ec) noexcept;
   273   file_status status(
const path& __p);
   274   file_status status(
const path& __p, error_code& __ec) noexcept;
   276   inline bool status_known(file_status __s) noexcept
   277   { 
return __s.type() != file_type::none; }
   279   file_status symlink_status(
const path& __p);
   280   file_status symlink_status(
const path& __p, error_code& __ec) noexcept;
   282   path system_complete(
const path& __p);
   283   path system_complete(
const path& __p, error_code& __ec);
   285   path temp_directory_path();
   286   path temp_directory_path(error_code& __ec);
   289 _GLIBCXX_END_NAMESPACE_VERSION
   297 #endif // _GLIBCXX_EXPERIMENTAL_FS_OPS_H 
ISO C++ entities toplevel namespace is std. 
 
copy_options
Bitmask type.