simple_option_parser 0.3 → 0.6

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: e958ca43fa05b22e290364dfb8ba6c515a84c8c7a9cc318a9334d1ce38180c5b
4
+ data.tar.gz: 1abf96ef64afe6b0d281da20cc5d4b72977cfdbc8833e1ca9536060b1f5453f2
5
5
  SHA512:
6
- metadata.gz: 96069f4f8b586b2a24df12d19f47d195efd5497a7e543215b6236f8894c6bb2d00e80b26c44e28dde2341ab53d9620b386984750531216a26fcfe3fb59cfe043
7
- data.tar.gz: 2e33ccc54d9b6b285baf74b1f80fa9f416191bf6e4244e2a5742bae21c0da5344607bd504e85978f1c068add49bc25f81b63ce5e9069c95d7cd622d7a47d0f81
6
+ metadata.gz: 036ac773cc7cf90f61d8635766939feeef8c39206fd5f560ffd52e3eec61587a15332ef464571273a492c19f1f45eb7bf0ddff2ddecdb432b6aada0382edf14d
7
+ data.tar.gz: 6c26e4b1a709e85fe3c8fdec989debbe649ca1a1966f0aefd71d218d6cbf12666a7ac6da2cf3703c4caafe2271ea2c041a8440b8e3982564606b9772d578eb9a
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,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
@@ -1,8 +1,6 @@
1
- require_relative 'lib/simple_option_parser/version'
2
-
3
1
  Gem::Specification.new do |s|
4
2
  s.name = 'simple_option_parser'
5
- s.version = SimpleOptionParser::VERSION
3
+ s.version = '0.6'
6
4
  s.summary = 'A very simple option parser for ARGV.'
7
5
  s.author = 'John Labovitz'
8
6
  s.email = 'johnl@johnlabovitz.com'
@@ -16,8 +14,9 @@ Gem::Specification.new do |s|
16
14
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
17
15
  s.require_path = 'lib'
18
16
 
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'
17
+ s.add_dependency 'hashstruct', '~> 1.4'
18
+
19
+ s.add_development_dependency 'minitest', '~> 5.19'
20
+ s.add_development_dependency 'minitest-power_assert', '~> 0.3'
21
+ s.add_development_dependency 'rake', '~> 13.0'
23
22
  end
data/test/test.rb CHANGED
@@ -6,7 +6,7 @@ require 'simple_option_parser'
6
6
 
7
7
  class SimpleOptionParser
8
8
 
9
- class Test < MiniTest::Test
9
+ class Test < Minitest::Test
10
10
 
11
11
  def test_new_then_parse
12
12
  op = SimpleOptionParser.new
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.6'
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: 2023-07-31 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.4'
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.4'
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.19'
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.19'
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,18 +73,18 @@ extensions: []
73
73
  extra_rdoc_files: []
74
74
  files:
75
75
  - ".gitignore"
76
+ - Gemfile
76
77
  - LICENSE
77
78
  - README.md
78
79
  - Rakefile
79
80
  - lib/simple_option_parser.rb
80
- - lib/simple_option_parser/version.rb
81
81
  - simple_option_parser.gemspec
82
82
  - test/test.rb
83
83
  homepage: http://github.com/jslabovitz/simple_option_parser
84
84
  licenses:
85
85
  - MIT
86
86
  metadata: {}
87
- post_install_message:
87
+ post_install_message:
88
88
  rdoc_options: []
89
89
  require_paths:
90
90
  - lib
@@ -99,9 +99,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  - !ruby/object:Gem::Version
100
100
  version: '0'
101
101
  requirements: []
102
- rubyforge_project:
103
- rubygems_version: 2.7.4
104
- signing_key:
102
+ rubygems_version: 3.4.17
103
+ signing_key:
105
104
  specification_version: 4
106
105
  summary: A very simple option parser for ARGV.
107
106
  test_files:
@@ -1,5 +0,0 @@
1
- class SimpleOptionParser
2
-
3
- VERSION = '0.3'
4
-
5
- end