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 +4 -4
- data/lib/lab42/rgxargs/version.rb +1 -1
- data/lib/lab42/rgxargs.rb +14 -2
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 41047fa38d0777afaefc8141cf5cf6a5c903dcb096e34e30da5b0f1dc0fdae68
|
4
|
+
data.tar.gz: 350afca829cc580e8c865e714625c066cafe2158a35f36a11eebae63957b4e68
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 68b1c191e340488ad1adf0f91feaa2eb623223a31b6b1f80fcd53bc8fc30ac91f2b04150160022123dd41d9ea28802f5293691db929816310fde9ede4ba63dde
|
7
|
+
data.tar.gz: a6d9e9f157e915c73f4700886fdb336f19ae8a0154284217190bb75880aad08bc0a0c008cacbfc5a1f8518ed9a5420de7d38894a0a3387296ce16b1fd41e7a77
|
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.
|
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:
|
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.
|
104
|
+
rubygems_version: 3.3.3
|
105
105
|
signing_key:
|
106
106
|
specification_version: 4
|
107
107
|
summary: Parse CL args according to regexen
|