MySQL 8.0.39
Source Code Documentation
|
Compressor subclass that only copies input to output without compressing it. More...
#include <none_comp.h>
Public Types | |
using | Char_t = Managed_buffer_sequence_t::Char_t |
using | Managed_buffer_sequence_t = mysqlns::buffer::Managed_buffer_sequence<> |
using | Size_t = Managed_buffer_sequence_t::Size_t |
Public Types inherited from binary_log::transaction::compression::Compressor | |
using | Managed_buffer_sequence_t = mysqlns::buffer::Managed_buffer_sequence<> |
using | Char_t = Managed_buffer_sequence_t::Char_t |
using | Size_t = Managed_buffer_sequence_t::Size_t |
using | Grow_constraint_t = mysqlns::buffer::Grow_constraint |
Static Public Attributes | |
static constexpr type | type_code = NONE |
Static Public Attributes inherited from binary_log::transaction::compression::Compressor | |
static constexpr Size_t | pledged_input_size_unset |
Private Member Functions | |
type | do_get_type_code () const override |
void | do_reset () override |
Implement reset . More... | |
void | do_feed (const Char_t *input_data, Size_t input_size) override |
Implement feed . More... | |
Compress_status | do_compress (Managed_buffer_sequence_t &out) override |
Implement compress . More... | |
Compress_status | do_finish (Managed_buffer_sequence_t &out) override |
Implement finish . More... | |
Private Attributes | |
const Char_t * | m_input_data {nullptr} |
Data previously provided to do_feed . More... | |
Size_t | m_input_size {0} |
Size data previously provided to do_feed . More... | |
Additional Inherited Members | |
Public Member Functions inherited from binary_log::transaction::compression::Compressor | |
Compressor ()=default | |
Compressor (const Compressor &other)=delete | |
Compressor (Compressor &&other)=delete | |
Compressor & | operator= (const Compressor &other)=delete |
Compressor & | operator= (Compressor &&other)=delete |
virtual | ~Compressor ()=default |
type | get_type_code () const |
void | reset () |
Reset the frame. More... | |
template<class Input_char_t > | |
void | feed (const Input_char_t *input_data, Size_t input_size) |
Submit data to be compressed. More... | |
Compress_status | compress (Managed_buffer_sequence_t &out) |
Consume all input previously given in the feed function. More... | |
Compress_status | finish (Managed_buffer_sequence_t &out) |
Consume all input, produce all output, and end the frame. More... | |
Grow_constraint_t | get_grow_constraint_hint () const |
Return a Grow_constraint that may be used with the Managed_buffer_sequence storing the output, in order to optimize memory usage for a particular compression algorithm. More... | |
void | set_pledged_input_size (Size_t size) |
Declare that the input size will be exactly as given. More... | |
Size_t | get_pledged_input_size () const |
Return the size previously provided to set_pledged_input_size , or pledged_input_size_unset if no pledged size has been set. More... | |
Compressor subclass that only copies input to output without compressing it.
using binary_log::transaction::compression::Compressor::Char_t = Managed_buffer_sequence_t::Char_t |
using binary_log::transaction::compression::Compressor::Managed_buffer_sequence_t = mysqlns::buffer::Managed_buffer_sequence<> |
using binary_log::transaction::compression::Compressor::Size_t = Managed_buffer_sequence_t::Size_t |
|
overrideprivatevirtual |
Implement compress
.
This differs from compress
in that it does not have to reset the frame when returning out_of_memory; the caller does that.
For None_comp, this is guaranteed to produce all output on success.
Implements binary_log::transaction::compression::Compressor.
|
overrideprivatevirtual |
Implement feed
.
This differs from feed
in that it does not have to reset the frame when returning out_of_memory; the caller does that.
Implements binary_log::transaction::compression::Compressor.
|
overrideprivatevirtual |
Implement finish
.
This differs from finish
in that it does not have to reset the frame when returning out_of_memory; the caller does that.
Implementations may assume that compress
has been called, since finish
does that.
For None_comp, this is equivalent to compress
.
Implements binary_log::transaction::compression::Compressor.
|
overrideprivatevirtual |
Implements binary_log::transaction::compression::Compressor.
|
overrideprivatevirtual |
Data previously provided to do_feed
.
|
private |
Size data previously provided to do_feed
.