mirror of
https://github.com/boostorg/core.git
synced 2025-05-11 05:07:39 +00:00
Fix and update documentation and release notes
This commit is contained in:
parent
2814b4ca1c
commit
d5fa9ae50f
@ -25,6 +25,12 @@
|
|||||||
* Added [link core.serialization `boost/core/serialization.hpp`], a collection of primitives allowing libraries to
|
* Added [link core.serialization `boost/core/serialization.hpp`], a collection of primitives allowing libraries to
|
||||||
implement Boost.Serialization support for their types without including a Serialization header and thereby making
|
implement Boost.Serialization support for their types without including a Serialization header and thereby making
|
||||||
their libraries depend on Serialization.
|
their libraries depend on Serialization.
|
||||||
|
* Added [link core.data `boost::data`], an implementation of `std::data`.
|
||||||
|
* Added [link core.size `boost::size`], an implementation of `std::size`.
|
||||||
|
* Updated `boost::span` to use `boost::data` which adds support for range
|
||||||
|
construction from an `std::initializer_list`.
|
||||||
|
* Added [link core.identity `boost::identity`], an implementation of
|
||||||
|
`std::identity`.
|
||||||
|
|
||||||
[endsect]
|
[endsect]
|
||||||
|
|
||||||
|
@ -50,10 +50,10 @@ data(std::initializer_list<T> l) noexcept;
|
|||||||
[variablelist
|
[variablelist
|
||||||
[[`template<class C> constexpr auto data(C& c) noexcept(noexcept(c.data())) ->
|
[[`template<class C> constexpr auto data(C& c) noexcept(noexcept(c.data())) ->
|
||||||
decltype(c.data());`]
|
decltype(c.data());`]
|
||||||
[Returns `c.begin()`.]]
|
[Returns `c.data()`.]]
|
||||||
[[`template<class C> constexpr auto data(const C& c)
|
[[`template<class C> constexpr auto data(const C& c)
|
||||||
noexcept(noexcept(c.data())) -> decltype(c.data());`]
|
noexcept(noexcept(c.data())) -> decltype(c.data());`]
|
||||||
[Returns `c.begin()`.]]
|
[Returns `c.data()`.]]
|
||||||
[[`template<class T, std::size_t N> constexpr T* data(T(&a)[N]) noexcept;`]
|
[[`template<class T, std::size_t N> constexpr T* data(T(&a)[N]) noexcept;`]
|
||||||
[Returns `a`.]]
|
[Returns `a`.]]
|
||||||
[[`template<class T> constexpr const T* data(std::initializer_list<T> l)
|
[[`template<class T> constexpr const T* data(std::initializer_list<T> l)
|
||||||
|
@ -227,13 +227,13 @@ constexpr span(R&& r);`]
|
|||||||
[`remove_cvref_t<R>` is not a specialization of `span`,]
|
[`remove_cvref_t<R>` is not a specialization of `span`,]
|
||||||
[`remove_cvref_t<R>` is not a specialization of `array`,]
|
[`remove_cvref_t<R>` is not a specialization of `array`,]
|
||||||
[`is_array_v<remove_cvref_t<R>>` is `false`,]
|
[`is_array_v<remove_cvref_t<R>>` is `false`,]
|
||||||
[`r.data()` is well-formed and
|
[`data(r)` is well-formed and
|
||||||
`is_convertible_v<remove_pointer_t<iterator_t<R> >(*)[],
|
`is_convertible_v<remove_pointer_t<iterator_t<R> >(*)[],
|
||||||
T(*)[]>` is `true`, and]
|
T(*)[]>` is `true`, and]
|
||||||
[`r.size()` is well-formed and
|
[`r.size()` is well-formed and
|
||||||
`is_convertible_v<decltype(declval<R&>().size()), size_t>` is `true`.]]]]
|
`is_convertible_v<decltype(declval<R&>().size()), size_t>` is `true`.]]]]
|
||||||
[[Effects][Constructs a `span` with data `r.data()` and size `r.size()`.]]
|
[[Effects][Constructs a `span` with data `data(r)` and size `r.size()`.]]
|
||||||
[[Throws][What and when r.data() and r.size() throw.]]]]]
|
[[Throws][What and when data(r) and r.size() throw.]]]]]
|
||||||
[[`explicit(E != dynamic_extent && N == dynamic_extent)
|
[[`explicit(E != dynamic_extent && N == dynamic_extent)
|
||||||
template<class U, std::size_t N>
|
template<class U, std::size_t N>
|
||||||
constexpr span(const span<U, N>& s) noexcept;`]
|
constexpr span(const span<U, N>& s) noexcept;`]
|
||||||
|
Loading…
x
Reference in New Issue
Block a user