kea-custom-hooks
FeM custom hooks libraries for Kea DHCP
bytea_utils.cpp
Go to the documentation of this file.
1#include <cassert>
2
3#include "bytea_utils.hpp"
4
5namespace util
6{
7byte_string to_bytestr(const std::vector<uint8_t>& bytea)
8{
9 byte_string str{bytea.size(), std::byte{0}};
10
11 assert(str.size() == bytea.size());
12 for (size_t i = 0; i < bytea.size(); ++i)
13 str.at(i) = std::byte{bytea.at(i)};
14
15 return str;
16}
17
18std::vector<uint8_t> to_bytea(byte_string_view str)
19{
20 std::vector<uint8_t> bytea;
21 bytea.reserve(str.size());
22
23 for (const auto& ch : str)
24 bytea.push_back(static_cast<uint8_t>(ch));
25
26 return bytea;
27}
28} // namespace util
Byte array conversion utilities.
std::basic_string< std::byte > byte_string
Definition: bytea_utils.hpp:17
std::vector< uint8_t > to_bytea(byte_string_view str)
Convert a byte string to a byte array.
Definition: bytea_utils.cpp:18
std::basic_string_view< std::byte > byte_string_view
Definition: bytea_utils.hpp:18
byte_string to_bytestr(const std::vector< uint8_t > &bytea)
Convert a byte array to a byte string.
Definition: bytea_utils.cpp:7