MySQL 9.6.0
Source Code Documentation
buffer_interface.h File Reference

Experimental API header. More...

#include <cassert>
#include <cstddef>
#include <cstring>
#include <string_view>
#include "mysql/meta/is_charlike.h"
#include "mysql/utils/char_cast.h"

Go to the source code of this file.

Classes

class  mysql::ranges::detail::Buffer_base
 Top of the hierarchy. More...
 
class  mysql::ranges::Buffer_interface< Self_tp, equality_algorithm_tp, enable_hash_tp >
 CRTP base class that provides a rich API for classes that behave like byte buffers. More...
 
struct  std::hash< Buffer_t >
 

Namespaces

namespace  mysql
 
namespace  mysql::ranges
 
namespace  mysql::ranges::detail
 
namespace  std
 Define std::hash<Gtid>.
 

Enumerations

enum class  mysql::ranges::Equality_algorithm { mysql::ranges::lexicographic , mysql::ranges::fast , mysql::ranges::none }
 
enum class  mysql::ranges::Enable_hash { mysql::ranges::no , mysql::ranges::yes }
 

Functions

template<std::derived_from< detail::Buffer_base > Buffer_t>
requires (Buffer_t::equality_algorithm == Equality_algorithm::fast)
auto mysql::ranges::operator<=> (const Buffer_t &left, const Buffer_t &right)
 Enable fast comparison operators for Buffer_interface subclasses. More...
 
template<std::derived_from< detail::Buffer_base > Buffer_t>
requires (Buffer_t::equality_algorithm == Equality_algorithm::lexicographic)
auto mysql::ranges::operator<=> (const Buffer_t &left, const Buffer_t &right)
 Enable lexicographic comparison operators for Buffer_interface subclasses. More...
 
template<std::derived_from< detail::Buffer_base > Buffer_t>
requires Buffer_t
::equality_enabled bool mysql::ranges::operator== (const Buffer_t &left, const Buffer_t &right)
 Enable operator== for Buffer_interface subclasses. More...
 
template<std::derived_from< detail::Buffer_base > Buffer_t>
requires Buffer_t
::equality_enabled bool mysql::ranges::operator!= (const Buffer_t &left, const Buffer_t &right)
 Enable operator!= for Buffer_interface subclasses. More...
 

Detailed Description

Experimental API header.