24#ifndef MYSQL_SERIALIZATION_FIELD_DEFINITION_HELPERS_H
25#define MYSQL_SERIALIZATION_FIELD_DEFINITION_HELPERS_H
53template <
typename Field_type,
typename... Args>
56 arg, std::forward<Args>(args)...);
59template <
typename Field_type,
typename... Args>
62 get_default_type_size<Field_type>()>(
63 arg, std::forward<Args>(args)...);
66template <
class Serializable_derived>
71template <
class Serializable_derived>
73 return std::cref(arg);
76template <
class Serializable_derived>
82 return std::cref(arg);
Field definition provided by classes implementing Serializable interface.
Definition: field_definition.h:45
Interface for serializable data structures.
Definition: serializable.h:86
void set_unknown_field_policy(const Unknown_field_policy &policy)
Sets unknown field policy for this object.
Definition: serializable.h:149
PT & ref(PT *tp)
Definition: tablespace_impl.cc:359
auto define_field_with_size(Field_type &arg, Args &&... args)
Definition: field_definition_helpers.h:49
auto define_field(Field_type &arg, Args &&... args)
Definition: field_definition_helpers.h:54
Unknown_field_policy
Represents 'unknown field' policy - decision what needs to be done in case unknown field is encounter...
Definition: unknown_field_policy.h:39
auto define_compound_field(Serializable< Serializable_derived > &arg)
Definition: field_definition_helpers.h:67
constexpr std::size_t get_default_type_size()
Definition: field_definition_helpers.h:44
size_t size(const char *const c)
Definition: base64.h:46
Definition: sql_resultset.h:36
mysql::serialization::Field_size Field_size
Definition: tag.cpp:34