simple_option_parser 0.3 → 0.5

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0772c44845d40dfefcb834c9126ccabb7e4ef016a12062d443060061b08b09ab
4
- data.tar.gz: 5aff1ab707d5e26d1551a88295fe673ff1f1192f7d4f345d71b5260edddcc59b
3
+ metadata.gz: a2bc82530ff6992c2b415b8a582fb58b7119ef81d596f1f5dcb85db084c424d4
4
+ data.tar.gz: b677c669f7010c71a5875b7b28e46aa5e493af4bc08569e1808d8547c435d375
5
5
  SHA512:
6
- metadata.gz: 96069f4f8b586b2a24df12d19f47d195efd5497a7e543215b6236f8894c6bb2d00e80b26c44e28dde2341ab53d9620b386984750531216a26fcfe3fb59cfe043
7
- data.tar.gz: 2e33ccc54d9b6b285baf74b1f80fa9f416191bf6e4244e2a5742bae21c0da5344607bd504e85978f1c068add49bc25f81b63ce5e9069c95d7cd622d7a47d0f81
6
+ metadata.gz: 8fa7d3e235a81a75c75a4eddff9fbbf1cc4a2528ce7214a18e5a2996ae7747b7fd45a1384c8580b5840c66f8b97839d0f66678a3d61f912c9d4483e7b49c7196
7
+ data.tar.gz: f99199f93c77809d50b8e0eb125c9af59e85348be745a7c9091690bae58461d73eac6245ea0ed870ba5b7b0afbb30a9364e669c8f9c4ac3fceeae6d8ce22f393
data/.gitignore CHANGED
@@ -1 +1,3 @@
1
+ .DS_Store
2
+ Gemfile.lock
1
3
  *.gem
data/Gemfile ADDED
@@ -0,0 +1,3 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
data/Rakefile CHANGED
@@ -1,11 +1,9 @@
1
+ require 'bundler/gem_tasks'
2
+ Bundler.require
1
3
  require 'rake/testtask'
2
- require 'rubygems/tasks'
3
-
4
- Gem::Tasks.new
5
4
 
6
5
  Rake::TestTask.new do |t|
7
- t.test_files = FileList['test/**/*test.rb']
6
+ t.test_files = FileList['test/*_test.rb']
8
7
  end
9
- desc "Run tests"
10
8
 
11
- task default: :test
9
+ task :default => :test
@@ -1,5 +1,5 @@
1
1
  class SimpleOptionParser
2
2
 
3
- VERSION = '0.3'
3
+ VERSION = '0.5'
4
4
 
5
5
  end
@@ -1,3 +1,5 @@
1
+ require 'hashstruct'
2
+
1
3
  class SimpleOptionParser
2
4
 
3
5
  attr_accessor :defaults
@@ -15,27 +17,11 @@ class SimpleOptionParser
15
17
  while argv.first =~ %r{^--([\w\-]+)(?:=(.*))?$}
16
18
  key, value = $1, $2
17
19
  key = key.gsub('-', '_').to_sym
18
- options[key] = parse_value(value)
20
+ value = true if value.nil?
21
+ options[key] = value
19
22
  argv.shift
20
23
  end
21
- options
22
- end
23
-
24
- def parse_value(value)
25
- case value
26
- when %r{^[\d.]+$}
27
- value.to_f
28
- when %r{^(\d+)/(\d+)$}
29
- Rational($1.to_i, $2.to_i)
30
- when 'true', 'yes', 'on'
31
- true
32
- when 'false', 'no', 'off'
33
- false
34
- when nil
35
- true
36
- else
37
- value
38
- end
24
+ HashStruct.new(options)
39
25
  end
40
26
 
41
27
  end
@@ -16,8 +16,9 @@ Gem::Specification.new do |s|
16
16
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
17
17
  s.require_path = 'lib'
18
18
 
19
- s.add_development_dependency 'minitest', '~> 0'
20
- s.add_development_dependency 'minitest-power_assert', '~> 0'
21
- s.add_development_dependency 'rake', '~> 0'
22
- s.add_development_dependency 'rubygems-tasks', '~> 0'
19
+ s.add_dependency 'hashstruct', '~> 1.3'
20
+
21
+ s.add_development_dependency 'minitest', '~> 5.16'
22
+ s.add_development_dependency 'minitest-power_assert', '~> 0.3'
23
+ s.add_development_dependency 'rake', '~> 13.0'
23
24
  end
metadata CHANGED
@@ -1,71 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_option_parser
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.3'
4
+ version: '0.5'
5
5
  platform: ruby
6
6
  authors:
7
7
  - John Labovitz
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-01-08 00:00:00.000000000 Z
11
+ date: 2022-10-01 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: minitest
14
+ name: hashstruct
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: '0'
20
- type: :development
19
+ version: '1.3'
20
+ type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: '0'
26
+ version: '1.3'
27
27
  - !ruby/object:Gem::Dependency
28
- name: minitest-power_assert
28
+ name: minitest
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '5.16'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '5.16'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rake
42
+ name: minitest-power_assert
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: '0.3'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: '0.3'
55
55
  - !ruby/object:Gem::Dependency
56
- name: rubygems-tasks
56
+ name: rake
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: '13.0'
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: '13.0'
69
69
  description: "\n A very simple option parser for ARGV.\n "
70
70
  email: johnl@johnlabovitz.com
71
71
  executables: []
@@ -73,6 +73,7 @@ extensions: []
73
73
  extra_rdoc_files: []
74
74
  files:
75
75
  - ".gitignore"
76
+ - Gemfile
76
77
  - LICENSE
77
78
  - README.md
78
79
  - Rakefile
@@ -84,7 +85,7 @@ homepage: http://github.com/jslabovitz/simple_option_parser
84
85
  licenses:
85
86
  - MIT
86
87
  metadata: {}
87
- post_install_message:
88
+ post_install_message:
88
89
  rdoc_options: []
89
90
  require_paths:
90
91
  - lib
@@ -99,9 +100,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
100
  - !ruby/object:Gem::Version
100
101
  version: '0'
101
102
  requirements: []
102
- rubyforge_project:
103
- rubygems_version: 2.7.4
104
- signing_key:
103
+ rubygems_version: 3.3.22
104
+ signing_key:
105
105
  specification_version: 4
106
106
  summary: A very simple option parser for ARGV.
107
107
  test_files: