unilink  0.4.3
A simple C++ library for unified async communication
unilink::base::safe_convert Namespace Reference

Functions

std::string uint8_to_string (const uint8_t *data, size_t size)
 Safely convert uint8_t* to const char* for string operations. More...
 
std::vector< uint8_t > string_to_uint8 (const char *data, size_t size)
 Safely convert const char* to const uint8_t* for binary operations. More...
 
std::vector< uint8_t > string_to_uint8 (std::string_view str)
 Safely convert std::string to std::vector<uint8_t> More...
 
std::pair< const uint8_t *, size_t > string_to_bytes (std::string_view str)
 Safely obtain a view of std::string as byte array without allocation. More...
 

Function Documentation

◆ string_to_bytes()

std::pair<const uint8_t*, size_t> unilink::base::safe_convert::string_to_bytes ( std::string_view  str)
inline

Safely obtain a view of std::string as byte array without allocation.

Parameters
strThe string to convert
Returns
std::pair<const uint8_t*, size_t> containing pointer and size

Definition at line 180 of file common.hpp.

◆ string_to_uint8() [1/2]

std::vector<uint8_t> unilink::base::safe_convert::string_to_uint8 ( const char *  data,
size_t  size 
)
inline

Safely convert const char* to const uint8_t* for binary operations.

Parameters
dataPointer to char data
sizeSize of the data
Returns
std::vector<uint8_t> containing the data

Definition at line 159 of file common.hpp.

◆ string_to_uint8() [2/2]

std::vector<uint8_t> unilink::base::safe_convert::string_to_uint8 ( std::string_view  str)
inline

Safely convert std::string to std::vector<uint8_t>

Parameters
strThe string to convert
Returns
std::vector<uint8_t> containing the string data

Definition at line 171 of file common.hpp.

◆ uint8_to_string()

std::string unilink::base::safe_convert::uint8_to_string ( const uint8_t *  data,
size_t  size 
)
inline

Safely convert uint8_t* to const char* for string operations.

Parameters
dataPointer to uint8_t data
sizeSize of the data
Returns
std::string constructed from the data

Definition at line 146 of file common.hpp.