ArgsParser 0.0.5 → 0.0.7

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.
@@ -1,3 +1,7 @@
1
+ === 0.0.6 2010-03-15
2
+
3
+ * add examples
4
+
1
5
  === 0.0.5 2010-03-15
2
6
 
3
7
  * parse first arg
@@ -5,6 +5,8 @@ Rakefile
5
5
  lib/ArgsParser.rb
6
6
  lib/ArgsParser/Parser.rb
7
7
  examples/example.rb
8
+ examples/math.rb
9
+ examples/sum.rb
8
10
  script/console
9
11
  script/destroy
10
12
  script/generate
@@ -4,7 +4,7 @@
4
4
 
5
5
  == DESCRIPTION:
6
6
 
7
- * Parse args form command line.
7
+ * Parse args from command line.
8
8
 
9
9
  == FEATURES/PROBLEMS:
10
10
 
@@ -33,5 +33,5 @@ if parser.has_param(:size)
33
33
  puts 'size : ' + params[:size]
34
34
  end
35
35
 
36
- # 引数を全て表示
36
+ # show all params
37
37
  p params
@@ -0,0 +1,40 @@
1
+ #!/usr/bin/env ruby
2
+ # -*- coding: utf-8 -*-
3
+ require '../lib/ArgsParser'
4
+
5
+ parser = ArgsParser.parser
6
+ parser.bind(:help, :h, "show help")
7
+ parser.comment(:a, "a (add,sub,mul,div) b") # add comment for help
8
+ parser.comment(:b, "a (add,sub,mul,div) b")
9
+
10
+ first, params = parser.parse(ARGV)
11
+
12
+ required_params = [:a, :b]
13
+ if parser.has_option(:help) or !parser.has_params(required_params)
14
+ puts parser.help
15
+ puts 'e.g. ruby math.rb add -a 5 -b 20'
16
+ exit 1
17
+ end
18
+
19
+ # calc
20
+ a = params[:a].to_i
21
+ b = params[:b].to_i
22
+
23
+ if first == 'sub'
24
+ method = '-'
25
+ result = a - b
26
+ elsif first == 'mul'
27
+ method = '*'
28
+ result = a * b
29
+ elsif first == 'div'
30
+ method = '/'
31
+ result = a.to_f / b
32
+ else
33
+ method = '+'
34
+ result = a + b
35
+ end
36
+
37
+ puts "#{a} #{method} #{b} = #{result}"
38
+
39
+ # show all params
40
+ p params
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/env ruby
2
+ # -*- coding: utf-8 -*-
3
+ require '../lib/ArgsParser'
4
+
5
+ parser = ArgsParser.parser
6
+ parser.bind(:help, :h, "show help")
7
+ parser.comment(:a, "a + b") # add comment for help
8
+ parser.comment(:b, "a + b")
9
+
10
+ parser.parse(ARGV)
11
+ params = parser.params
12
+ required_params = [:a, :b]
13
+
14
+ if parser.has_option(:help) or !parser.has_params(required_params)
15
+ puts parser.help
16
+ puts 'e.g. ruby sum.rb -a 5 -b 20'
17
+ exit 1
18
+ end
19
+
20
+ a = parser.params[:a].to_i
21
+ b = parser.params[:b].to_i
22
+ puts "#{a} + #{b} = #{a+b}"
23
+
24
+ # show all params
25
+ p parser.params
@@ -6,7 +6,7 @@ directory = File.expand_path(File.dirname(__FILE__))
6
6
  require File.join(directory, 'ArgsParser', 'Parser')
7
7
 
8
8
  module ArgsParser
9
- VERSION = '0.0.5'
9
+ VERSION = '0.0.7'
10
10
 
11
11
  def ArgsParser.parser
12
12
  Parser.new
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 0
8
- - 5
9
- version: 0.0.5
8
+ - 7
9
+ version: 0.0.7
10
10
  platform: ruby
11
11
  authors:
12
12
  - shokai
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-03-15 00:00:00 +09:00
17
+ date: 2010-04-07 00:00:00 +09:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -27,39 +27,25 @@ dependencies:
27
27
  segments:
28
28
  - 2
29
29
  - 0
30
- - 3
31
- version: 2.0.3
32
- type: :development
33
- version_requirements: *id001
34
- - !ruby/object:Gem::Dependency
35
- name: gemcutter
36
- prerelease: false
37
- requirement: &id002 !ruby/object:Gem::Requirement
38
- requirements:
39
- - - ">="
40
- - !ruby/object:Gem::Version
41
- segments:
42
- - 0
43
30
  - 4
44
- - 1
45
- version: 0.4.1
31
+ version: 2.0.4
46
32
  type: :development
47
- version_requirements: *id002
33
+ version_requirements: *id001
48
34
  - !ruby/object:Gem::Dependency
49
35
  name: hoe
50
36
  prerelease: false
51
- requirement: &id003 !ruby/object:Gem::Requirement
37
+ requirement: &id002 !ruby/object:Gem::Requirement
52
38
  requirements:
53
39
  - - ">="
54
40
  - !ruby/object:Gem::Version
55
41
  segments:
56
42
  - 2
57
- - 5
43
+ - 6
58
44
  - 0
59
- version: 2.5.0
45
+ version: 2.6.0
60
46
  type: :development
61
- version_requirements: *id003
62
- description: "* Parse args form command line."
47
+ version_requirements: *id002
48
+ description: "* Parse args from command line."
63
49
  email:
64
50
  - hashimoto@shokai.org
65
51
  executables: []
@@ -77,6 +63,8 @@ files:
77
63
  - lib/ArgsParser.rb
78
64
  - lib/ArgsParser/Parser.rb
79
65
  - examples/example.rb
66
+ - examples/math.rb
67
+ - examples/sum.rb
80
68
  - script/console
81
69
  - script/destroy
82
70
  - script/generate
@@ -114,6 +102,6 @@ rubyforge_project: ArgsParser
114
102
  rubygems_version: 1.3.6
115
103
  signing_key:
116
104
  specification_version: 3
117
- summary: "* Parse args form command line."
105
+ summary: "* Parse args from command line."
118
106
  test_files: []
119
107