Class: VibeZstd::CCtx
- Inherits:
-
Object
- Object
- VibeZstd::CCtx
- Defined in:
- sig/vibe_zstd.rbs,
ext/vibe_zstd/vibe_zstd.c
Overview
Compression context for reusable compression operations
Class Method Summary collapse
-
.estimate_memory(level) ⇒ Object
CCtx.estimate_memory(level).
- .parameter_bounds ⇒ Hash[Symbol, Integer]
Instance Method Summary collapse
- #block_delimiters ⇒ Object (also: #block_delimiters?)
- #block_delimiters= ⇒ Object
- #chain_log ⇒ Object
- #chain_log= ⇒ Object
- #checksum_flag ⇒ Object (also: #checksum, #checksum?)
- #checksum_flag= ⇒ Object (also: #checksum=)
-
#compress(*args) ⇒ Object
Releases GVL during compression to allow other Ruby threads to run.
- #compression_level ⇒ Object (also: #level)
-
#compression_level= ⇒ Object
(also: #level=)
CCtx parameter accessors.
- #content_size_flag ⇒ Object (also: #content_size, #content_size?)
- #content_size_flag= ⇒ Object (also: #content_size=)
- #deterministic_ref_prefix ⇒ Object (also: #deterministic_ref_prefix?)
- #deterministic_ref_prefix= ⇒ Object
- #dict_id_flag ⇒ Object (also: #dict_id, #dict_id?)
- #dict_id_flag= ⇒ Object (also: #dict_id=)
- #enable_dedicated_dict_search ⇒ Object (also: #enable_dedicated_dict_search?)
- #enable_dedicated_dict_search= ⇒ Object
- #enable_long_distance_matching ⇒ Object (also: #long_distance_matching, #long_distance_matching?)
- #enable_long_distance_matching= ⇒ Object (also: #long_distance_matching=)
- #enable_seq_producer_fallback ⇒ Object (also: #enable_seq_producer_fallback?)
- #enable_seq_producer_fallback= ⇒ Object
- #force_attach_dict ⇒ Object
- #force_attach_dict= ⇒ Object
- #force_max_window ⇒ Object (also: #force_max_window?)
- #force_max_window= ⇒ Object
- #format ⇒ Object
- #format= ⇒ Object
- #get_parameter ⇒ Integer
- #hash_log ⇒ Object
- #hash_log= ⇒ Object
-
#initialize ⇒ CCtx
constructor
A new instance of CCtx.
- #job_size ⇒ Object
- #job_size= ⇒ Object
- #ldm_bucket_size_log ⇒ Object
- #ldm_bucket_size_log= ⇒ Object
- #ldm_hash_log ⇒ Object
- #ldm_hash_log= ⇒ Object
- #ldm_hash_rate_log ⇒ Object
- #ldm_hash_rate_log= ⇒ Object
- #ldm_min_match ⇒ Object
- #ldm_min_match= ⇒ Object
- #literal_compression_mode ⇒ Object
- #literal_compression_mode= ⇒ Object
- #max_block_size ⇒ Object
- #max_block_size= ⇒ Object
- #min_match ⇒ Object
- #min_match= ⇒ Object
- #overlap_log ⇒ Object
- #overlap_log= ⇒ Object
- #prefetch_cdict_tables ⇒ Object
- #prefetch_cdict_tables= ⇒ Object
-
#reset(*args) ⇒ Object
CCtx reset - reset context to clean state.
- #rsyncable ⇒ Object (also: #rsyncable?)
- #rsyncable= ⇒ Object
- #search_for_external_repcodes ⇒ Object
- #search_for_external_repcodes= ⇒ Object
- #search_log ⇒ Object
- #search_log= ⇒ Object
- #set_parameter ⇒ self
- #src_size_hint ⇒ Object
- #src_size_hint= ⇒ Object
- #stable_in_buffer ⇒ Object (also: #stable_in_buffer?)
- #stable_in_buffer= ⇒ Object
- #stable_out_buffer ⇒ Object (also: #stable_out_buffer?)
- #stable_out_buffer= ⇒ Object
- #strategy ⇒ Object
- #strategy= ⇒ Object
- #target_cblock_size ⇒ Object
- #target_cblock_size= ⇒ Object
- #target_length ⇒ Object
- #target_length= ⇒ Object
-
#use_prefix(prefix_data) ⇒ Object
CCtx use_prefix - use raw data as prefix (lightweight dictionary).
- #use_row_match_finder ⇒ Object
- #use_row_match_finder= ⇒ Object
- #validate_sequences ⇒ Object (also: #validate_sequences?)
- #validate_sequences= ⇒ Object
- #window_log ⇒ Object
- #window_log= ⇒ Object
- #workers ⇒ Object
- #workers= ⇒ Object
Constructor Details
#initialize ⇒ CCtx
Returns a new instance of CCtx.
6 |
# File 'sig/vibe_zstd.rbs', line 6
def initialize: () -> void
|
Class Method Details
.estimate_memory(level) ⇒ Object
CCtx.estimate_memory(level)
40 |
# File 'ext/vibe_zstd/cctx.c', line 40
def self.estimate_memory: (Integer level) -> Integer
|
.parameter_bounds ⇒ Hash[Symbol, Integer]
11 |
# File 'sig/vibe_zstd.rbs', line 11
def self.parameter_bounds: (Symbol param) -> Hash[Symbol, Integer]
|
Instance Method Details
#block_delimiters ⇒ Object Also known as: block_delimiters?
#block_delimiters= ⇒ Object
#chain_log ⇒ Object
#chain_log= ⇒ Object
#checksum_flag ⇒ Object Also known as: checksum, checksum?
#checksum_flag= ⇒ Object Also known as: checksum=
#compress(*args) ⇒ Object
Releases GVL during compression to allow other Ruby threads to run.
91 |
# File 'ext/vibe_zstd/cctx.c', line 91
def compress: (String data, ?Integer? level, ?CDict? dict, ?pledged_size: Integer?) -> String
|
#compression_level ⇒ Object Also known as: level
#compression_level= ⇒ Object Also known as: level=
CCtx parameter accessors
#content_size_flag ⇒ Object Also known as: content_size, content_size?
#content_size_flag= ⇒ Object Also known as: content_size=
#deterministic_ref_prefix ⇒ Object Also known as: deterministic_ref_prefix?
#deterministic_ref_prefix= ⇒ Object
#dict_id_flag ⇒ Object Also known as: dict_id, dict_id?
#dict_id_flag= ⇒ Object Also known as: dict_id=
#enable_dedicated_dict_search ⇒ Object Also known as: enable_dedicated_dict_search?
#enable_dedicated_dict_search= ⇒ Object
#enable_long_distance_matching ⇒ Object Also known as: long_distance_matching, long_distance_matching?
#enable_long_distance_matching= ⇒ Object Also known as: long_distance_matching=
#enable_seq_producer_fallback ⇒ Object Also known as: enable_seq_producer_fallback?
#enable_seq_producer_fallback= ⇒ Object
#force_attach_dict ⇒ Object
#force_attach_dict= ⇒ Object
#force_max_window ⇒ Object Also known as: force_max_window?
#force_max_window= ⇒ Object
#format ⇒ Object
#format= ⇒ Object
#get_parameter ⇒ Integer
9 |
# File 'sig/vibe_zstd.rbs', line 9
def get_parameter: (Symbol param) -> Integer
|
#hash_log ⇒ Object
#hash_log= ⇒ Object
#job_size ⇒ Object
#job_size= ⇒ Object
#ldm_bucket_size_log ⇒ Object
#ldm_bucket_size_log= ⇒ Object
#ldm_hash_log ⇒ Object
#ldm_hash_log= ⇒ Object
#ldm_hash_rate_log ⇒ Object
#ldm_hash_rate_log= ⇒ Object
#ldm_min_match ⇒ Object
#ldm_min_match= ⇒ Object
#literal_compression_mode ⇒ Object
#literal_compression_mode= ⇒ Object
#max_block_size ⇒ Object
#max_block_size= ⇒ Object
#min_match ⇒ Object
#min_match= ⇒ Object
#overlap_log ⇒ Object
#overlap_log= ⇒ Object
#prefetch_cdict_tables ⇒ Object
#prefetch_cdict_tables= ⇒ Object
#reset(*args) ⇒ Object
CCtx reset - reset context to clean state
461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 |
# File 'ext/vibe_zstd/cctx.c', line 461
static VALUE
vibe_zstd_cctx_reset(int argc, VALUE* argv, VALUE self) {
VALUE reset_mode;
rb_scan_args(argc, argv, "01", &reset_mode);
vibe_zstd_cctx* cctx;
TypedData_Get_Struct(self, vibe_zstd_cctx, &vibe_zstd_cctx_type, cctx);
// Default to SESSION_AND_PARAMETERS if no argument provided
ZSTD_ResetDirective directive = ZSTD_reset_session_and_parameters;
if (!NIL_P(reset_mode)) {
int mode = NUM2INT(reset_mode);
if (mode == ZSTD_reset_session_only) {
directive = ZSTD_reset_session_only;
} else if (mode == ZSTD_reset_parameters) {
directive = ZSTD_reset_parameters;
} else if (mode == ZSTD_reset_session_and_parameters) {
directive = ZSTD_reset_session_and_parameters;
} else {
rb_raise(rb_eArgError, "Invalid reset_mode %d: must be ResetDirective::SESSION (1), PARAMETERS (2), or BOTH (3)", mode);
}
}
size_t result = ZSTD_CCtx_reset(cctx->cctx, directive);
if (ZSTD_isError(result)) {
rb_raise(rb_eRuntimeError, "Failed to reset compression context: %s", ZSTD_getErrorName(result));
}
return self;
}
|
#rsyncable ⇒ Object Also known as: rsyncable?
#rsyncable= ⇒ Object
#search_for_external_repcodes ⇒ Object
#search_for_external_repcodes= ⇒ Object
#search_log ⇒ Object
#search_log= ⇒ Object
#set_parameter ⇒ self
8 |
# File 'sig/vibe_zstd.rbs', line 8
def set_parameter: (Symbol param, Integer value) -> self
|
#src_size_hint ⇒ Object
#src_size_hint= ⇒ Object
#stable_in_buffer ⇒ Object Also known as: stable_in_buffer?
#stable_in_buffer= ⇒ Object
#stable_out_buffer ⇒ Object Also known as: stable_out_buffer?
#stable_out_buffer= ⇒ Object
#strategy ⇒ Object
#strategy= ⇒ Object
#target_cblock_size ⇒ Object
#target_cblock_size= ⇒ Object
#target_length ⇒ Object
#target_length= ⇒ Object
#use_prefix(prefix_data) ⇒ Object
CCtx use_prefix - use raw data as prefix (lightweight dictionary)
444 |
# File 'ext/vibe_zstd/cctx.c', line 444
def use_prefix: (String prefix_data) -> self
|