mustermann 2.0.0 → 3.0.0
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.
- checksums.yaml +4 -4
- data/lib/mustermann/ast/expander.rb +4 -2
- data/lib/mustermann/ast/node.rb +2 -2
- data/lib/mustermann/ast/translator.rb +0 -1
- data/lib/mustermann/version.rb +1 -1
- data/mustermann.gemspec +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ea330a8bf09165e676628df2668f0afa5d8fd32372bb7b07ed6a286cf274f74c
|
4
|
+
data.tar.gz: 58b0252ef3ba1d5bd06b3dceab50c06ba011d98b9e2bc54c6caa314443fa722b
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: f9e8638a1cb73cf39256c6cb422d4d1a4601a2d9348aba8361d31083103e0495a843d595b579f08d2614ba1b665b41959a79eaffd869348551a2cb558c1cf1ea
|
7
|
+
data.tar.gz: 5b569063e6dd7d3beb3bdd983d4f5c30a9d12ce7b5e06d0f1f215e56004ba678011df824d26a94d5dc136d957c7835e5bcc38081cbbda2d838cfe78b3ca00ec7
|
@@ -12,11 +12,11 @@ module Mustermann
|
|
12
12
|
class Expander < Translator
|
13
13
|
raises ExpandError
|
14
14
|
|
15
|
-
translate
|
15
|
+
translate(Array, &-> (*args) do
|
16
16
|
inject(t.pattern) do |pattern, element|
|
17
17
|
t.add_to(pattern, t(element, *args))
|
18
18
|
end
|
19
|
-
end
|
19
|
+
end.ruby2_keywords)
|
20
20
|
|
21
21
|
translate :capture do |**options|
|
22
22
|
t.for_capture(node, **options)
|
@@ -124,6 +124,8 @@ module Mustermann
|
|
124
124
|
# @see Mustermann::AST::Translator#expand
|
125
125
|
# @!visibility private
|
126
126
|
ruby2_keywords def escape(string, *args)
|
127
|
+
return super unless string.respond_to?(:=~)
|
128
|
+
|
127
129
|
# URI::Parser is pretty slow, let's not send every string to it, even if it's unnecessary
|
128
130
|
string =~ /\A\w*\Z/ ? string : super
|
129
131
|
end
|
data/lib/mustermann/ast/node.rb
CHANGED
@@ -35,8 +35,8 @@ module Mustermann
|
|
35
35
|
# Helper for creating a new instance and calling #parse on it.
|
36
36
|
# @return [Mustermann::AST::Node]
|
37
37
|
# @!visibility private
|
38
|
-
def self.parse(
|
39
|
-
new(
|
38
|
+
def self.parse(payload = nil, **options, &block)
|
39
|
+
new(payload, **options).tap { |n| n.parse(&block) }
|
40
40
|
end
|
41
41
|
|
42
42
|
# @!visibility private
|
data/lib/mustermann/version.rb
CHANGED
data/mustermann.gemspec
CHANGED
@@ -10,7 +10,7 @@ Gem::Specification.new do |s|
|
|
10
10
|
s.summary = %q{Your personal string matching expert.}
|
11
11
|
s.description = %q{A library implementing patterns that behave like regular expressions.}
|
12
12
|
s.license = 'MIT'
|
13
|
-
s.required_ruby_version = '>= 2.
|
13
|
+
s.required_ruby_version = '>= 2.6.0'
|
14
14
|
s.files = `git ls-files`.split("\n")
|
15
15
|
s.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
|
16
16
|
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: mustermann
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version:
|
4
|
+
version: 3.0.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Konstantin Haase
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2022-07-
|
12
|
+
date: 2022-07-24 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: ruby2_keywords
|
@@ -97,14 +97,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
97
97
|
requirements:
|
98
98
|
- - ">="
|
99
99
|
- !ruby/object:Gem::Version
|
100
|
-
version: 2.
|
100
|
+
version: 2.6.0
|
101
101
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
102
102
|
requirements:
|
103
103
|
- - ">="
|
104
104
|
- !ruby/object:Gem::Version
|
105
105
|
version: '0'
|
106
106
|
requirements: []
|
107
|
-
rubygems_version: 3.
|
107
|
+
rubygems_version: 3.0.3.1
|
108
108
|
signing_key:
|
109
109
|
specification_version: 4
|
110
110
|
summary: Your personal string matching expert.
|