2
0
mirror of https://github.com/boostorg/mysql.git synced 2026-02-16 01:22:20 +00:00

Unified (de)serialize with (de)serialize_fields

This commit is contained in:
ruben
2020-05-12 15:13:23 +01:00
parent 4b71760ff3
commit 92cd3569a3
20 changed files with 299 additions and 327 deletions

View File

@@ -46,14 +46,14 @@ struct SerializeBinaryValueTest : TestWithParam<serialize_binary_value_testcase>
TEST_P(SerializeBinaryValueTest, GetBinaryValueSize_Trivial_ReturnsExpectedSize)
{
serialization_context ctx (capabilities{});
std::size_t size = get_binary_value_size(GetParam().from, ctx);
std::size_t size = get_binary_value_size(ctx, GetParam().from);
EXPECT_EQ(size, GetParam().buffer.size());
}
TEST_P(SerializeBinaryValueTest, SerializeBinaryValue_Trivial_WritesToBuffer)
{
do_serialize_test(GetParam().buffer, [](serialization_context& ctx) {
serialize_binary_value(GetParam().from, ctx);
serialize_binary_value(ctx, GetParam().from);
});
}

View File

@@ -121,15 +121,15 @@ public:
any_value_impl(const T& v): value_(v) {};
void serialize(detail::serialization_context& ctx) const override
{
::boost::mysql::detail::serialize(value_, ctx);
::boost::mysql::detail::serialize(ctx, value_);
}
std::size_t get_size(const detail::serialization_context& ctx) const override
{
return ::boost::mysql::detail::get_size(value_, ctx);
return ::boost::mysql::detail::get_size(ctx, value_);
}
errc deserialize(detail::deserialization_context& ctx) override
{
return ::boost::mysql::detail::deserialize(value_, ctx);
return ::boost::mysql::detail::deserialize(ctx, value_);
}
std::shared_ptr<any_value> default_construct() const override
{