MySQL 9.1.0
Source Code Documentation
classic_protocol_codec_base.h File Reference
#include <cstddef>
#include <cstdint>
#include <limits>
#include <system_error>
#include <type_traits>
#include <utility>
#include "mysql/harness/net_ts/buffer.h"
#include "mysql/harness/stdx/bit.h"
#include "mysql/harness/stdx/expected.h"
#include "mysqlrouter/classic_protocol_codec_error.h"
#include "mysqlrouter/classic_protocol_constants.h"

Go to the source code of this file.

Classes

class  classic_protocol::impl::DecodeBufferAccumulator
 Generator of decoded Types of a buffer. More...
 
class  classic_protocol::impl::EncodeBufferAccumulator
 accumulator of encoded buffers. More...
 
class  classic_protocol::impl::EncodeSizeAccumulator
 accumulates the sizes of encoded T's. More...
 
class  classic_protocol::impl::EncodeBase< T >
 CRTP base for the Codec's encode part. More...
 

Namespaces

namespace  classic_protocol
 
namespace  classic_protocol::impl
 

Functions

constexpr size_t classic_protocol::bytes_per_bits (size_t bits)
 
template<class T , class DynamicBuffer >
stdx::expected< size_t, std::error_code > classic_protocol::encode (const T &v, capabilities::value_type caps, DynamicBuffer &&dyn_buffer)
 encode a message into a dynamic buffer. More...
 
template<class T >
stdx::expected< std::pair< size_t, T >, std::error_code > classic_protocol::decode (const net::const_buffer &buffer, capabilities::value_type caps)
 decode a message from a buffer. More...
 
template<class T , class... Args>
stdx::expected< std::pair< size_t, T >, std::error_code > classic_protocol::decode (const net::const_buffer &buffer, capabilities::value_type caps, Args &&... args)
 decode a message from a buffer. More...