class PoiseArchive::Bzip2::InputData

This code is free software; you can redistribute it and/or modify it under the terms of the new BSD License.

Copyright © 2011-2013, Sebastian Staudt

Attributes

base[R]
cftab[R]
get_and_move_to_front_decode_yy[R]
in_use[R]
limit[R]
ll8[R]
min_lens[R]
perm[R]
receive_decoding_tables_pos[R]
selector[R]
selector_mtf[R]
seq_to_unseq[R]
temp_char_array_2d[R]
tt[R]
unzftab[R]

Public Class Methods

new(block_size) click to toggle source
# File lib/poise_archive/bzip2/input_data.rb, line 16
def initialize(block_size)
  @in_use = Array.new 256, false

  @seq_to_unseq = Array.new 256, 0
  @selector = Array.new MAX_SELECTORS, 0
  @selector_mtf = Array.new MAX_SELECTORS, 0

  @unzftab = Array.new 256, 0

  @base = Array.new(N_GROUPS) { Array.new(MAX_ALPHA_SIZE, 0) }
  @limit = Array.new(N_GROUPS) { Array.new(MAX_ALPHA_SIZE, 0) }
  @perm = Array.new(N_GROUPS) { Array.new(MAX_ALPHA_SIZE, 0) }
  @min_lens = Array.new N_GROUPS, 0

  @cftab = Array.new 257, 0
  @get_and_move_to_front_decode_yy = Array.new 256
  @temp_char_array_2d = Array.new(N_GROUPS) { Array.new(MAX_ALPHA_SIZE, 0) }
  @receive_decoding_tables_pos = Array.new N_GROUPS, 0

  @ll8 = Array.new block_size * BASEBLOCKSIZE
end

Public Instance Methods

init_tt(size) click to toggle source
# File lib/poise_archive/bzip2/input_data.rb, line 38
def init_tt(size)
  @tt = Array.new(size) if @tt.nil? || @tt.size < size
  @tt
end