code_morse 0.0.2 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/bin/code_morse +3 -0
  3. data/lib/code_morse.rb +18 -11
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: e2d499b8fd9f19cfb6d8a837e33f61ad98197dff
4
- data.tar.gz: 3ac75a994f765ccb7267d47e01f4149ef6d3fd46
3
+ metadata.gz: 81b31d8dc155a5f1763de8858ebf06cae72d703f
4
+ data.tar.gz: 5406a369a4f812504954afb2fda4e8b11d3afeca
5
5
  SHA512:
6
- metadata.gz: 6279bcae09184d072e93a02e59de2dd32fc5d511c18b7ac17bebcb87129b9d7f24a18eec948744b27720134e4b6cb2df2c68eddd3b824507c602fa66e916f649
7
- data.tar.gz: 26ffa992dfce060f4fdb5990513936a599ed688865b544d5ccdf6d23b6996b0a347f7257a77545fd8d2d8f8f235350b387b0d72cfff17852dd2754e153d42a24
6
+ metadata.gz: 441e73a8b6078a95563ef05ee93bb645234c2774337689bb5b2e080b91010856cb72f40d0a460781b290ebf0b577e0eac9aa8f63973b27bb95eade0051306488
7
+ data.tar.gz: fa27771e929ed0a6ef7d1a4f46716613a49f3ef17d03b2dec98feddf3c30f13f137e8b9ef9acd5f47b55f228c94b27d8b69bec2c5ca5c871c11667d90f50603f
data/bin/code_morse CHANGED
@@ -1,3 +1,6 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
3
  require_relative '../lib/code_morse'
4
+
5
+ # TODO: wrap morse characters in sigle string
6
+ puts(CodeMorse.new.call(ARGV))
data/lib/code_morse.rb CHANGED
@@ -4,19 +4,26 @@ require_relative './morsify'
4
4
 
5
5
  at_exit { puts("\nbye bye!") }
6
6
 
7
- resp = []
7
+ class CodeMorse
8
+ attr_reader :morse_tree
8
9
 
9
- morse_tree = Morse::Tree.new
10
- morse_tree.learn(MORSE_CHARS)
10
+ def initialize
11
+ @morse_tree = Morse::Tree.new
12
+ @morse_tree.learn(MORSE_CHARS)
13
+ end
14
+
15
+ def call(params)
16
+ params = (params.is_a?(Array) ? params : [params]).flatten
17
+ out = []
11
18
 
12
- # TODO: wrap morse characters in sigle string
19
+ params.each do |param|
20
+ if param =~ /\w/
21
+ out.push(Morsify.new.call(param))
22
+ else # TODO: add regex for recognizing morse code only
23
+ out.push(morse_tree.humanize(param))
24
+ end
25
+ end
13
26
 
14
- ARGV.each do |param|
15
- if param =~ /\w/
16
- resp.push(Morsify.new.call(param))
17
- else # TODO: add regex for recognizing morse code only
18
- resp.push(morse_tree.humanize(param))
27
+ out.join(' ')
19
28
  end
20
29
  end
21
-
22
- puts(resp.join(' '))
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: code_morse
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Alex Miasoiedov