reciter 0.1.1 → 0.2.0

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.
@@ -21,6 +21,7 @@ module Reciter
21
21
  end
22
22
 
23
23
  def unparse(*sequence)
24
+ mechanic, sequence = handle_unparse_params(sequence)
24
25
  ranges = []
25
26
  last = nil
26
27
  sequence.sort.each do |n|
@@ -35,11 +36,11 @@ module Reciter
35
36
  if r.end == r.begin || r.end == r.begin + 1
36
37
  r.to_a
37
38
  else
38
- "%s %s %s" % [r.begin, config.text_for_to, r.end]
39
+ "%s%s%s" % [r.begin, mechanic ? '-' : " #{config.text_for_to} ", r.end]
39
40
  end
40
41
  }.
41
42
  flatten.
42
- join(', ')
43
+ join(mechanic ? ';' : ', ')
43
44
  end
44
45
 
45
46
  def self.config
@@ -48,6 +49,14 @@ module Reciter
48
49
 
49
50
  private
50
51
 
52
+ def handle_unparse_params(params)
53
+ if params[0].is_a? Symbol
54
+ [params[0] == :mechanic, params[1..-1]]
55
+ else
56
+ [false, params]
57
+ end
58
+ end
59
+
51
60
  def validate_format(sequence)
52
61
  subsequences = sequence.split(';')
53
62
  raise InvalidInput unless !subsequences.empty? &&
@@ -1,3 +1,3 @@
1
1
  module Reciter
2
- VERSION = '0.1.1'
2
+ VERSION = '0.2.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: reciter
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-10-16 00:00:00.000000000 Z
12
+ date: 2012-11-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rspec
@@ -27,16 +27,32 @@ dependencies:
27
27
  - - ~>
28
28
  - !ruby/object:Gem::Version
29
29
  version: 2.11.0
30
+ - !ruby/object:Gem::Dependency
31
+ name: pry
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
30
46
  description: Parses number sequences.
31
47
  email: rmanhaes@gmail.com
32
48
  executables: []
33
49
  extensions: []
34
50
  extra_rdoc_files: []
35
51
  files:
36
- - lib/reciter/parser.rb
52
+ - lib/reciter/error.rb
37
53
  - lib/reciter/config.rb
54
+ - lib/reciter/parser.rb
38
55
  - lib/reciter/version.rb
39
- - lib/reciter/error.rb
40
56
  - lib/reciter.rb
41
57
  - README.rdoc
42
58
  - LICENSE.txt
@@ -62,7 +78,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
62
78
  version: '0'
63
79
  requirements: []
64
80
  rubyforge_project:
65
- rubygems_version: 1.8.24
81
+ rubygems_version: 1.8.23
66
82
  signing_key:
67
83
  specification_version: 3
68
84
  summary: Parses number sequences