tmp/tmpee8jf16f/{from.md → to.md}
RENAMED
|
@@ -6,50 +6,39 @@ namespace std {
|
|
| 6 |
using char_type = char;
|
| 7 |
using int_type = int;
|
| 8 |
using off_type = streamoff;
|
| 9 |
using pos_type = streampos;
|
| 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 |
|
| 24 |
static constexpr int_type not_eof(int_type c) noexcept;
|
| 25 |
static constexpr char_type to_char_type(int_type c) noexcept;
|
| 26 |
static constexpr int_type to_int_type(char_type c) noexcept;
|
| 27 |
static constexpr bool eq_int_type(int_type c1, int_type c2) noexcept;
|
| 28 |
static constexpr int_type eof() noexcept;
|
| 29 |
};
|
| 30 |
}
|
| 31 |
```
|
| 32 |
|
| 33 |
-
The defined types for `int_type`, `pos_type`, `off_type`, and
|
| 34 |
-
`state_type` shall be `int`, `streampos`, `streamoff`, and `mbstate_t`
|
| 35 |
-
respectively.
|
| 36 |
-
|
| 37 |
-
The type `streampos` shall be an *implementation-defined* type that
|
| 38 |
-
satisfies the requirements for `pos_type` in [[iostreams.limits.pos]]
|
| 39 |
-
and [[iostream.forward]].
|
| 40 |
-
|
| 41 |
-
The type `streamoff` shall be an *implementation-defined* type that
|
| 42 |
-
satisfies the requirements for `off_type` in [[iostreams.limits.pos]]
|
| 43 |
-
and [[iostream.forward]].
|
| 44 |
-
|
| 45 |
The type `mbstate_t` is defined in `<cwchar>` and can represent any of
|
| 46 |
the conversion states that can occur in an *implementation-defined* set
|
| 47 |
of supported multibyte character encoding rules.
|
| 48 |
|
| 49 |
-
The two-argument member `assign`
|
| 50 |
-
|
| 51 |
-
|
| 52 |
`unsigned char`.
|
| 53 |
|
| 54 |
-
The member `eof()`
|
| 55 |
|
|
|
|
| 6 |
using char_type = char;
|
| 7 |
using int_type = int;
|
| 8 |
using off_type = streamoff;
|
| 9 |
using pos_type = streampos;
|
| 10 |
using state_type = mbstate_t;
|
| 11 |
+
using comparison_category = strong_ordering;
|
| 12 |
|
| 13 |
static constexpr void assign(char_type& c1, const char_type& c2) noexcept;
|
| 14 |
static constexpr bool eq(char_type c1, char_type c2) noexcept;
|
| 15 |
static constexpr bool lt(char_type c1, char_type c2) noexcept;
|
| 16 |
|
| 17 |
static constexpr int compare(const char_type* s1, const char_type* s2, size_t n);
|
| 18 |
static constexpr size_t length(const char_type* s);
|
| 19 |
static constexpr const char_type* find(const char_type* s, size_t n,
|
| 20 |
const char_type& a);
|
| 21 |
+
static constexpr char_type* move(char_type* s1, const char_type* s2, size_t n);
|
| 22 |
+
static constexpr char_type* copy(char_type* s1, const char_type* s2, size_t n);
|
| 23 |
+
static constexpr char_type* assign(char_type* s, size_t n, char_type a);
|
| 24 |
|
| 25 |
static constexpr int_type not_eof(int_type c) noexcept;
|
| 26 |
static constexpr char_type to_char_type(int_type c) noexcept;
|
| 27 |
static constexpr int_type to_int_type(char_type c) noexcept;
|
| 28 |
static constexpr bool eq_int_type(int_type c1, int_type c2) noexcept;
|
| 29 |
static constexpr int_type eof() noexcept;
|
| 30 |
};
|
| 31 |
}
|
| 32 |
```
|
| 33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 34 |
The type `mbstate_t` is defined in `<cwchar>` and can represent any of
|
| 35 |
the conversion states that can occur in an *implementation-defined* set
|
| 36 |
of supported multibyte character encoding rules.
|
| 37 |
|
| 38 |
+
The two-argument member `assign` is defined identically to the built-in
|
| 39 |
+
operator `=`. The two-argument members `eq` and `lt` are defined
|
| 40 |
+
identically to the built-in operators `==` and `<` for type
|
| 41 |
`unsigned char`.
|
| 42 |
|
| 43 |
+
The member `eof()` returns `EOF`.
|
| 44 |
|