mirror of
https://github.com/boostorg/mysql.git
synced 2026-02-17 13:52:18 +00:00
Split serialization tests into multiple files
Converted string_fixed into a plain array
This commit is contained in:
@@ -34,8 +34,8 @@ boost::mysql::detail::serialization_traits<
|
||||
|
||||
// Compose capabilities
|
||||
auto capabilities_begin = reinterpret_cast<std::uint8_t*>(&output.capability_falgs.value);
|
||||
memcpy(capabilities_begin, capability_flags_low.value.data(), 2);
|
||||
memcpy(capabilities_begin + 2, capability_flags_high.value.data(), 2);
|
||||
memcpy(capabilities_begin, capability_flags_low.data(), 2);
|
||||
memcpy(capabilities_begin + 2, capability_flags_high.data(), 2);
|
||||
boost::endian::little_to_native_inplace(output.capability_falgs.value);
|
||||
|
||||
// Check minimum server capabilities to deserialize this frame
|
||||
@@ -59,7 +59,7 @@ boost::mysql::detail::serialization_traits<
|
||||
// Compose auth_plugin_data
|
||||
memcpy(
|
||||
output.auth_plugin_data_buffer.data(),
|
||||
auth_plugin_data_part_1.value.data(),
|
||||
auth_plugin_data_part_1.data(),
|
||||
auth1_length
|
||||
);
|
||||
output.auth_plugin_data.value = std::string_view(
|
||||
|
||||
@@ -204,7 +204,7 @@ boost::mysql::errc boost::mysql::detail::serialization_traits<
|
||||
{
|
||||
return errc::incomplete_message;
|
||||
}
|
||||
memcpy(&output.value, ctx.first(), N);
|
||||
memcpy(output.data(), ctx.first(), N);
|
||||
ctx.advance(N);
|
||||
return errc::ok;
|
||||
}
|
||||
|
||||
@@ -25,14 +25,7 @@ struct int8_signed : value_holder<std::int64_t> { using value_holder::value_hold
|
||||
struct int_lenenc : value_holder<std::uint64_t> { using value_holder::value_holder; };
|
||||
|
||||
template <std::size_t size>
|
||||
struct string_fixed : value_holder<std::array<char, size>>
|
||||
{
|
||||
constexpr string_fixed() = default;
|
||||
explicit string_fixed(const char (&v) [size])
|
||||
{
|
||||
std::memcpy(this->value.data(), v, size);
|
||||
}
|
||||
};
|
||||
using string_fixed = std::array<char, size>;
|
||||
|
||||
struct string_null : value_holder<std::string_view> { using value_holder::value_holder; };
|
||||
struct string_eof : value_holder<std::string_view> { using value_holder::value_holder; };
|
||||
|
||||
@@ -77,7 +77,7 @@ struct serialization_traits<string_fixed<N>, serialization_tag::none>
|
||||
static errc deserialize_(string_fixed<N>& output, deserialization_context& ctx) noexcept;
|
||||
static void serialize_(const string_fixed<N>& input, serialization_context& ctx) noexcept
|
||||
{
|
||||
ctx.write(input.value.data(), N);
|
||||
ctx.write(input.data(), N);
|
||||
}
|
||||
static constexpr std::size_t get_size_(const string_fixed<N>&, const serialization_context&) noexcept
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user