You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/standard-library/filesystem-enumerations.md
+8Lines changed: 8 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -106,6 +106,14 @@ enum class file_type {
106
106
|`socket`|7|Represents a socket on UNIX based systems. (Not supported.)|
107
107
|`unknown`|8|Represents a file whose status cannot be determined.|
108
108
109
+
## <a name="perm_options"></a> perm_options
110
+
111
+
Includes values `replace`, `add`, `remove`, and `nofollow`.
112
+
113
+
```cpp
114
+
enum class perm_options;
115
+
```
116
+
109
117
## <aname="perms"></a> perms
110
118
111
119
Flags for file permissions. The supported values are essentially “readonly” and all. For a readonly file, none of the *_write bits are set. Otherwise the `all` bit (0x0777) is set.
@@ -385,6 +386,14 @@ The functions set the permissions for the pathname designated by *pval* to `mask
385
386
386
387
If `mask & perms::add_perms` the functions set the permissions to `status(pval).permissions() | mask & perms::mask`. Otherwise, if `mask & perms::remove_perms` the functions set the permissions to `status(pval).permissions() & ~(mask & perms::mask)`. Otherwise, the functions set the permissions to `mask & perms::mask`.
387
388
389
+
## <a name="proximate"></a> proximate
390
+
391
+
```cpp
392
+
path proximate(const path& p, error_code& ec);
393
+
path proximate(const path& p, const path& base = current_path());
The functions report an error and return `path()` if `!is_symlink(pval)`. Otherwise, the functions return an object of type `path` containing the symbolic link.
396
405
406
+
## <a name="relative"></a> relative
407
+
408
+
```cpp
409
+
path relative(const path& p, error_code& ec);
410
+
path relative(const path& p, const path& base = current_path());
The first function behaves the same as `path(source)` and the second function behaves the same as `path(first, last)` except that the designated source in each case is taken as a sequence of char elements encoded as UTF-8, regardless of the filesystem.
Copy file name to clipboardExpand all lines: docs/standard-library/filesystem.md
+1Lines changed: 1 addition & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -110,6 +110,7 @@ For more information and code examples, see [File System Navigation (C++)](../st
110
110
|[copy_options](../standard-library/filesystem-enumerations.md#copy_options)|An enumeration that is used with [copy_file](../standard-library/filesystem-functions.md#copy_file) and determines behavior if a destination file already exists.|
111
111
|[directory_options](../standard-library/filesystem-enumerations.md#directory_options)|An enumeration that specifies options for directory iterators.|
112
112
|[file_type](../standard-library/filesystem-enumerations.md#file_type)|An enumeration for file types.|
@@ -68,6 +69,19 @@ The arguments to the template function must be *mutex types*, except that calls
68
69
69
70
The function locks all of its arguments without deadlock by calls to `lock`, `try_lock`, and `unlock`. If a call to `lock` or `try_lock` throws an exception, the function calls `unlock` on any of the mutex objects that were successfully locked before rethrowing the exception.
Represents an object that can be passed to the constructor for [unique_lock](../standard-library/unique-lock-class.md) to indicate that the constructor should try to unlock the `mutex` that is also being passed to it without blocking.
Copy file name to clipboardExpand all lines: docs/standard-library/mutex.md
+3Lines changed: 3 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -48,6 +48,7 @@ A mutex type is also known as a *lockable type*. If it does not provide the memb
48
48
|[mutex Class (C++ Standard Library)](../standard-library/mutex-class-stl.md)|Represents a mutex type. Use objects of this type to enforce mutual exclusion within a program.|
49
49
|[recursive_mutex Class](../standard-library/recursive-mutex-class.md)|Represents a mutex type. In constrast to the `mutex` class, the behavior of calling locking methods for objects that are already locked is well-defined.|
50
50
|[recursive_timed_mutex Class](../standard-library/recursive-timed-mutex-class.md)|Represents a timed mutex type. Use objects of this type to enforce mutual exclusion that has time-limited blocking within a program. Unlike objects of type `timed_mutex`, the effect of calling locking methods for `recursive_timed_mutex` objects is well-defined.|
|[timed_mutex Class](../standard-library/timed-mutex-class.md)|Represents a timed mutex type. Use objects of this type to enforce mutual exclusion that has time-limited blocking within a program.|
52
53
|[unique_lock Class](../standard-library/unique-lock-class.md)|Represents a template that can be instantiated to create objects that manage the locking and unlocking of a `mutex`.|
53
54
@@ -57,6 +58,8 @@ A mutex type is also known as a *lockable type*. If it does not provide the memb
57
58
|----------|-----------------|
58
59
|[call_once](../standard-library/mutex-functions.md#call_once)|Provides a mechanism for calling a specified callable object exactly once during execution.|
59
60
|[lock](../standard-library/mutex-functions.md#lock)|Attempts to lock all arguments without deadlock.|
0 commit comments