tmp/tmp9fip55xj/{from.md → to.md}
RENAMED
|
@@ -64,10 +64,13 @@ namespace std {
|
|
| 64 |
reverse_iterator<Iterator>
|
| 65 |
operator+(
|
| 66 |
typename reverse_iterator<Iterator>::difference_type n,
|
| 67 |
const reverse_iterator<Iterator>& x);
|
| 68 |
|
|
|
|
|
|
|
|
|
|
| 69 |
template <class Container> class back_insert_iterator;
|
| 70 |
template <class Container>
|
| 71 |
back_insert_iterator<Container> back_inserter(Container& x);
|
| 72 |
|
| 73 |
template <class Container> class front_insert_iterator;
|
|
@@ -104,11 +107,11 @@ namespace std {
|
|
| 104 |
const move_iterator<Iterator2>& y) -> decltype(x.base() - y.base());
|
| 105 |
template <class Iterator>
|
| 106 |
move_iterator<Iterator> operator+(
|
| 107 |
typename move_iterator<Iterator>::difference_type n, const move_iterator<Iterator>& x);
|
| 108 |
template <class Iterator>
|
| 109 |
-
move_iterator<Iterator> make_move_iterator(
|
| 110 |
|
| 111 |
// [stream.iterators], stream iterators:
|
| 112 |
template <class T, class charT = char, class traits = char_traits<charT>,
|
| 113 |
class Distance = ptrdiff_t>
|
| 114 |
class istream_iterator;
|
|
@@ -137,10 +140,24 @@ namespace std {
|
|
| 137 |
// [iterator.range], range access:
|
| 138 |
template <class C> auto begin(C& c) -> decltype(c.begin());
|
| 139 |
template <class C> auto begin(const C& c) -> decltype(c.begin());
|
| 140 |
template <class C> auto end(C& c) -> decltype(c.end());
|
| 141 |
template <class C> auto end(const C& c) -> decltype(c.end());
|
| 142 |
-
template <class T, size_t N> T* begin(T (&array)[N]);
|
| 143 |
-
template <class T, size_t N> T* end(T (&array)[N]);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 144 |
}
|
| 145 |
```
|
| 146 |
|
|
|
|
| 64 |
reverse_iterator<Iterator>
|
| 65 |
operator+(
|
| 66 |
typename reverse_iterator<Iterator>::difference_type n,
|
| 67 |
const reverse_iterator<Iterator>& x);
|
| 68 |
|
| 69 |
+
template <class Iterator>
|
| 70 |
+
reverse_iterator<Iterator> make_reverse_iterator(Iterator i);
|
| 71 |
+
|
| 72 |
template <class Container> class back_insert_iterator;
|
| 73 |
template <class Container>
|
| 74 |
back_insert_iterator<Container> back_inserter(Container& x);
|
| 75 |
|
| 76 |
template <class Container> class front_insert_iterator;
|
|
|
|
| 107 |
const move_iterator<Iterator2>& y) -> decltype(x.base() - y.base());
|
| 108 |
template <class Iterator>
|
| 109 |
move_iterator<Iterator> operator+(
|
| 110 |
typename move_iterator<Iterator>::difference_type n, const move_iterator<Iterator>& x);
|
| 111 |
template <class Iterator>
|
| 112 |
+
move_iterator<Iterator> make_move_iterator(Iterator i);
|
| 113 |
|
| 114 |
// [stream.iterators], stream iterators:
|
| 115 |
template <class T, class charT = char, class traits = char_traits<charT>,
|
| 116 |
class Distance = ptrdiff_t>
|
| 117 |
class istream_iterator;
|
|
|
|
| 140 |
// [iterator.range], range access:
|
| 141 |
template <class C> auto begin(C& c) -> decltype(c.begin());
|
| 142 |
template <class C> auto begin(const C& c) -> decltype(c.begin());
|
| 143 |
template <class C> auto end(C& c) -> decltype(c.end());
|
| 144 |
template <class C> auto end(const C& c) -> decltype(c.end());
|
| 145 |
+
template <class T, size_t N> constexpr T* begin(T (&array)[N]) noexcept;
|
| 146 |
+
template <class T, size_t N> constexpr T* end(T (&array)[N]) noexcept;
|
| 147 |
+
template <class C> constexpr auto cbegin(const C& c) noexcept(noexcept(std::begin(c)))
|
| 148 |
+
-> decltype(std::begin(c));
|
| 149 |
+
template <class C> constexpr auto cend(const C& c) noexcept(noexcept(std::end(c)))
|
| 150 |
+
-> decltype(std::end(c));
|
| 151 |
+
template <class C> auto rbegin(C& c) -> decltype(c.rbegin());
|
| 152 |
+
template <class C> auto rbegin(const C& c) -> decltype(c.rbegin());
|
| 153 |
+
template <class C> auto rend(C& c) -> decltype(c.rend());
|
| 154 |
+
template <class C> auto rend(const C& c) -> decltype(c.rend());
|
| 155 |
+
template <class T, size_t N> reverse_iterator<T*> rbegin(T (&array)[N]);
|
| 156 |
+
template <class T, size_t N> reverse_iterator<T*> rend(T (&array)[N]);
|
| 157 |
+
template <class E> reverse_iterator<const E*> rbegin(initializer_list<E> il);
|
| 158 |
+
template <class E> reverse_iterator<const E*> rend(initializer_list<E> il);
|
| 159 |
+
template <class C> auto crbegin(const C& c) -> decltype(std::rbegin(c));
|
| 160 |
+
template <class C> auto crend(const C& c) -> decltype(std::rend(c));
|
| 161 |
}
|
| 162 |
```
|
| 163 |
|