tmp/tmppmzcgvgx/{from.md → to.md}
RENAMED
|
@@ -4,17 +4,20 @@
|
|
| 4 |
|
| 5 |
The header `<source_location>` defines the class `source_location` that
|
| 6 |
provides a means to obtain source location information.
|
| 7 |
|
| 8 |
``` cpp
|
|
|
|
| 9 |
namespace std {
|
| 10 |
struct source_location;
|
| 11 |
}
|
| 12 |
```
|
| 13 |
|
| 14 |
### Class `source_location` <a id="support.srcloc.class">[[support.srcloc.class]]</a>
|
| 15 |
|
|
|
|
|
|
|
| 16 |
``` cpp
|
| 17 |
namespace std {
|
| 18 |
struct source_location {
|
| 19 |
// source location construction
|
| 20 |
static consteval source_location current() noexcept;
|
|
@@ -34,13 +37,13 @@ namespace std {
|
|
| 34 |
};
|
| 35 |
}
|
| 36 |
```
|
| 37 |
|
| 38 |
The type `source_location` meets the *Cpp17DefaultConstructible*,
|
| 39 |
-
*Cpp17CopyConstructible*, *Cpp17CopyAssignable*,
|
| 40 |
-
|
| 41 |
-
|
| 42 |
following conditions are `true`:
|
| 43 |
|
| 44 |
- `is_nothrow_move_constructible_v<source_location>`
|
| 45 |
- `is_nothrow_move_assignable_v<source_location>`
|
| 46 |
- `is_nothrow_swappable_v<source_location>`
|
|
@@ -73,11 +76,11 @@ static consteval source_location current() noexcept;
|
|
| 73 |
|
| 74 |
*Returns:*
|
| 75 |
|
| 76 |
- When invoked by a function call whose *postfix-expression* is a
|
| 77 |
(possibly parenthesized) *id-expression* naming `current`, returns a
|
| 78 |
-
`source_location` with an implementation-defined value. The value
|
| 79 |
should be affected by `#line` [[cpp.line]] in the same manner as for
|
| 80 |
\_\_LINE\_\_ and \_\_FILE\_\_. The values of the exposition-only data
|
| 81 |
members of the returned `source_location` object are indicated in
|
| 82 |
[[support.srcloc.current]].
|
| 83 |
- Otherwise, when invoked in some other way, returns a `source_location`
|
|
@@ -122,11 +125,12 @@ void g() {
|
|
| 122 |
|
| 123 |
``` cpp
|
| 124 |
constexpr source_location() noexcept;
|
| 125 |
```
|
| 126 |
|
| 127 |
-
The data members are initialized with valid but unspecified
|
|
|
|
| 128 |
|
| 129 |
#### Observers <a id="support.srcloc.obs">[[support.srcloc.obs]]</a>
|
| 130 |
|
| 131 |
``` cpp
|
| 132 |
constexpr uint_least32_t line() const noexcept;
|
|
|
|
| 4 |
|
| 5 |
The header `<source_location>` defines the class `source_location` that
|
| 6 |
provides a means to obtain source location information.
|
| 7 |
|
| 8 |
``` cpp
|
| 9 |
+
// all freestanding
|
| 10 |
namespace std {
|
| 11 |
struct source_location;
|
| 12 |
}
|
| 13 |
```
|
| 14 |
|
| 15 |
### Class `source_location` <a id="support.srcloc.class">[[support.srcloc.class]]</a>
|
| 16 |
|
| 17 |
+
#### General <a id="support.srcloc.class.general">[[support.srcloc.class.general]]</a>
|
| 18 |
+
|
| 19 |
``` cpp
|
| 20 |
namespace std {
|
| 21 |
struct source_location {
|
| 22 |
// source location construction
|
| 23 |
static consteval source_location current() noexcept;
|
|
|
|
| 37 |
};
|
| 38 |
}
|
| 39 |
```
|
| 40 |
|
| 41 |
The type `source_location` meets the *Cpp17DefaultConstructible*,
|
| 42 |
+
*Cpp17CopyConstructible*, *Cpp17CopyAssignable*, *Cpp17Swappable*, and
|
| 43 |
+
*Cpp17Destructible* requirements
|
| 44 |
+
[[utility.arg.requirements]], [[swappable.requirements]]. All of the
|
| 45 |
following conditions are `true`:
|
| 46 |
|
| 47 |
- `is_nothrow_move_constructible_v<source_location>`
|
| 48 |
- `is_nothrow_move_assignable_v<source_location>`
|
| 49 |
- `is_nothrow_swappable_v<source_location>`
|
|
|
|
| 76 |
|
| 77 |
*Returns:*
|
| 78 |
|
| 79 |
- When invoked by a function call whose *postfix-expression* is a
|
| 80 |
(possibly parenthesized) *id-expression* naming `current`, returns a
|
| 81 |
+
`source_location` with an *implementation-defined* value. The value
|
| 82 |
should be affected by `#line` [[cpp.line]] in the same manner as for
|
| 83 |
\_\_LINE\_\_ and \_\_FILE\_\_. The values of the exposition-only data
|
| 84 |
members of the returned `source_location` object are indicated in
|
| 85 |
[[support.srcloc.current]].
|
| 86 |
- Otherwise, when invoked in some other way, returns a `source_location`
|
|
|
|
| 125 |
|
| 126 |
``` cpp
|
| 127 |
constexpr source_location() noexcept;
|
| 128 |
```
|
| 129 |
|
| 130 |
+
*Effects:* The data members are initialized with valid but unspecified
|
| 131 |
+
values.
|
| 132 |
|
| 133 |
#### Observers <a id="support.srcloc.obs">[[support.srcloc.obs]]</a>
|
| 134 |
|
| 135 |
``` cpp
|
| 136 |
constexpr uint_least32_t line() const noexcept;
|