![]()  | 
  
    MySQL 8.4.7
    
   Source Code Documentation 
   | 
 
Binary archive implementation based on vector of bytes. More...
#include <archive_binary.h>
Public Member Functions | |
| template<typename Field_type > | |
| Archive_binary & | operator<< (Field_type &&arg) | 
| Ingests argument into this archive.  More... | |
| template<typename Field_type > | |
| Archive_binary & | operator>> (Field_type &&arg) | 
| Reads argument from this archive.  More... | |
| std::vector< unsigned char > & | get_raw_data () | 
| Function for the API user to access data in the archive.  More... | |
| template<class Field_type > | |
| void | peek (Field_type &&field) | 
| Peeks selected field wrapper (reads data without updating read stream position)  More... | |
| void | seek_to (std::size_t num_pos) | 
| Moves the current read position to current position + size.  More... | |
| std::size_t | get_read_pos () const | 
| Gets current read pos.  More... | |
  Public Member Functions inherited from mysql::serialization::Archive< Archive_binary > | |
| Archive_binary & | operator<< (Type &&arg) | 
| Ingests argument into this archive.  More... | |
| Archive_binary & | operator>> (Type &&arg) | 
| Reads argument from this archive.  More... | |
| decltype(auto) | get_raw_data () | 
| Function for the API user to access data in the archive.  More... | |
| std::size_t | get_size_written () const | 
| Returns archive size - size of data written to the archive.  More... | |
| virtual void | put_field_separator () | 
| This method needs to define field separator to be inserted after the field, note that some formats won't contain separators Used mainly for text formatters.  More... | |
| virtual void | put_entry_separator () | 
| This method needs to define field entry separator to be inserted after the field entry, note that some formats won't contain separators Used mainly for text formatters.  More... | |
| virtual void | put_level_separator () | 
| This method needs to define level separator to be inserted after the level, note that some formats won't contain separators Used mainly for text formatters.  More... | |
| virtual void | process_field_separator () | 
| This method needs to define how to process field separator during decoding.  More... | |
| virtual void | process_entry_separator () | 
| This method needs to define how to process field entry separator during decoding.  More... | |
| virtual void | process_level_separator () | 
| This method needs to define how to process level separator during decoding.  More... | |
Static Public Member Functions | |
| template<typename Field_type , Field_size defined_field_size> | |
| static constexpr std::size_t | get_max_size () | 
| Function returns maximum size of the Type.  More... | |
| template<typename Field_type > | |
| static std::size_t | get_size (Field_type &&arg) | 
| Function returns size of serialized argument.  More... | |
  Static Public Member Functions inherited from mysql::serialization::Archive< Archive_binary > | |
| static std::size_t | get_size (Type &&arg) | 
| Function returns size of serialized argument.  More... | |
| static constexpr std::size_t | get_max_size () | 
| Function returns maximum size of the Type.  More... | |
Private Attributes | |
| std::vector< unsigned char > | m_stream | 
| Internal data stream.  More... | |
| std::size_t | read_pos {0} | 
| Read position.  More... | |
Additional Inherited Members | |
  Protected Member Functions inherited from mysql::serialization::Archive< Archive_binary > | |
| const Archive_binary * | get_derived_const () | 
| Casts this to derived type.  More... | |
| Archive_binary * | get_derived () | 
| Casts this to derived type.  More... | |
| Field_id_type | peek_type_field_id () | 
| This method decodes field id, without moving stream positions.  More... | |
| void | peek (Field_type &&field) | 
| Peeks selected field wrapper (reads data without updating read stream position)  More... | |
| void | seek_to (std::size_t num_pos) | 
| Moves the current read position to current position + size.  More... | |
| std::size_t | get_read_pos () const | 
| Gets current read pos.  More... | |
| bool | is_error () const | 
| bool | is_good () const | 
| const Serialization_error & | get_error () | 
| void | clear_error () | 
| virtual | ~Archive ()=default | 
| Destructor.  More... | |
  Protected Attributes inherited from mysql::serialization::Archive< Archive_binary > | |
| Serialization_error | m_error | 
| Holds information about error.  More... | |
Binary archive implementation based on vector of bytes.
      
  | 
  inlinestaticconstexpr | 
Function returns maximum size of the Type.
| Type | serialized type | 
| std::vector< unsigned char > & mysql::serialization::Archive_binary::get_raw_data | ( | ) | 
Function for the API user to access data in the archive.
      
  | 
  inline | 
Gets current read pos.
      
  | 
  inlinestatic | 
Function returns size of serialized argument.
| Type | type of the argument | 
| [in] | arg | serialized argument | 
| Archive_binary & mysql::serialization::Archive_binary::operator<< | ( | Field_type && | arg | ) | 
Ingests argument into this archive.
| Type | type of the argument | 
| [in] | arg | Argument to read data from | 
| Archive_binary & mysql::serialization::Archive_binary::operator>> | ( | Field_type && | arg | ) | 
Reads argument from this archive.
| Type | type of the argument | 
| [in] | arg | Argument to store data into | 
| void mysql::serialization::Archive_binary::peek | ( | Field_type && | field | ) | 
Peeks selected field wrapper (reads data without updating read stream position)
      
  | 
  inline | 
Moves the current read position to current position + size.
| [in] | num_pos | Number of positions to be skipped | 
      
  | 
  private | 
Internal data stream.
      
  | 
  private | 
Read position.