lab42_rgxargs 0.1.8 → 0.2.0

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: 859bcfceec315a00418253c045cb8819276bafd306e52c36a9f3c1f2f0c657aa
4
- data.tar.gz: 1cb197a190eada29279019ef914e98af7015589a8aacfd1e16e3a4c728615892
3
+ metadata.gz: 41047fa38d0777afaefc8141cf5cf6a5c903dcb096e34e30da5b0f1dc0fdae68
4
+ data.tar.gz: 350afca829cc580e8c865e714625c066cafe2158a35f36a11eebae63957b4e68
5
5
  SHA512:
6
- metadata.gz: c8c31ee9df616a66e6a0463a3778b227395cee9acabed1203d4ce46d840208d65829d9c4b48218453cd74d8f770e03538a737d5c6946cdb6486872fd964cd320
7
- data.tar.gz: d817a9984f1853028979f179f97fd4b421a58deed2b081fa359f35351e73209b7183aabd1cf5466b86e4e0a20383d7f0b9927d369645ceaf0a47731085e5af7b
6
+ metadata.gz: 68b1c191e340488ad1adf0f91feaa2eb623223a31b6b1f80fcd53bc8fc30ac91f2b04150160022123dd41d9ea28802f5293691db929816310fde9ede4ba63dde
7
+ data.tar.gz: a6d9e9f157e915c73f4700886fdb336f19ae8a0154284217190bb75880aad08bc0a0c008cacbfc5a1f8518ed9a5420de7d38894a0a3387296ce16b1fd41e7a77
@@ -1,5 +1,5 @@
1
1
  module Lab42
2
2
  class Rgxargs
3
- VERSION = "0.1.8"
3
+ VERSION = "0.2.0"
4
4
  end
5
5
  end
data/lib/lab42/rgxargs.rb CHANGED
@@ -1,6 +1,7 @@
1
1
  require 'forwardable'
2
2
  require 'ostruct'
3
3
  require 'lab42/enumerable'
4
+ require 'set'
4
5
  module Lab42
5
6
 
6
7
  class Rgxargs
@@ -19,6 +20,10 @@ module Lab42
19
20
 
20
21
  attr_reader :allowed, :args, :conversions, :defaults, :defined_rules, :errors, :options, :required, :syntaxes
21
22
 
23
+ def predefined_matchers
24
+ Predefined.defined_names
25
+ end
26
+
22
27
 
23
28
  def add_conversion(param, conversion=nil, required=nil, &block)
24
29
  case conversion
@@ -54,6 +59,13 @@ module Lab42
54
59
  [options, args, errors]
55
60
  end
56
61
 
62
+ def allows name, matcher=nil, &converter
63
+ add_conversion(name, matcher, &converter)
64
+ end
65
+
66
+ def needs name, matcher=nil, &converter
67
+ add_conversion(name, matcher, :required, &converter)
68
+ end
57
69
 
58
70
  private
59
71
 
@@ -64,11 +76,11 @@ module Lab42
64
76
  @defaults = {}
65
77
  @defined_rules = []
66
78
  @errors = []
67
- @required = Set.new
79
+ @required = ::Set.new
68
80
  @syntaxes = []
69
81
 
70
82
  instance_exec(&blk) if blk
71
- @options = OpenStruct.new(defaults)
83
+ @options = ::OpenStruct.new(defaults)
72
84
  end
73
85
 
74
86
  def _convert(value, name:)
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lab42_rgxargs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.8
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Robert Dober
@@ -94,14 +94,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
94
94
  requirements:
95
95
  - - ">="
96
96
  - !ruby/object:Gem::Version
97
- version: 2.7.0
97
+ version: 3.1.0
98
98
  required_rubygems_version: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - ">="
101
101
  - !ruby/object:Gem::Version
102
102
  version: '0'
103
103
  requirements: []
104
- rubygems_version: 3.1.2
104
+ rubygems_version: 3.3.3
105
105
  signing_key:
106
106
  specification_version: 4
107
107
  summary: Parse CL args according to regexen