From 5ca4bfd69aa697c4928bfb9858db05cac4eee69e Mon Sep 17 00:00:00 2001 From: Piotr Jastrzebski Date: Wed, 23 May 2018 16:15:44 +0200 Subject: [PATCH] disk_array_vint_size: Remove unused Size template parameter Signed-off-by: Piotr Jastrzebski --- sstables/disk_types.hh | 3 +-- sstables/sstables.cc | 12 ++++++------ sstables/types.hh | 8 ++++---- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/sstables/disk_types.hh b/sstables/disk_types.hh index 29caaa4c50..1b6f650968 100644 --- a/sstables/disk_types.hh +++ b/sstables/disk_types.hh @@ -71,9 +71,8 @@ struct vint { }; // Same as disk_array but with its size serialized as variable-length integer -template +template struct disk_array_vint_size { - static_assert(std::is_integral::value, "Length type must be convertible to integer"); utils::chunked_vector elements; }; diff --git a/sstables/sstables.cc b/sstables/sstables.cc index 332f11b63a..e21ecd3d68 100644 --- a/sstables/sstables.cc +++ b/sstables/sstables.cc @@ -339,9 +339,9 @@ future<> parse(sstable_version_types v, random_access_reader& in, disk_string -future<> parse(sstable_version_types v, random_access_reader& in, disk_array_vint_size& arr) { - auto len = std::make_unique(); +template +future<> parse(sstable_version_types v, random_access_reader& in, disk_array_vint_size& arr) { + auto len = std::make_unique(); auto f = read_vint(in, *len); return f.then([v, &in, &arr, len = std::move(len)] { return parse(v, in, *len, arr.elements); @@ -453,9 +453,9 @@ inline void write(sstable_version_types v, file_writer& out, const disk_array -inline void write(sstable_version_types v, file_writer& out, const disk_array_vint_size& arr) { - Size len = 0; +template +inline void write(sstable_version_types v, file_writer& out, const disk_array_vint_size& arr) { + uint64_t len = 0; check_truncate_and_assign(len, arr.elements.size()); write_vint(out, len); write(v, out, arr.elements); diff --git a/sstables/types.hh b/sstables/types.hh index 8b7b9e679f..4107c1a8bc 100644 --- a/sstables/types.hh +++ b/sstables/types.hh @@ -372,14 +372,14 @@ struct stats_metadata : public metadata_base { } }; -using bytes_array_vint_size = disk_array_vint_size; +using bytes_array_vint_size = disk_array_vint_size; struct serialization_header : public metadata_base { vint min_timestamp; vint min_local_deletion_time; vint min_ttl; bytes_array_vint_size pk_type_name; - disk_array_vint_size clustering_key_types_names; + disk_array_vint_size clustering_key_types_names; struct column_desc { bytes_array_vint_size name; bytes_array_vint_size type_name; @@ -391,8 +391,8 @@ struct serialization_header : public metadata_base { ); } }; - disk_array_vint_size static_columns; - disk_array_vint_size regular_columns; + disk_array_vint_size static_columns; + disk_array_vint_size regular_columns; template auto describe_type(sstable_version_types v, Describer f) { switch (v) {