Class: MorseCode::Encoder
- Inherits:
-
Object
- Object
- MorseCode::Encoder
- Defined in:
- lib/morse_code/encoder.rb
Instance Method Summary collapse
- #encode ⇒ Object
- #encode_with ⇒ Object (also: #dit_dah)
-
#initialize(message = '') ⇒ Encoder
constructor
A new instance of Encoder.
Constructor Details
#initialize(message = '') ⇒ Encoder
Returns a new instance of Encoder.
5 6 7 |
# File 'lib/morse_code/encoder.rb', line 5 def initialize( = '') @message = .upcase end |
Instance Method Details
#encode ⇒ Object
9 10 11 12 13 14 15 16 17 |
# File 'lib/morse_code/encoder.rb', line 9 def encode [].tap do |encode_words| @message.split(/\s+/).each do |word| encode_word = [] word.each_char { |char| encode_word << (MorseCode::ENCODE_MAP[char] || char) } encode_words.concat(encode_word) end end.join(' ') end |
#encode_with ⇒ Object Also known as: dit_dah
19 20 21 |
# File 'lib/morse_code/encoder.rb', line 19 def encode_with encode.tap { || .gsub!('.', 'DIT'); .gsub!('-', 'DAH') } end |