25#ifndef MYSQL_ROUTER_CLASSIC_PROTOCOL_MESSAGE_H_
26#define MYSQL_ROUTER_CLASSIC_PROTOCOL_MESSAGE_H_
42 non_blocking = 1 << 0,
59 non_blocking = 1 << 0,
60 through_position = 1 << 1,
61 through_gtid = 1 << 2,
82template <
bool Borrowed>
86 std::conditional_t<Borrowed, std::string_view, std::string>;
98 return "mysql_native_password";
100 return "old_password";
116template <
bool Borrowed>
120 std::conditional_t<Borrowed, std::string_view, std::string>;
182template <
bool Borrowed>
195template <
bool Borrowed>
199 std::conditional_t<Borrowed, std::string_view, std::string>;
216template <
bool Borrowed>
238template <
bool Borrowed>
242 std::conditional_t<Borrowed, std::string_view, std::string>;
253template <
bool Borrowed>
269template <
bool Borrowed>
273 std::conditional_t<Borrowed, std::string_view, std::string>;
275 constexpr Ok() =
default;
328template <
bool Borrowed>
341template <
bool Borrowed>
345 std::conditional_t<Borrowed, std::string_view, std::string>;
349 using base__::base__;
352 constexpr Eof() =
default;
369template <
bool Borrowed>
373 std::conditional_t<Borrowed, std::string_view, std::string>;
402template <
bool Borrowed>
430template <
bool Borrowed>
434 std::conditional_t<Borrowed, std::string_view, std::string>;
482template <
bool Borrowed>
500template <
bool Borrowed>
504 std::conditional_t<Borrowed, std::string_view, std::string>;
518template <
bool Borrowed>
520 auto a_iter = a.
begin();
522 auto b_iter = b.
begin();
523 const auto b_end = b.
end();
525 for (; a_iter !=
a_end && b_iter != b_end; ++a_iter, ++b_iter) {
526 if (*a_iter != *b_iter)
return false;
532template <
bool Borrowed>
542 std::vector<Row<Borrowed>>
rows()
const {
return rows_; }
611template <
bool Borrowed>
619 std::vector<value_type> fields)
622 std::vector<field_type::value_type>
types()
const {
return types_; }
625 std::vector<field_type::value_type>
types_;
628template <
bool Borrowed>
632 std::conditional_t<Borrowed, std::string_view, std::string>;
647template <
bool Borrowed>
653template <
bool Borrowed>
657 std::conditional_t<Borrowed, std::string_view, std::string>;
672template <
bool Borrowed>
682template <
bool Borrowed>
686 std::conditional_t<Borrowed, std::string_view, std::string>;
772template <
bool Borrowed>
784template <
bool Borrowed>
788 std::conditional_t<Borrowed, std::string_view, std::string>;
819template <
bool Borrowed>
824template <
bool Borrowed>
828 std::conditional_t<Borrowed, std::string_view, std::string>;
855template <
bool Borrowed>
861template <
bool Borrowed>
865 std::conditional_t<Borrowed, std::string_view, std::string>;
880template <
bool Borrowed>
886template <
bool Borrowed>
890 std::conditional_t<Borrowed, std::string_view, std::string>;
929template <
bool Borrowed>
994template <
bool Borrowed>
998 std::conditional_t<Borrowed, std::string_view, std::string>;
1013template <
bool Borrowed>
1019template <
bool Borrowed>
1023 std::conditional_t<Borrowed, std::string_view, std::string>;
1038template <
bool Borrowed>
1047template <
bool Borrowed>
1051 std::conditional_t<Borrowed, std::string_view, std::string>;
1076template <
bool Borrowed>
1088template <
bool Borrowed>
1092 std::conditional_t<Borrowed, std::string_view, std::string>;
1102 bool param_already_sent_ =
false)
1131 std::vector<ParamDef>
types, std::vector<value_type>
values)
1155template <
bool Borrowed>
1271template <
bool Borrowed>
1275 std::conditional_t<Borrowed, std::string_view, std::string>;
1291template <
bool Borrowed>
1305template <
bool Borrowed>
1309 std::conditional_t<Borrowed, std::string_view, std::string>;
1333template <
bool Borrowed>
1337 std::conditional_t<Borrowed, std::string_view, std::string>;
1365template <
bool Borrowed>
1369 std::conditional_t<Borrowed, std::string_view, std::string>;
1387 [[nodiscard]]
constexpr uint16_t
port()
const {
return port_; }
1409using Ok = borrowable::message::server::Ok<false>;
1410using Error = borrowable::message::server::Error<false>;
1411using Eof = borrowable::message::server::Eof<false>;
1412using Greeting = borrowable::message::server::Greeting<false>;
1414using ColumnMeta = borrowable::message::server::ColumnMeta<false>;
1418using Row = borrowable::message::server::Row<false>;
1419using StmtRow = borrowable::message::server::StmtRow<false>;
1421using Statistics = borrowable::message::server::Statistics<false>;
1457using Ok = borrowable::message::server::Ok<true>;
1458using Error = borrowable::message::server::Error<true>;
1459using Eof = borrowable::message::server::Eof<true>;
1460using Greeting = borrowable::message::server::Greeting<true>;
1466using Row = borrowable::message::server::Row<true>;
1467using StmtRow = borrowable::message::server::StmtRow<true>;
Class representing an error.
Definition: error.h:47
AuthMethod of classic protocol.
Definition: classic_protocol_message.h:83
constexpr string_type name() const
Definition: classic_protocol_message.h:93
const classic_protocol::capabilities::value_type capabilities_
Definition: classic_protocol_message.h:108
const string_type auth_method_name_
Definition: classic_protocol_message.h:109
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:86
AuthMethod(classic_protocol::capabilities::value_type capabilities, string_type auth_method_name)
Definition: classic_protocol_message.h:88
Definition: classic_protocol_message.h:1272
constexpr string_type auth_method_data() const
Definition: classic_protocol_message.h:1285
string_type auth_method_data_
Definition: classic_protocol_message.h:1288
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1275
constexpr AuthMethodData(string_type auth_method_data)
send data for the current auth-method to server.
Definition: classic_protocol_message.h:1282
Definition: classic_protocol_message.h:1334
constexpr uint64_t position() const
Definition: classic_protocol_message.h:1354
constexpr stdx::flags< Flags > flags() const
Definition: classic_protocol_message.h:1351
string_type filename_
Definition: classic_protocol_message.h:1360
uint32_t server_id_
Definition: classic_protocol_message.h:1359
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1337
stdx::flags< Flags > flags_
Definition: classic_protocol_message.h:1358
constexpr string_type sids() const
Definition: classic_protocol_message.h:1355
string_type sids_
Definition: classic_protocol_message.h:1362
constexpr string_type filename() const
Definition: classic_protocol_message.h:1353
typename classic_protocol::message::client::impl::BinlogDumpGtid::Flags Flags
Definition: classic_protocol_message.h:1340
uint64_t position_
Definition: classic_protocol_message.h:1361
constexpr uint32_t server_id() const
Definition: classic_protocol_message.h:1352
constexpr BinlogDumpGtid(stdx::flags< Flags > flags, uint32_t server_id, string_type filename, uint64_t position, string_type sids)
Definition: classic_protocol_message.h:1342
Definition: classic_protocol_message.h:1306
constexpr stdx::flags< Flags > flags() const
Definition: classic_protocol_message.h:1321
string_type filename_
Definition: classic_protocol_message.h:1330
uint32_t server_id_
Definition: classic_protocol_message.h:1329
constexpr uint64_t position() const
Definition: classic_protocol_message.h:1324
stdx::flags< Flags > flags_
Definition: classic_protocol_message.h:1328
uint32_t position_
Definition: classic_protocol_message.h:1327
constexpr BinlogDump(stdx::flags< Flags > flags, uint32_t server_id, string_type filename, uint32_t position)
Definition: classic_protocol_message.h:1314
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1309
constexpr uint32_t server_id() const
Definition: classic_protocol_message.h:1322
constexpr string_type filename() const
Definition: classic_protocol_message.h:1323
typename classic_protocol::message::client::impl::BinlogDump::Flags Flags
Definition: classic_protocol_message.h:1312
Definition: classic_protocol_message.h:887
constexpr ChangeUser(string_type username, string_type auth_method_data, string_type schema, uint16_t collation, string_type auth_method_name, string_type attributes)
construct a ChangeUser message.
Definition: classic_protocol_message.h:901
string_type attributes_
Definition: classic_protocol_message.h:926
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:890
string_type username_
Definition: classic_protocol_message.h:921
constexpr string_type attributes() const
Definition: classic_protocol_message.h:918
uint16_t collation_
Definition: classic_protocol_message.h:924
constexpr string_type auth_method_name() const
Definition: classic_protocol_message.h:915
constexpr uint8_t collation() const noexcept
Definition: classic_protocol_message.h:911
string_type auth_method_data_
Definition: classic_protocol_message.h:922
constexpr string_type username() const
Definition: classic_protocol_message.h:912
constexpr string_type auth_method_data() const
Definition: classic_protocol_message.h:913
constexpr string_type schema() const
Definition: classic_protocol_message.h:914
string_type schema_
Definition: classic_protocol_message.h:923
string_type auth_method_name_
Definition: classic_protocol_message.h:925
Definition: classic_protocol_message.h:1303
Definition: classic_protocol_message.h:1267
Definition: classic_protocol_message.h:683
constexpr string_type schema() const
Definition: classic_protocol_message.h:740
constexpr void schema(const string_type &schema)
Definition: classic_protocol_message.h:741
constexpr string_type auth_method_data() const
Definition: classic_protocol_message.h:735
string_type auth_method_name_
Definition: classic_protocol_message.h:768
constexpr void capabilities(classic_protocol::capabilities::value_type caps)
Definition: classic_protocol_message.h:718
uint32_t max_packet_size_
Definition: classic_protocol_message.h:763
constexpr string_type auth_method_name() const
name of the auth-method that was explicitly set.
Definition: classic_protocol_message.h:750
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:686
uint8_t collation_
Definition: classic_protocol_message.h:764
constexpr void collation(uint8_t coll) noexcept
Definition: classic_protocol_message.h:730
constexpr uint8_t collation() const noexcept
Definition: classic_protocol_message.h:729
string_type username_
Definition: classic_protocol_message.h:765
constexpr void username(const string_type &v)
Definition: classic_protocol_message.h:733
constexpr Greeting(classic_protocol::capabilities::value_type capabilities, uint32_t max_packet_size, uint8_t collation, string_type username, string_type auth_method_data, string_type schema, string_type auth_method_name, string_type attributes)
construct a client::Greeting message.
Definition: classic_protocol_message.h:700
constexpr classic_protocol::capabilities::value_type capabilities() const
Definition: classic_protocol_message.h:714
constexpr void max_packet_size(uint32_t sz) noexcept
Definition: classic_protocol_message.h:725
constexpr void auth_method_data(const string_type &v)
Definition: classic_protocol_message.h:736
string_type attributes_
Definition: classic_protocol_message.h:769
constexpr uint32_t max_packet_size() const noexcept
Definition: classic_protocol_message.h:722
constexpr void attributes(const string_type &attrs)
Definition: classic_protocol_message.h:759
constexpr string_type attributes() const
Definition: classic_protocol_message.h:757
constexpr string_type username() const
Definition: classic_protocol_message.h:732
classic_protocol::capabilities::value_type capabilities_
Definition: classic_protocol_message.h:762
string_type auth_method_data_
Definition: classic_protocol_message.h:766
constexpr void auth_method_name(const string_type &name)
Definition: classic_protocol_message.h:752
string_type schema_
Definition: classic_protocol_message.h:767
Definition: classic_protocol_message.h:862
string_type schema_
Definition: classic_protocol_message.h:877
constexpr InitSchema(string_type schema)
construct a InitSchema message.
Definition: classic_protocol_message.h:872
constexpr string_type schema() const
Definition: classic_protocol_message.h:874
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:865
Definition: classic_protocol_message.h:975
uint32_t connection_id_
Definition: classic_protocol_message.h:987
constexpr uint32_t connection_id() const
Definition: classic_protocol_message.h:984
constexpr Kill(uint32_t connection_id)
construct a Kill message.
Definition: classic_protocol_message.h:982
Definition: classic_protocol_message.h:825
constexpr string_type table_name() const
Definition: classic_protocol_message.h:847
constexpr ListFields(string_type table_name, string_type wildcard)
list columns of a table.
Definition: classic_protocol_message.h:844
string_type table_name_
Definition: classic_protocol_message.h:851
constexpr string_type wildcard() const
Definition: classic_protocol_message.h:848
string_type wildcard_
Definition: classic_protocol_message.h:852
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:828
Definition: classic_protocol_message.h:1262
Definition: classic_protocol_message.h:785
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:788
constexpr string_type statement() const
Definition: classic_protocol_message.h:810
string_type statement_
Definition: classic_protocol_message.h:815
Query(string_type statement)
Definition: classic_protocol_message.h:799
Query(string_type statement, std::vector< Param > values)
construct a Query message with values.
Definition: classic_protocol_message.h:807
std::vector< Param > values_
Definition: classic_protocol_message.h:816
std::vector< Param > values() const
Definition: classic_protocol_message.h:812
Definition: classic_protocol_message.h:1257
Definition: classic_protocol_message.h:1366
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1369
uint32_t server_id_
Definition: classic_protocol_message.h:1394
string_type password_
Definition: classic_protocol_message.h:1397
constexpr RegisterReplica(uint32_t server_id, string_type hostname, string_type username, string_type password, uint16_t port, uint32_t replication_rank, uint32_t master_id)
Definition: classic_protocol_message.h:1371
constexpr string_type password() const
Definition: classic_protocol_message.h:1386
uint32_t replication_rank_
Definition: classic_protocol_message.h:1399
uint16_t port_
Definition: classic_protocol_message.h:1398
constexpr uint32_t master_id() const
Definition: classic_protocol_message.h:1391
constexpr uint32_t replication_rank() const
Definition: classic_protocol_message.h:1388
constexpr uint32_t server_id() const
Definition: classic_protocol_message.h:1383
constexpr string_type username() const
Definition: classic_protocol_message.h:1385
constexpr string_type hostname() const
Definition: classic_protocol_message.h:1384
string_type username_
Definition: classic_protocol_message.h:1396
string_type hostname_
Definition: classic_protocol_message.h:1395
uint32_t master_id_
Definition: classic_protocol_message.h:1400
constexpr uint16_t port() const
Definition: classic_protocol_message.h:1387
Definition: classic_protocol_message.h:953
classic_protocol::reload_cmds::value_type cmds_
Definition: classic_protocol_message.h:968
constexpr Reload(classic_protocol::reload_cmds::value_type cmds)
construct a Reload message.
Definition: classic_protocol_message.h:960
constexpr classic_protocol::reload_cmds::value_type cmds() const
Definition: classic_protocol_message.h:963
Definition: classic_protocol_message.h:940
Definition: classic_protocol_message.h:995
constexpr string_type payload() const
Definition: classic_protocol_message.h:1007
string_type payload_
Definition: classic_protocol_message.h:1010
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:998
constexpr SendFile(string_type payload)
construct a SendFile message.
Definition: classic_protocol_message.h:1005
set options on the current connection.
Definition: classic_protocol_message.h:1237
constexpr SetOption(uint16_t option)
construct a SetOption message.
Definition: classic_protocol_message.h:1244
constexpr uint16_t option() const
Definition: classic_protocol_message.h:1246
uint16_t option_
Definition: classic_protocol_message.h:1249
Definition: classic_protocol_message.h:947
close a prepared statement.
Definition: classic_protocol_message.h:1167
constexpr uint32_t statement_id() const
Definition: classic_protocol_message.h:1176
constexpr StmtClose(uint32_t statement_id)
construct a StmtClose message.
Definition: classic_protocol_message.h:1174
uint32_t statement_id_
Definition: classic_protocol_message.h:1179
execute a prepared statement.
Definition: classic_protocol_message.h:1089
bool new_params_bound() const noexcept
Definition: classic_protocol_message.h:1142
std::vector< value_type > values_
Definition: classic_protocol_message.h:1152
std::optional< string_type > value_type
Definition: classic_protocol_message.h:1094
uint32_t iteration_count() const noexcept
Definition: classic_protocol_message.h:1141
std::vector< value_type > values() const
Definition: classic_protocol_message.h:1144
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1092
uint32_t statement_id_
Definition: classic_protocol_message.h:1147
bool new_params_bound_
Definition: classic_protocol_message.h:1150
std::vector< ParamDef > types_
Definition: classic_protocol_message.h:1151
uint32_t statement_id() const noexcept
Definition: classic_protocol_message.h:1139
uint32_t iteration_count_
Definition: classic_protocol_message.h:1149
StmtExecute(uint32_t statement_id, classic_protocol::cursor::value_type flags, uint32_t iteration_count, bool new_params_bound, std::vector< ParamDef > types, std::vector< value_type > values)
construct a ExecuteStmt message.
Definition: classic_protocol_message.h:1129
classic_protocol::cursor::value_type flags() const noexcept
Definition: classic_protocol_message.h:1140
std::vector< ParamDef > types() const
Definition: classic_protocol_message.h:1143
classic_protocol::cursor::value_type flags_
Definition: classic_protocol_message.h:1148
fetch rows from an executed statement.
Definition: classic_protocol_message.h:1211
constexpr uint32_t row_count() const
Definition: classic_protocol_message.h:1223
uint32_t row_count_
Definition: classic_protocol_message.h:1227
constexpr uint32_t statement_id() const
Definition: classic_protocol_message.h:1222
uint32_t statement_id_
Definition: classic_protocol_message.h:1226
constexpr StmtFetch(uint32_t statement_id, uint32_t row_count)
construct a ResetStmt message.
Definition: classic_protocol_message.h:1219
append data to a parameter of a prepared statement.
Definition: classic_protocol_message.h:1048
constexpr string_type data() const
Definition: classic_protocol_message.h:1068
string_type data_
Definition: classic_protocol_message.h:1073
uint16_t param_id_
Definition: classic_protocol_message.h:1072
constexpr uint32_t statement_id() const
Definition: classic_protocol_message.h:1066
constexpr StmtParamAppendData(uint32_t statement_id, uint16_t param_id, string_type data)
construct an append-data-to-parameter message.
Definition: classic_protocol_message.h:1060
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1051
constexpr uint16_t param_id() const
Definition: classic_protocol_message.h:1067
uint32_t statement_id_
Definition: classic_protocol_message.h:1071
Definition: classic_protocol_message.h:1020
constexpr StmtPrepare(string_type statement)
construct a PrepareStmt message.
Definition: classic_protocol_message.h:1029
string_type statement_
Definition: classic_protocol_message.h:1035
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:1023
constexpr string_type statement() const
Definition: classic_protocol_message.h:1032
reset a prepared statement.
Definition: classic_protocol_message.h:1189
uint32_t statement_id_
Definition: classic_protocol_message.h:1201
constexpr uint32_t statement_id() const
Definition: classic_protocol_message.h:1198
constexpr StmtReset(uint32_t statement_id)
construct a ResetStmt message.
Definition: classic_protocol_message.h:1196
Opaque auth-method-data message.
Definition: classic_protocol_message.h:239
string_type auth_method_data_
Definition: classic_protocol_message.h:250
constexpr AuthMethodData(string_type auth_method_data)
Definition: classic_protocol_message.h:244
constexpr string_type auth_method_data() const
Definition: classic_protocol_message.h:247
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:242
Definition: classic_protocol_message.h:196
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:199
constexpr AuthMethodSwitch(string_type auth_method, string_type auth_method_data)
Definition: classic_protocol_message.h:203
string_type auth_method_data_
Definition: classic_protocol_message.h:213
string_type auth_method_data() const
Definition: classic_protocol_message.h:209
string_type auth_method() const
Definition: classic_protocol_message.h:208
constexpr AuthMethodSwitch()=default
string_type auth_method_
Definition: classic_protocol_message.h:212
ColumnCount message.
Definition: classic_protocol_message.h:411
constexpr uint64_t count() const noexcept
Definition: classic_protocol_message.h:420
uint64_t count_
Definition: classic_protocol_message.h:423
constexpr ColumnCount(uint64_t count)
construct an ColumnCount message.
Definition: classic_protocol_message.h:418
End of Resultset message.
Definition: classic_protocol_message.h:342
constexpr Eof(classic_protocol::status::value_type status_flags, uint16_t warning_count, string_type message, string_type session_changes)
Definition: classic_protocol_message.h:359
constexpr Eof(classic_protocol::status::value_type status_flags, uint16_t warning_count)
Definition: classic_protocol_message.h:355
Error message.
Definition: classic_protocol_message.h:370
constexpr string_type message() const
Definition: classic_protocol_message.h:393
constexpr string_type sql_state() const
Definition: classic_protocol_message.h:391
string_type message_
Definition: classic_protocol_message.h:398
constexpr uint16_t error_code() const noexcept
Definition: classic_protocol_message.h:389
constexpr Error()=default
constexpr void message(const string_type &msg)
Definition: classic_protocol_message.h:394
string_type sql_state_
Definition: classic_protocol_message.h:399
constexpr Error(uint16_t error_code, string_type message, string_type sql_state="HY000")
construct an Error message.
Definition: classic_protocol_message.h:383
uint16_t error_code_
Definition: classic_protocol_message.h:397
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:373
constexpr void error_code(uint16_t code)
Definition: classic_protocol_message.h:390
constexpr void sql_state(const string_type &state)
Definition: classic_protocol_message.h:392
Definition: classic_protocol_message.h:117
constexpr uint8_t collation() const noexcept
Definition: classic_protocol_message.h:158
constexpr uint32_t connection_id() const noexcept
Definition: classic_protocol_message.h:168
constexpr classic_protocol::status::value_type status_flags() const noexcept
Definition: classic_protocol_message.h:161
uint32_t connection_id_
Definition: classic_protocol_message.h:174
void status_flags(classic_protocol::status::value_type val)
Definition: classic_protocol_message.h:164
string_type auth_method_data_
Definition: classic_protocol_message.h:175
void collation(uint8_t val)
Definition: classic_protocol_message.h:159
void connection_id(uint32_t val)
Definition: classic_protocol_message.h:169
constexpr Greeting(uint8_t protocol_version, string_type version, uint32_t connection_id, string_type auth_method_data, classic_protocol::capabilities::value_type capabilities, uint8_t collation, classic_protocol::status::value_type status_flags, string_type auth_method_name)
Definition: classic_protocol_message.h:122
string_type version_
Definition: classic_protocol_message.h:173
void auth_method_data(string_type val)
Definition: classic_protocol_message.h:148
constexpr string_type auth_method_name() const
Definition: classic_protocol_message.h:145
classic_protocol::capabilities::value_type capabilities() const noexcept
Definition: classic_protocol_message.h:150
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:120
uint8_t protocol_version_
Definition: classic_protocol_message.h:172
string_type auth_method_name_
Definition: classic_protocol_message.h:179
uint8_t collation_
Definition: classic_protocol_message.h:177
void version(string_type val)
Definition: classic_protocol_message.h:143
void auth_method_name(string_type val)
Definition: classic_protocol_message.h:146
void protocol_version(uint8_t val)
Definition: classic_protocol_message.h:140
classic_protocol::capabilities::value_type capabilities_
Definition: classic_protocol_message.h:176
constexpr string_type version() const
Definition: classic_protocol_message.h:142
constexpr string_type auth_method_data() const
Definition: classic_protocol_message.h:147
classic_protocol::status::value_type status_flags_
Definition: classic_protocol_message.h:178
void capabilities(classic_protocol::capabilities::value_type caps)
Definition: classic_protocol_message.h:154
constexpr uint8_t protocol_version() const noexcept
Definition: classic_protocol_message.h:137
Ok message.
Definition: classic_protocol_message.h:270
constexpr string_type message() const
Definition: classic_protocol_message.h:306
constexpr uint64_t last_insert_id() const noexcept
Definition: classic_protocol_message.h:300
uint16_t warning_count_
Definition: classic_protocol_message.h:320
constexpr void affected_rows(uint64_t val)
Definition: classic_protocol_message.h:302
constexpr void status_flags(classic_protocol::status::value_type flags)
Definition: classic_protocol_message.h:288
constexpr void last_insert_id(uint64_t val)
Definition: classic_protocol_message.h:299
constexpr void message(const string_type &msg)
Definition: classic_protocol_message.h:305
constexpr void session_changes(const string_type &changes)
Definition: classic_protocol_message.h:308
uint64_t last_insert_id_
Definition: classic_protocol_message.h:321
constexpr classic_protocol::status::value_type status_flags() const noexcept
Definition: classic_protocol_message.h:292
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:273
string_type message_
Definition: classic_protocol_message.h:324
classic_protocol::status::value_type status_flags_
Definition: classic_protocol_message.h:319
constexpr uint64_t affected_rows() const noexcept
Definition: classic_protocol_message.h:303
constexpr uint16_t warning_count() const noexcept
Definition: classic_protocol_message.h:297
uint64_t affected_rows_
Definition: classic_protocol_message.h:322
string_type session_changes() const
get session-changes.
Definition: classic_protocol_message.h:316
constexpr void warning_count(uint16_t count)
Definition: classic_protocol_message.h:296
constexpr Ok(uint64_t affected_rows, uint64_t last_insert_id, classic_protocol::status::value_type status_flags, uint16_t warning_count, string_type message="", string_type session_changes="")
Definition: classic_protocol_message.h:277
string_type session_changes_
Definition: classic_protocol_message.h:325
Definition: classic_protocol_message.h:533
std::vector< Row< Borrowed > > rows() const
Definition: classic_protocol_message.h:542
std::vector< ColumnMeta< Borrowed > > column_metas() const
Definition: classic_protocol_message.h:539
std::vector< ColumnMeta< Borrowed > > column_metas_
Definition: classic_protocol_message.h:545
std::vector< Row< Borrowed > > rows_
Definition: classic_protocol_message.h:546
ResultSet(std::vector< ColumnMeta< Borrowed > > column_metas, std::vector< Row< Borrowed > > rows)
Definition: classic_protocol_message.h:535
Row in a resultset.
Definition: classic_protocol_message.h:501
typename std::vector< value_type >::const_iterator const_iterator
Definition: classic_protocol_message.h:507
Row(std::vector< value_type > fields)
Definition: classic_protocol_message.h:509
auto begin() const
Definition: classic_protocol_message.h:511
std::vector< value_type > fields_
Definition: classic_protocol_message.h:515
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:504
std::optional< string_type > value_type
Definition: classic_protocol_message.h:506
auto end() const
Definition: classic_protocol_message.h:512
Definition: classic_protocol_message.h:629
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:632
constexpr string_type filename() const
Definition: classic_protocol_message.h:641
constexpr SendFileRequest(string_type filename)
construct a SendFileRequest message.
Definition: classic_protocol_message.h:638
string_type filename_
Definition: classic_protocol_message.h:644
Definition: classic_protocol_message.h:654
string_type stats_
Definition: classic_protocol_message.h:669
constexpr Statistics(string_type stats)
construct a Statistics message.
Definition: classic_protocol_message.h:664
constexpr string_type stats() const
Definition: classic_protocol_message.h:666
std::conditional_t< Borrowed, std::string_view, std::string > string_type
Definition: classic_protocol_message.h:657
StmtPrepareOk message.
Definition: classic_protocol_message.h:554
constexpr uint16_t param_count() const noexcept
Definition: classic_protocol_message.h:582
constexpr void column_count(uint16_t cnt) noexcept
Definition: classic_protocol_message.h:581
uint8_t with_metadata_
Definition: classic_protocol_message.h:601
constexpr uint16_t column_count() const noexcept
Definition: classic_protocol_message.h:580
constexpr void warning_count(uint16_t cnt) noexcept
Definition: classic_protocol_message.h:578
constexpr void statement_id(uint32_t id) noexcept
Definition: classic_protocol_message.h:576
constexpr uint8_t with_metadata() const noexcept
Definition: classic_protocol_message.h:584
uint32_t statement_id_
Definition: classic_protocol_message.h:597
uint16_t warning_count_
Definition: classic_protocol_message.h:598
constexpr StmtPrepareOk(uint32_t stmt_id, uint16_t column_count, uint16_t param_count, uint16_t warning_count, uint8_t with_metadata)
create a Ok message for a client::StmtPrepare.
Definition: classic_protocol_message.h:566
constexpr friend bool operator==(const StmtPrepareOk &lhs, const StmtPrepareOk &rhs)
Definition: classic_protocol_message.h:587
uint16_t column_count_
Definition: classic_protocol_message.h:600
constexpr uint16_t warning_count() const noexcept
Definition: classic_protocol_message.h:577
constexpr void with_metadata(uint8_t with) noexcept
Definition: classic_protocol_message.h:585
constexpr uint32_t statement_id() const noexcept
Definition: classic_protocol_message.h:575
constexpr void param_count(uint16_t cnt) noexcept
Definition: classic_protocol_message.h:583
uint16_t param_count_
Definition: classic_protocol_message.h:599
StmtRow message.
Definition: classic_protocol_message.h:612
std::vector< field_type::value_type > types_
Definition: classic_protocol_message.h:625
std::vector< field_type::value_type > types() const
Definition: classic_protocol_message.h:622
StmtRow(std::vector< field_type::value_type > types, std::vector< value_type > fields)
Definition: classic_protocol_message.h:618
Definition: classic_protocol_message.h:55
Flags
Definition: classic_protocol_message.h:58
Definition: classic_protocol_message.h:38
Flags
Definition: classic_protocol_message.h:41
a type-safe flags type.
Definition: flags.h:114
static int flags[50]
Definition: hp_test1.cc:39
static int count
Definition: myisam_ftdump.cc:44
uint16_t value_type
Definition: vt100.h:183
constexpr bool operator==(const Greeting< Borrowed > &a, const Greeting< Borrowed > &b)
Definition: classic_protocol_message.h:773
bool operator==(const Greeting< Borrowed > &a, const Greeting< Borrowed > &b)
Definition: classic_protocol_message.h:183
borrowable::message::client::Reload Reload
Definition: classic_protocol_message.h:1483
borrowable::message::client::Kill Kill
Definition: classic_protocol_message.h:1481
borrowable::message::server::ColumnMeta< true > ColumnMeta
Definition: classic_protocol_message.h:1462
borrowable::message::server::StmtPrepareOk StmtPrepareOk
Definition: classic_protocol_message.h:1468
borrowable::message::server::SendFileRequest< true > SendFileRequest
Definition: classic_protocol_message.h:1465
borrowable::message::server::StmtRow< true > StmtRow
Definition: classic_protocol_message.h:1467
borrowable::message::server::Eof< true > Eof
Definition: classic_protocol_message.h:1459
borrowable::message::server::Statistics< true > Statistics
Definition: classic_protocol_message.h:1469
borrowable::message::server::Row< true > Row
Definition: classic_protocol_message.h:1466
borrowable::message::server::AuthMethodData< true > AuthMethodData
Definition: classic_protocol_message.h:1464
borrowable::message::server::Ok< true > Ok
Definition: classic_protocol_message.h:1457
borrowable::message::server::ColumnCount ColumnCount
Definition: classic_protocol_message.h:1461
borrowable::message::server::Greeting< true > Greeting
Definition: classic_protocol_message.h:1460
borrowable::message::server::AuthMethodSwitch< true > AuthMethodSwitch
Definition: classic_protocol_message.h:1463
constexpr value_type plugin_auth
Definition: classic_protocol_constants.h:56
constexpr value_type secure_connection
Definition: classic_protocol_constants.h:52
std::bitset< 32 > value_type
Definition: classic_protocol_constants.h:72
std::bitset< pos::_bitset_size > value_type
Definition: classic_protocol_constants.h:285
std::bitset< pos::_bitset_size > value_type
Definition: classic_protocol_constants.h:219
Definition: classic_protocol_message.h:37
borrowable::message::server::AuthMethodSwitch< false > AuthMethodSwitch
Definition: classic_protocol_message.h:1415
borrowable::message::server::StmtPrepareOk StmtPrepareOk
Definition: classic_protocol_message.h:1420
borrowable::message::server::Greeting< false > Greeting
Definition: classic_protocol_message.h:1412
borrowable::message::server::Row< false > Row
Definition: classic_protocol_message.h:1418
borrowable::message::server::Eof< false > Eof
Definition: classic_protocol_message.h:1411
borrowable::message::server::ColumnCount ColumnCount
Definition: classic_protocol_message.h:1413
borrowable::message::server::Ok< false > Ok
Definition: classic_protocol_message.h:1409
borrowable::message::server::AuthMethodData< false > AuthMethodData
Definition: classic_protocol_message.h:1416
borrowable::message::server::Statistics< false > Statistics
Definition: classic_protocol_message.h:1421
borrowable::message::server::StmtRow< false > StmtRow
Definition: classic_protocol_message.h:1419
borrowable::message::server::SendFileRequest< false > SendFileRequest
Definition: classic_protocol_message.h:1417
borrowable::message::server::ColumnMeta< false > ColumnMeta
Definition: classic_protocol_message.h:1414
std::bitset< pos::_bitset_size > value_type
Definition: classic_protocol_constants.h:318
std::bitset< 16 > value_type
Definition: classic_protocol_constants.h:167
Definition: classic_protocol_binary.h:38
Definition: varlen_sort.h:174
std::vector< T, ut::allocator< T > > vector
Specialization of vector which uses allocator.
Definition: ut0new.h:2873
case opt name
Definition: sslopt-case.h:32
Definition: classic_protocol_message.h:790
std::optional< string_type > value
Definition: classic_protocol_message.h:793
string_type name
Definition: classic_protocol_message.h:792
uint16_t type_and_flags
Definition: classic_protocol_message.h:791
Param(uint16_t t, string_type n, std::optional< string_type > v)
Definition: classic_protocol_message.h:795
Definition: classic_protocol_message.h:1096
ParamDef(uint16_t type_and_flags_, string_type name_, bool param_already_sent_=false)
Definition: classic_protocol_message.h:1101
uint16_t type_and_flags
Definition: classic_protocol_message.h:1111
string_type name
Definition: classic_protocol_message.h:1113
friend bool operator==(const ParamDef &lhs, const ParamDef &rhs)
Definition: classic_protocol_message.h:1107
ParamDef(uint16_t type_and_flags_)
Definition: classic_protocol_message.h:1099
bool param_already_sent
Definition: classic_protocol_message.h:1116
Definition: server_struct.h:38
Definition: mysqlslap.cc:218
Definition: mysqlslap.cc:239
@ a_end
Definition: task_arg.h:37
unsigned long id[MAX_DEAD]
Definition: xcom_base.cc:509
int n
Definition: xcom_base.cc:508