aboutsummaryrefslogtreecommitdiff
path: root/libstdc++-v3
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2022-03-23 12:16:25 +0000
committerJonathan Wakely <jwakely@redhat.com>2022-03-25 20:21:48 +0000
commit674ec679059bca34099618b1987287b60ab12029 (patch)
tree735bc90ad4de7238f23e94aeb08a1936f71a9b90 /libstdc++-v3
parent3ab5c8cd03d92bf4ec41e351820349d92fbc40c4 (diff)
downloadgcc-674ec679059bca34099618b1987287b60ab12029.zip
gcc-674ec679059bca34099618b1987287b60ab12029.tar.gz
gcc-674ec679059bca34099618b1987287b60ab12029.tar.bz2
libstdc++: Add more doxygen comments in <bit>
libstdc++-v3/ChangeLog: * include/std/bit (bit_cast, byteswap, endian): Add doxygen comments.
Diffstat (limited to 'libstdc++-v3')
-rw-r--r--libstdc++-v3/include/std/bit20
1 files changed, 19 insertions, 1 deletions
diff --git a/libstdc++-v3/include/std/bit b/libstdc++-v3/include/std/bit
index a40f1ce..ef19d64 100644
--- a/libstdc++-v3/include/std/bit
+++ b/libstdc++-v3/include/std/bit
@@ -69,6 +69,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#define __cpp_lib_bit_cast 201806L
/// Create a value of type `To` from the bits of `from`.
+ /**
+ * @tparam _To A trivially-copyable type.
+ * @param __from A trivially-copyable object of the same size as `_To`.
+ * @return An object of type `_To`.
+ * @since C++20
+ */
template<typename _To, typename _From>
[[nodiscard]]
constexpr _To
@@ -86,6 +92,12 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#define __cpp_lib_byteswap 202110L
/// Reverse order of bytes in the object representation of `value`.
+ /**
+ * @tparam _Tp An integral type.
+ * @param __value An object of integer type.
+ * @return An object of the same type, with the bytes reversed.
+ * @since C++23
+ */
template<typename _Tp>
[[nodiscard]]
constexpr enable_if_t<is_integral<_Tp>::value, _Tp>
@@ -444,7 +456,13 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#define __cpp_lib_endian 201907L
- /// Byte order
+ /// Byte order constants
+ /**
+ * The platform endianness can be checked by comparing `std::endian::native`
+ * to one of `std::endian::big` or `std::endian::little`.
+ *
+ * @since C++20
+ */
enum class endian
{
little = __ORDER_LITTLE_ENDIAN__,