tmp/tmp4yt4xk4d/{from.md → to.md}
RENAMED
|
@@ -1,14 +1,17 @@
|
|
| 1 |
## Type identification <a id="support.rtti">[[support.rtti]]</a>
|
| 2 |
|
|
|
|
|
|
|
| 3 |
The header `<typeinfo>` defines a type associated with type information
|
| 4 |
generated by the implementation. It also defines two types for reporting
|
| 5 |
dynamic type identification errors.
|
| 6 |
|
| 7 |
### Header `<typeinfo>` synopsis <a id="typeinfo.syn">[[typeinfo.syn]]</a>
|
| 8 |
|
| 9 |
``` cpp
|
|
|
|
| 10 |
namespace std {
|
| 11 |
class type_info;
|
| 12 |
class bad_cast;
|
| 13 |
class bad_typeid;
|
| 14 |
}
|
|
@@ -19,11 +22,11 @@ namespace std {
|
|
| 19 |
``` cpp
|
| 20 |
namespace std {
|
| 21 |
class type_info {
|
| 22 |
public:
|
| 23 |
virtual ~type_info();
|
| 24 |
-
bool operator==(const type_info& rhs) const noexcept;
|
| 25 |
bool before(const type_info& rhs) const noexcept;
|
| 26 |
size_t hash_code() const noexcept;
|
| 27 |
const char* name() const noexcept;
|
| 28 |
|
| 29 |
type_info(const type_info&) = delete; // cannot be copied
|
|
@@ -38,11 +41,11 @@ a pointer to a name for the type, and an encoded value suitable for
|
|
| 38 |
comparing two types for equality or collating order. The names, encoding
|
| 39 |
rule, and collating sequence for types are all unspecified and may
|
| 40 |
differ between programs.
|
| 41 |
|
| 42 |
``` cpp
|
| 43 |
-
bool operator==(const type_info& rhs) const noexcept;
|
| 44 |
```
|
| 45 |
|
| 46 |
*Effects:* Compares the current object with `rhs`.
|
| 47 |
|
| 48 |
*Returns:* `true` if the two values describe the same type.
|
|
@@ -73,11 +76,11 @@ const char* name() const noexcept;
|
|
| 73 |
|
| 74 |
*Returns:* An *implementation-defined* NTBS.
|
| 75 |
|
| 76 |
*Remarks:* The message may be a null-terminated multibyte
|
| 77 |
string [[multibyte.strings]], suitable for conversion and display as a
|
| 78 |
-
`wstring`
|
| 79 |
|
| 80 |
### Class `bad_cast` <a id="bad.cast">[[bad.cast]]</a>
|
| 81 |
|
| 82 |
``` cpp
|
| 83 |
namespace std {
|
|
|
|
| 1 |
## Type identification <a id="support.rtti">[[support.rtti]]</a>
|
| 2 |
|
| 3 |
+
### General <a id="support.rtti.general">[[support.rtti.general]]</a>
|
| 4 |
+
|
| 5 |
The header `<typeinfo>` defines a type associated with type information
|
| 6 |
generated by the implementation. It also defines two types for reporting
|
| 7 |
dynamic type identification errors.
|
| 8 |
|
| 9 |
### Header `<typeinfo>` synopsis <a id="typeinfo.syn">[[typeinfo.syn]]</a>
|
| 10 |
|
| 11 |
``` cpp
|
| 12 |
+
// all freestanding
|
| 13 |
namespace std {
|
| 14 |
class type_info;
|
| 15 |
class bad_cast;
|
| 16 |
class bad_typeid;
|
| 17 |
}
|
|
|
|
| 22 |
``` cpp
|
| 23 |
namespace std {
|
| 24 |
class type_info {
|
| 25 |
public:
|
| 26 |
virtual ~type_info();
|
| 27 |
+
constexpr bool operator==(const type_info& rhs) const noexcept;
|
| 28 |
bool before(const type_info& rhs) const noexcept;
|
| 29 |
size_t hash_code() const noexcept;
|
| 30 |
const char* name() const noexcept;
|
| 31 |
|
| 32 |
type_info(const type_info&) = delete; // cannot be copied
|
|
|
|
| 41 |
comparing two types for equality or collating order. The names, encoding
|
| 42 |
rule, and collating sequence for types are all unspecified and may
|
| 43 |
differ between programs.
|
| 44 |
|
| 45 |
``` cpp
|
| 46 |
+
constexpr bool operator==(const type_info& rhs) const noexcept;
|
| 47 |
```
|
| 48 |
|
| 49 |
*Effects:* Compares the current object with `rhs`.
|
| 50 |
|
| 51 |
*Returns:* `true` if the two values describe the same type.
|
|
|
|
| 76 |
|
| 77 |
*Returns:* An *implementation-defined* NTBS.
|
| 78 |
|
| 79 |
*Remarks:* The message may be a null-terminated multibyte
|
| 80 |
string [[multibyte.strings]], suitable for conversion and display as a
|
| 81 |
+
`wstring` [[string.classes]], [[locale.codecvt]].
|
| 82 |
|
| 83 |
### Class `bad_cast` <a id="bad.cast">[[bad.cast]]</a>
|
| 84 |
|
| 85 |
``` cpp
|
| 86 |
namespace std {
|