MCPcopy Create free account
hub / github.com/MariaDB/server / parse_set_str_value

Function parse_set_str_value

sql/log_event.cc:3811–3829  ·  view source on GitHub ↗

Parses SET_STR_VALUE/ENUM_STR_VALUE field. @param[out] vec stores SET/ENUM column's string values extracted from field. Each SET/ENUM column's string values are stored into a string separate vector. All of them are stored in 'vec'. @param[in] field COLUMN_NAME field in table_map_event. @param[in] length length

Source from the content-addressed store, hash-verified

3809 @param[in] length length of the field
3810 */
3811static void parse_set_str_value(std::vector<Table_map_log_event::
3812 Optional_metadata_fields::str_vector> &vec,
3813 unsigned char *field, unsigned int length)
3814{
3815 unsigned char* p= field;
3816
3817 while (p < field + length)
3818 {
3819 unsigned int count= net_field_length(&p);
3820
3821 vec.push_back(std::vector<std::string>());
3822 for (unsigned int i= 0; i < count; i++)
3823 {
3824 unsigned len1= net_field_length(&p);
3825 vec.back().push_back(std::string(reinterpret_cast<char *>(p), len1));
3826 p+= len1;
3827 }
3828 }
3829}
3830
3831/**
3832 Parses GEOMETRY_TYPE field.

Callers 1

Calls 4

net_field_lengthFunction · 0.85
stringClass · 0.85
push_backMethod · 0.45
backMethod · 0.45

Tested by

no test coverage detected