From 760bc5fd603c175e42feee6a89306fa7e16d67bf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Chojnowski?= Date: Sun, 22 Nov 2020 00:43:01 +0100 Subject: [PATCH] types: deserialize duration type from FragmentedView A part of the transition of deserialize from bytes_view to FragmentedView. --- types.cc | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/types.cc b/types.cc index 941863f3b3..c1758b6e09 100644 --- a/types.cc +++ b/types.cc @@ -1843,9 +1843,12 @@ static big_decimal deserialize_value(const decimal_type_impl& , bytes_view v) { return big_decimal(scale, unscaled); } -static cql_duration deserialize_value(const duration_type_impl& t, bytes_view v) { +template +cql_duration deserialize_value(const duration_type_impl& t, View v) { common_counter_type months, days, nanoseconds; - std::tie(months, days, nanoseconds) = deserialize_counters(v); + std::tie(months, days, nanoseconds) = with_linearized(v, [] (bytes_view bv) { + return deserialize_counters(bv); + }); return cql_duration(months_counter(months), days_counter(days), nanoseconds_counter(nanoseconds)); }