MCPcopy Create free account
hub / github.com/ByConity/ByConity / vectorSerialize

Function vectorSerialize

src/Statistics/VectorSerde.cpp:25–35  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

23{
24template <typename T>
25std::string vectorSerialize(const std::vector<T> & data)
26{
27 // TODO: optimize it to use better encoding
28 static_assert(std::is_integral_v<T> || std::is_floating_point_v<T> || IsWideInteger<T>);
29 static_assert(std::is_trivial_v<T>);
30 // bool not supported due to stupid vector<bool>
31 static_assert(!std::is_same_v<bool, T>);
32 const char * ptr = reinterpret_cast<const char *>(data.data());
33 auto bytes = sizeof(T) * data.size();
34 return std::string(ptr, bytes);
35}
36
37template <typename T>
38std::vector<T> vectorDeserialize(std::string_view blob)

Callers 1

serializeMethod · 0.85

Calls 2

dataMethod · 0.45
sizeMethod · 0.45

Tested by

no test coverage detected