@@ -503,9 +503,9 @@ namespace msgpack23 {
503503 std::span<B const > data_;
504504 std::size_t position_{0 };
505505
506- [[nodiscard]] B current () const {
506+ [[nodiscard]] std::byte current () const {
507507 if (position_ < data_.size ()) {
508- return data_[position_];
508+ return std::byte{ data_[position_] } ;
509509 }
510510 throw std::out_of_range (" Unpacker doesn't have enough data." );
511511 }
@@ -564,7 +564,7 @@ namespace msgpack23 {
564564 if (read_conditional<FormatConstants::map32, std::uint32_t >(map_size)
565565 or read_conditional<FormatConstants::map16, std::uint16_t >(map_size)) {
566566 } else {
567- map_size = std::to_integer<std::size_t >(current () & static_cast <B >(0b00001111 ));
567+ map_size = std::to_integer<std::size_t >(current () & static_cast <std::byte >(0b00001111 ));
568568 increment ();
569569 }
570570 return map_size;
@@ -575,7 +575,7 @@ namespace msgpack23 {
575575 if (read_conditional<FormatConstants::array32, std::uint32_t >(array_size)
576576 or read_conditional<FormatConstants::array16, std::uint16_t >(array_size)) {
577577 } else {
578- array_size = std::to_integer<std::size_t >(current () & static_cast <B >(0b00001111 ));
578+ array_size = std::to_integer<std::size_t >(current () & static_cast <std::byte >(0b00001111 ));
579579 increment ();
580580 }
581581 return array_size;
@@ -977,7 +977,7 @@ namespace msgpack23 {
977977 or read_conditional<FormatConstants::str16, std::uint16_t >(str_size)
978978 or read_conditional<FormatConstants::str8, std::uint8_t >(str_size)) {
979979 } else {
980- str_size = std::to_integer<std::size_t >(current () & static_cast <B >(0b00011111 ));
980+ str_size = std::to_integer<std::size_t >(current () & static_cast <std::byte >(0b00011111 ));
981981 increment ();
982982 }
983983 if (position_ + str_size > data_.size ()) {
@@ -1015,10 +1015,10 @@ namespace msgpack23 {
10151015 template <container Container>
10161016 Unpacker (Container const &)->Unpacker<typename Container::value_type>;
10171017
1018- template <typename T, typename B >
1019- concept unpackable_object = requires (T t, Unpacker<B> u)
1018+ template <typename T, typename U >
1019+ concept unpackable_object = requires (T t, U u)
10201020 {
1021- { t.unpack (u) } ;
1021+ t.unpack (u);
10221022 };
10231023
10241024 template <byte_type B, std::output_iterator<B> Iter, packable_object<Packer<B, Iter> > PackableObject>
0 commit comments