@ -188,6 +188,7 @@ template<typename X> const X& ReadWriteAsHelper(const X& x) { return x; }
} \
FORMATTER_METHODS ( cls , obj )
// clang-format off
# ifndef CHAR_EQUALS_INT8
template < typename Stream > void Serialize ( Stream & , char ) = delete ; // char serialization forbidden. Use uint8_t or int8_t
# endif
@ -201,8 +202,7 @@ template<typename Stream> inline void Serialize(Stream& s, int64_t a ) { ser_wri
template < typename Stream > inline void Serialize ( Stream & s , uint64_t a ) { ser_writedata64 ( s , a ) ; }
template < typename Stream , int N > inline void Serialize ( Stream & s , const char ( & a ) [ N ] ) { s . write ( MakeByteSpan ( a ) ) ; }
template < typename Stream , int N > inline void Serialize ( Stream & s , const unsigned char ( & a ) [ N ] ) { s . write ( MakeByteSpan ( a ) ) ; }
template < typename Stream > inline void Serialize ( Stream & s , const Span < const unsigned char > & span ) { s . write ( AsBytes ( span ) ) ; }
template < typename Stream > inline void Serialize ( Stream & s , const Span < unsigned char > & span ) { s . write ( AsBytes ( span ) ) ; }
template < typename Stream , typename B > void Serialize ( Stream & s , Span < B > span ) { ( void ) /* force byte-type */ UCharCast ( span . data ( ) ) ; s . write ( AsBytes ( span ) ) ; }
# ifndef CHAR_EQUALS_INT8
template < typename Stream > void Unserialize ( Stream & , char ) = delete ; // char serialization forbidden. Use uint8_t or int8_t
@ -217,10 +217,11 @@ template<typename Stream> inline void Unserialize(Stream& s, int64_t& a ) { a =
template < typename Stream > inline void Unserialize ( Stream & s , uint64_t & a ) { a = ser_readdata64 ( s ) ; }
template < typename Stream , int N > inline void Unserialize ( Stream & s , char ( & a ) [ N ] ) { s . read ( MakeWritableByteSpan ( a ) ) ; }
template < typename Stream , int N > inline void Unserialize ( Stream & s , unsigned char ( & a ) [ N ] ) { s . read ( MakeWritableByteSpan ( a ) ) ; }
template < typename Stream > inline void Unserialize ( Stream & s , Span < unsigned char > & span ) { s . read ( AsWritableBytes ( span ) ) ; }
template < typename Stream , typename B > void Unserialize ( Stream & s , Span < B > span ) { ( void ) /* force byte-type */ UCharCast ( span . data ( ) ) ; s . read ( AsWritableBytes ( span ) ) ; }
template < typename Stream > inline void Serialize ( Stream & s , bool a ) { uint8_t f = a ; ser_writedata8 ( s , f ) ; }
template < typename Stream > inline void Unserialize ( Stream & s , bool & a ) { uint8_t f = ser_readdata8 ( s ) ; a = f ; }
// clang-format on
/**