Class: Zrip::DictTrainer

Inherits:
Object
  • Object
show all
Defined in:
lib/zrip/dict_trainer.rb

Overview

FastCOVER-based Zstandard dictionary trainer.

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

._native_new(max_dict_size) ⇒ DictTrainer

Native constructor used by .new.

Parameters:

  • max_dict_size (Integer) —

    maximum dictionary size in bytes

Returns:



36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

.new(max_dict_size) ⇒ DictTrainer

Create a dictionary trainer.

Parameters:

  • max_dict_size (Integer) —

    maximum dictionary size in bytes

Returns:



36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

Instance Method Details

#add_sample(bytes) ⇒ nil

Add a training sample. Samples shorter than 4 bytes are ignored.

Parameters:

  • bytes (String) —

    sample bytes

Returns:

  • (nil)


36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

#max_dict_size ⇒ Integer

Returns configured maximum dictionary size.

Returns:

  • (Integer) —

    configured maximum dictionary size



36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

#sample_count ⇒ Integer

Returns accepted sample count.

Returns:

  • (Integer) —

    accepted sample count



36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

#total_bytes ⇒ Integer

Returns total bytes from accepted samples.

Returns:

  • (Integer) —

    total bytes from accepted samples



36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

#train ⇒ String

Train and consume the trainer.

Returns:

  • (String) —

    dictionary bytes



36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end

#trained? ⇒ Boolean

Returns:

  • (Boolean)


36
37
38
39
40
# File 'lib/zrip/dict_trainer.rb', line 36

class DictTrainer
  def self.new(max_dict_size)
    _native_new(max_dict_size)
  end
end