Class: Solitaire::Chunker
- Defined in:
- lib/quiz1/t/solutions/Moses Hohman/cipher.rb
Constant Summary collapse
- CHUNK_SIZE =
5
Class Method Summary collapse
Instance Method Summary collapse
- #chunks ⇒ Object
-
#initialize(text) ⇒ Chunker
constructor
A new instance of Chunker.
- #number_chunks ⇒ Object
Constructor Details
#initialize(text) ⇒ Chunker
Returns a new instance of Chunker.
12 13 14 15 16 17 18 |
# File 'lib/quiz1/t/solutions/Moses Hohman/cipher.rb', line 12 def initialize(text) @legal_chars_only = text.gsub(/[^A-Za-z]/, "").upcase @legal_chars_only <<= "X" * (-@legal_chars_only.size % CHUNK_SIZE) raise "Nothing to chunk (non-alphabet characters removed): #{text}" if @legal_chars_only.size==0 @chunks = [] @number_chunks = [] end |
Class Method Details
Instance Method Details
#chunks ⇒ Object
20 21 22 23 |
# File 'lib/quiz1/t/solutions/Moses Hohman/cipher.rb', line 20 def chunks @chunks if @chunks.size > 0 @chunks = @legal_chars_only.gsub(/(.{#{CHUNK_SIZE}})/, '\1 ').rstrip.split(" ") end |
#number_chunks ⇒ Object
25 26 27 28 |
# File 'lib/quiz1/t/solutions/Moses Hohman/cipher.rb', line 25 def number_chunks @number_chunks if @number_chunks.size > 0 chunks.collect { |chunk| chunk.split("").collect { |char_string| char_string[0]-ASCII_OFFSET } } end |