From Jason Turner

[char.traits.specializations.wchar.t]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpccmi2ghg/{from.md → to.md} +11 -11
tmp/tmpccmi2ghg/{from.md → to.md} RENAMED
@@ -1,23 +1,23 @@
1
  #### `struct char_traits<wchar_t>` <a id="char.traits.specializations.wchar.t">[[char.traits.specializations.wchar.t]]</a>
2
 
3
  ``` cpp
4
  namespace std {
5
  template<> struct char_traits<wchar_t> {
6
- typedef wchar_t char_type;
7
- typedef wint_t int_type;
8
- typedef streamoff off_type;
9
- typedef wstreampos pos_type;
10
- typedef mbstate_t state_type;
11
 
12
- static void assign(char_type& c1, const char_type& c2) noexcept;
13
  static constexpr bool eq(char_type c1, char_type c2) noexcept;
14
  static constexpr bool lt(char_type c1, char_type c2) noexcept;
15
 
16
- static int compare(const char_type* s1, const char_type* s2, size_t n);
17
- static size_t length(const char_type* s);
18
- static const char_type* find(const char_type* s, size_t n,
19
  const char_type& a);
20
  static char_type* move(char_type* s1, const char_type* s2, size_t n);
21
  static char_type* copy(char_type* s1, const char_type* s2, size_t n);
22
  static char_type* assign(char_type* s, size_t n, char_type a);
23
 
@@ -32,12 +32,12 @@ namespace std {
32
 
33
  The defined types for `int_type`, `pos_type`, and `state_type` shall be
34
  `wint_t`, `wstreampos`, and `mbstate_t` respectively.
35
 
36
  The type `wstreampos` shall be an *implementation-defined* type that
37
- satisfies the requirements for pos_type in  [[iostreams.limits.pos]] and
38
- [[iostream.forward]].
39
 
40
  The type `mbstate_t` is defined in `<cwchar>` and can represent any of
41
  the conversion states that can occur in an *implementation-defined* set
42
  of supported multibyte character encoding rules.
43
 
 
1
  #### `struct char_traits<wchar_t>` <a id="char.traits.specializations.wchar.t">[[char.traits.specializations.wchar.t]]</a>
2
 
3
  ``` cpp
4
  namespace std {
5
  template<> struct char_traits<wchar_t> {
6
+ using char_type = wchar_t;
7
+ using int_type = wint_t;
8
+ using off_type = streamoff;
9
+ using pos_type = wstreampos;
10
+ using state_type = mbstate_t;
11
 
12
+ static constexpr void assign(char_type& c1, const char_type& c2) noexcept;
13
  static constexpr bool eq(char_type c1, char_type c2) noexcept;
14
  static constexpr bool lt(char_type c1, char_type c2) noexcept;
15
 
16
+ static constexpr int compare(const char_type* s1, const char_type* s2, size_t n);
17
+ static constexpr size_t length(const char_type* s);
18
+ static constexpr const char_type* find(const char_type* s, size_t n,
19
  const char_type& a);
20
  static char_type* move(char_type* s1, const char_type* s2, size_t n);
21
  static char_type* copy(char_type* s1, const char_type* s2, size_t n);
22
  static char_type* assign(char_type* s, size_t n, char_type a);
23
 
 
32
 
33
  The defined types for `int_type`, `pos_type`, and `state_type` shall be
34
  `wint_t`, `wstreampos`, and `mbstate_t` respectively.
35
 
36
  The type `wstreampos` shall be an *implementation-defined* type that
37
+ satisfies the requirements for `pos_type` in  [[iostreams.limits.pos]]
38
+ and [[iostream.forward]].
39
 
40
  The type `mbstate_t` is defined in `<cwchar>` and can represent any of
41
  the conversion states that can occur in an *implementation-defined* set
42
  of supported multibyte character encoding rules.
43