MySQL 9.6.0
Source Code Documentation
decode.h File Reference

Experimental API header. More...

Go to the source code of this file.

Namespaces

namespace  mysql
 
namespace  mysql::sets
 
namespace  mysql::sets::strconv
 
namespace  mysql::strconv
 

Functions

template<mysql::sets::Is_discrete_set_traits Set_traits_t>
void mysql::sets::strconv::interval_from_text (const Is_format auto &format, mysql::strconv::Parser &parser, mysql::sets::detail::Relaxed_interval< Set_traits_t > &out)
 Read an interval into the output Relaxed_interval, checking that the boundaries are in range, but not that they are in order. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::sets::strconv::interval_from_text (const Is_format auto &format, mysql::strconv::Parser &parser, const std::pair< Boundary_container_t &, typename Boundary_container_t::Iterator_t & > &out)
 Read one interval in text format into an output container with a cursor. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::sets::strconv::boundary_set_from_text (const Is_format auto &format, mysql::strconv::Parser &parser, Boundary_container_t &out)
 Parse from text format into a boundary container. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_metric_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::sets::strconv::boundary_set_from_binary (const Is_format auto &format, mysql::strconv::Parser &parser, Boundary_container_t &out)
 Parse from binary format (with variable-length integers) into a boundary container. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_bounded_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::sets::strconv::boundary_set_from_binary_fixint (const Is_format auto &format, mysql::strconv::Parser &parser, Boundary_container_t &out)
 Parse from binary format (with fixed-length integers) into a boundary container. More...
 
template<mysql::sets::Is_interval_container Interval_container_t>
void mysql::sets::strconv::decode_interval_set (const Is_format auto &format, mysql::strconv::Parser &parser, Interval_container_t &out)
 Parse into an interval container, advance the position, and return the status. More...
 
template<mysql::sets::Is_discrete_set_traits Set_traits_t>
void mysql::strconv::decode_impl (const Boundary_set_text_format &format, mysql::strconv::Parser &parser, mysql::sets::detail::Relaxed_interval< Set_traits_t > &out)
 Enable mysql::strconv::decode(Text_format, Relaxed_interval), for boundary containers whose Set traits that are discrete. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::strconv::decode_impl (const Boundary_set_text_format &format, mysql::strconv::Parser &parser, const std::pair< Boundary_container_t &, typename Boundary_container_t::Iterator_t & > &out)
 Enable mysql::strconv::decode(Text_format, std::pair<Boundary_container, cursor>), for boundary containers whose Set traits that are discrete. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::strconv::decode_impl (const Boundary_set_text_format &format, mysql::strconv::Parser &parser, Boundary_container_t &out)
 Enable mysql::strconv::decode(Text_format, Boundary_container), for boundary containers whose Set traits that are discrete. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_metric_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::strconv::decode_impl (const Binary_format &format, mysql::strconv::Parser &parser, Boundary_container_t &out)
 Enable mysql::strconv::decode(Binary_format, Boundary_container), for boundary containers that are discrete and metric. More...
 
template<mysql::sets::Is_boundary_container Boundary_container_t>
requires mysql::sets::Is_discrete_set_traits< typename Boundary_container_t::Set_traits_t>
void mysql::strconv::decode_impl (const Fixint_binary_format &format, mysql::strconv::Parser &parser, Boundary_container_t &out)
 Enable mysql::strconv::decode(Fixint_binary_format, Boundary_container), for boundary containers that are discrete. More...
 
template<mysql::sets::Is_interval_container Interval_container_t>
void mysql::strconv::decode_impl (const Is_format auto &format, mysql::strconv::Parser &parser, Interval_container_t &out)
 Enable mysql::strconv::decode(/*Format*‍/, Interval_container), by reading the boundaries in the given format. More...
 

Detailed Description

Experimental API header.