|
static constexpr void | assign (char_type &__c1, const char_type &__c2) |
|
static constexpr char_type * | assign (char_type *__s, std::size_t __n, char_type __a) |
|
static constexpr int | compare (const char_type *__s1, const char_type *__s2, std::size_t __n) |
|
static constexpr char_type * | copy (char_type *__s1, const char_type *__s2, std::size_t __n) |
|
static constexpr int_type | eof () |
|
static constexpr bool | eq (const char_type &__c1, const char_type &__c2) |
|
static constexpr bool | eq_int_type (const int_type &__c1, const int_type &__c2) |
|
static constexpr const char_type * | find (const char_type *__s, std::size_t __n, const char_type &__a) |
|
static constexpr std::size_t | length (const char_type *__s) |
|
static constexpr bool | lt (const char_type &__c1, const char_type &__c2) |
|
static constexpr char_type * | move (char_type *__s1, const char_type *__s2, std::size_t __n) |
|
static constexpr int_type | not_eof (const int_type &__c) |
|
static constexpr char_type | to_char_type (const int_type &__c) |
|
static constexpr int_type | to_int_type (const char_type &__c) |
|
template<typename _CharT>
struct __gnu_cxx::char_traits< _CharT >
Base class used to implement std::char_traits.
- Note
- For any given actual character type, this definition is probably wrong. (Most of the member functions are likely to be right, but the int_type and state_type typedefs, and the eof() member function, are likely to be wrong.) The reason this class exists is so users can specialize it. Classes in namespace std may not be specialized for fundamental types, but classes in namespace __gnu_cxx may be.
See https://gcc.gnu.org/onlinedocs/libstdc++/manual/strings.html#strings.string.character_types for advice on how to make use of this class for unusual character types. Also, check out include/ext/pod_char_traits.h.
Definition at line 90 of file char_traits.h.