![]() |
MySQL 8.4.7
Source Code Documentation
|
Namespaces | |
| namespace | detail |
Classes | |
| class | Archive |
| Interface for archives (file archive, byte vector archive, string archive etc.), available only to instances implementing Serializable interface and Archive interface. More... | |
| class | Archive_binary |
| Binary archive implementation based on vector of bytes. More... | |
| struct | Archive_binary_field_max_size_calculator |
| helper structure created for partial specialization of get_max_size function of Archive_binary, default version More... | |
| struct | Archive_binary_field_max_size_calculator< std::string, S > |
| helper structure created for partial specialization of get_max_size function of Archive_binary, version for std::string fields More... | |
| struct | Archive_binary_field_max_size_calculator< T, 0 > |
| helper structure created for partial specialization of get_max_size function of Archive_binary, specialization for defined size equal to 0. More... | |
| class | Archive_text |
| Archive implementation based on stringstream. More... | |
| struct | Byte_count_helper |
| Structure that contains methods to count the number of bytes needed to encode a specific field. More... | |
| struct | Byte_count_helper< 0 > |
| Specialization of Byte_count_helper for 0 field_size. More... | |
| class | Field_definition |
| Field definition provided by classes implementing Serializable interface. More... | |
| struct | Field_definition_tag |
| Used to distinguish between Serializable and Field_definition types. More... | |
| class | Field_wrapper |
| Wrapper for fields to hold field reference and user-defined, compile-time field size. More... | |
| class | Field_wrapper< const Field_type, defined_field_size > |
| Wrapper for fields to hold field reference and defined by the user compile time size of the field. More... | |
| struct | is_std_array |
| struct | is_std_array< std::array< T, N > > |
| struct | Primitive_type_codec |
| This class is to provide functionality to encode/decode the primitive types into/out of defined stream, without boundary check. More... | |
| class | Read_archive_binary |
| Binary, read only archive implementation based on vector of bytes. More... | |
| class | Serializable |
| Interface for serializable data structures. More... | |
| struct | Serializable_size_calculator |
| struct | Serializable_size_calculator< Serializer_type, std::tuple< Args... > > |
| Helper struct used to determine Serializable tuple max declared size. More... | |
| struct | Serializable_size_calculator_helper |
| struct | Serializable_size_calculator_helper< Serializer_type, Field_definition< T, S > > |
| Helper struct used to determine Field_definition declared max size. More... | |
| struct | Serializable_tag |
| Used to distinguish between Serializable and Field_definition types. More... | |
| class | Serialization_error |
| Error used internally in serialization framework. More... | |
| class | Serializer |
| Interface for serializer. More... | |
| struct | Serializer_array_tag |
| Helper tag for array types to help compiler pick the correct method. More... | |
| class | Serializer_default |
| Basic serializer that is implementing Serializer interface. More... | |
| struct | Serializer_enum_tag |
| Helper tag for enum types to help compiler pick the correct method. More... | |
| struct | Serializer_map_tag |
| Helper tag for map types to help compiler pick the correct method. More... | |
| struct | Serializer_serializable_tag |
| Helper tag for serializable types to help compiler pick the correct method. More... | |
| struct | Serializer_set_tag |
| Helper tag for set types to help compiler pick the correct method. More... | |
| struct | Serializer_vector_list_tag |
| Helper tag for vector types to help compiler pick the correct method. More... | |
| class | Write_archive_binary |
| Binary, write only archive implementation based on vector of bytes. More... | |
Typedefs | |
| using | Field_decode_functor_type = std::function< void(void)> |
| using | Field_encode_functor_type = std::function< bool(void)> |
| using | Field_missing_functor = Field_decode_functor_type |
| Type of the predicate telling serializer what to do in case field is not provided. More... | |
| using | Field_encode_predicate = Field_encode_functor_type |
| Type of the predicate telling serializer whether field is provided or not. More... | |
| using | Level_type = std::size_t |
| Type of the "level" used to indicate on which level of the nested message internal fields are defined. More... | |
| using | Field_id_type = uint64_t |
| Type for field_id assigned to each field in the. More... | |
| using | Field_size = std::size_t |
Enumerations | |
| enum class | Serialization_error_type : uint64_t { archive_read_error , archive_write_error , corrupted_field , out_of_memory , unknown_field , field_id_mismatch , data_integrity_error , last } |
| Possible error codes generated in serialization library. More... | |
| enum class | Unknown_field_policy : uint8_t { ignore , error } |
| Represents 'unknown field' policy - decision what needs to be done in case unknown field is encountered in deserialized data. More... | |
Functions | |
| template<class Type > | |
| constexpr std::size_t | get_default_type_size () |
| template<Field_size size, typename Field_type , typename... Args> | |
| auto | define_field_with_size (Field_type &arg, Args &&...args) |
| template<typename Field_type , typename... Args> | |
| auto | define_field (Field_type &arg, Args &&...args) |
| template<typename Field_type , typename... Args> | |
| auto | define_field (const Field_type &arg, Args &&...args) |
| template<class Serializable_derived > | |
| auto | define_compound_field (Serializable< Serializable_derived > &arg) |
| template<class Serializable_derived > | |
| auto | define_compound_field (const Serializable< Serializable_derived > &arg) |
| template<class Serializable_derived > | |
| auto | define_compound_field (const Serializable< Serializable_derived > &arg, const Unknown_field_policy &policy) |
| template<typename Field_type > | |
| auto | create_varlen_field_wrapper (Field_type &field_reference) |
| template<class T > | |
| static constexpr bool | is_enum_type () |
| This function checks whether given type is enum type. More... | |
| template<class T > | |
| static constexpr bool | is_serializable_type () |
| This function checks whether given type is serializable. More... | |
| template<class T > | |
| static constexpr bool | is_vector_list_type () |
| This function checks whether given type is STL list or vector. More... | |
| template<class T > | |
| static constexpr bool | is_map_type () |
| This function checks whether given type is STL map or unordered map. More... | |
| template<class T > | |
| static constexpr bool | is_array_type_v () |
| This function checks whether given type is STL array. More... | |
| template<class T > | |
| static constexpr bool | is_set_type () |
| This function checks whether given type is STL set or unordered set. More... | |
| template<typename T > | |
| static constexpr bool | is_simple_type () |
| This function checks whether given type is simple serializable type. More... | |
| template<typename T > | |
| static constexpr bool | is_bounded_size_type () |
| This function checks whether given type (set) is bounded. More... | |
| template<class T > | |
| static constexpr bool | is_string_type () |
| This function checks whether given type is std::string. More... | |
| template<class T > | |
| static constexpr bool | is_integral_type () |
| This function checks whether given type is integer type. More... | |
| template<class Serializable_type > | |
| Field_id_type | find_last_non_ignorable_field_id (const Serializable_type &serializable) |
Variables | |
| static constexpr uint8_t | serialization_format_version = 1 |
| using mysql::serialization::Field_decode_functor_type = typedef std::function<void(void)> |
| using mysql::serialization::Field_encode_functor_type = typedef std::function<bool(void)> |
Type of the predicate telling serializer whether field is provided or not.
Applicable only to optional fields
| using mysql::serialization::Field_id_type = typedef uint64_t |
Type for field_id assigned to each field in the.
| using mysql::serialization::Field_missing_functor = typedef Field_decode_functor_type |
Type of the predicate telling serializer what to do in case field is not provided.
Applicable to optional and required fields
| using mysql::serialization::Field_size = typedef std::size_t |
| using mysql::serialization::Level_type = typedef std::size_t |
Type of the "level" used to indicate on which level of the nested message internal fields are defined.
|
strong |
Possible error codes generated in serialization library.
|
strong |
| auto mysql::serialization::create_varlen_field_wrapper | ( | Field_type & | field_reference | ) |
| auto mysql::serialization::define_compound_field | ( | const Serializable< Serializable_derived > & | arg | ) |
| auto mysql::serialization::define_compound_field | ( | const Serializable< Serializable_derived > & | arg, |
| const Unknown_field_policy & | policy | ||
| ) |
| auto mysql::serialization::define_compound_field | ( | Serializable< Serializable_derived > & | arg | ) |
| auto mysql::serialization::define_field | ( | const Field_type & | arg, |
| Args &&... | args | ||
| ) |
| auto mysql::serialization::define_field | ( | Field_type & | arg, |
| Args &&... | args | ||
| ) |
| auto mysql::serialization::define_field_with_size | ( | Field_type & | arg, |
| Args &&... | args | ||
| ) |
| Field_id_type mysql::serialization::find_last_non_ignorable_field_id | ( | const Serializable_type & | serializable | ) |
|
constexpr |
|
staticconstexpr |
This function checks whether given type is STL array.
| T | tested type |
|
staticconstexpr |
This function checks whether given type (set) is bounded.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is enum type.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is integer type.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is STL map or unordered map.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is serializable.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is STL set or unordered set.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is simple serializable type.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is std::string.
| T | tested type |
|
staticconstexpr |
This function checks whether given type is STL list or vector.
| T | tested type |
|
staticconstexpr |