regexp_parser 2.7.0 → 2.12.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/Gemfile +7 -5
- data/LICENSE +1 -1
- data/Rakefile +5 -3
- data/lib/regexp_parser/error.rb +2 -0
- data/lib/regexp_parser/expression/base.rb +2 -7
- data/lib/regexp_parser/expression/classes/alternation.rb +3 -1
- data/lib/regexp_parser/expression/classes/anchor.rb +2 -0
- data/lib/regexp_parser/expression/classes/backreference.rb +7 -26
- data/lib/regexp_parser/expression/classes/character_set/intersection.rb +2 -0
- data/lib/regexp_parser/expression/classes/character_set/range.rb +4 -7
- data/lib/regexp_parser/expression/classes/character_set.rb +6 -8
- data/lib/regexp_parser/expression/classes/character_type.rb +2 -0
- data/lib/regexp_parser/expression/classes/conditional.rb +4 -28
- data/lib/regexp_parser/expression/classes/escape_sequence.rb +29 -96
- data/lib/regexp_parser/expression/classes/free_space.rb +5 -1
- data/lib/regexp_parser/expression/classes/group.rb +2 -22
- data/lib/regexp_parser/expression/classes/keep.rb +3 -1
- data/lib/regexp_parser/expression/classes/literal.rb +2 -0
- data/lib/regexp_parser/expression/classes/posix_class.rb +7 -5
- data/lib/regexp_parser/expression/classes/root.rb +2 -0
- data/lib/regexp_parser/expression/classes/unicode_property.rb +13 -11
- data/lib/regexp_parser/expression/methods/construct.rb +4 -4
- data/lib/regexp_parser/expression/methods/escape_sequence_char.rb +7 -0
- data/lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb +76 -0
- data/lib/regexp_parser/expression/methods/human_name.rb +2 -0
- data/lib/regexp_parser/expression/methods/match.rb +2 -0
- data/lib/regexp_parser/expression/methods/match_length.rb +2 -0
- data/lib/regexp_parser/expression/methods/negative.rb +22 -0
- data/lib/regexp_parser/expression/methods/options.rb +2 -0
- data/lib/regexp_parser/expression/methods/parts.rb +25 -0
- data/lib/regexp_parser/expression/methods/printing.rb +28 -0
- data/lib/regexp_parser/expression/methods/referenced_expressions.rb +30 -0
- data/lib/regexp_parser/expression/methods/strfregexp.rb +2 -0
- data/lib/regexp_parser/expression/methods/tests.rb +42 -3
- data/lib/regexp_parser/expression/methods/traverse.rb +35 -20
- data/lib/regexp_parser/expression/quantifier.rb +33 -18
- data/lib/regexp_parser/expression/sequence.rb +7 -9
- data/lib/regexp_parser/expression/sequence_operation.rb +6 -9
- data/lib/regexp_parser/expression/shared.rb +40 -24
- data/lib/regexp_parser/expression/subexpression.rb +22 -18
- data/lib/regexp_parser/expression.rb +39 -31
- data/lib/regexp_parser/lexer.rb +17 -7
- data/lib/regexp_parser/parser.rb +101 -95
- data/lib/regexp_parser/scanner/errors/premature_end_error.rb +10 -0
- data/lib/regexp_parser/scanner/errors/scanner_error.rb +8 -0
- data/lib/regexp_parser/scanner/errors/validation_error.rb +65 -0
- data/lib/regexp_parser/scanner/properties/long.csv +61 -0
- data/lib/regexp_parser/scanner/properties/short.csv +15 -0
- data/lib/regexp_parser/scanner/property.rl +1 -1
- data/lib/regexp_parser/scanner/scanner.rl +90 -140
- data/lib/regexp_parser/scanner.rb +1336 -1450
- data/lib/regexp_parser/syntax/any.rb +2 -0
- data/lib/regexp_parser/syntax/base.rb +2 -0
- data/lib/regexp_parser/syntax/token/anchor.rb +5 -3
- data/lib/regexp_parser/syntax/token/assertion.rb +4 -2
- data/lib/regexp_parser/syntax/token/backreference.rb +11 -6
- data/lib/regexp_parser/syntax/token/character_set.rb +6 -1
- data/lib/regexp_parser/syntax/token/character_type.rb +6 -4
- data/lib/regexp_parser/syntax/token/conditional.rb +5 -3
- data/lib/regexp_parser/syntax/token/escape.rb +12 -8
- data/lib/regexp_parser/syntax/token/group.rb +8 -6
- data/lib/regexp_parser/syntax/token/keep.rb +3 -1
- data/lib/regexp_parser/syntax/token/meta.rb +11 -2
- data/lib/regexp_parser/syntax/token/posix_class.rb +4 -2
- data/lib/regexp_parser/syntax/token/quantifier.rb +8 -6
- data/lib/regexp_parser/syntax/token/unicode_property.rb +164 -70
- data/lib/regexp_parser/syntax/token/virtual.rb +13 -0
- data/lib/regexp_parser/syntax/token.rb +18 -16
- data/lib/regexp_parser/syntax/version_lookup.rb +4 -2
- data/lib/regexp_parser/syntax/versions/1.8.6.rb +2 -0
- data/lib/regexp_parser/syntax/versions/1.9.1.rb +2 -0
- data/lib/regexp_parser/syntax/versions/1.9.3.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.0.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.2.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.3.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.4.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.4.1.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.5.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.6.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.6.2.rb +2 -0
- data/lib/regexp_parser/syntax/versions/2.6.3.rb +2 -0
- data/lib/regexp_parser/syntax/versions/3.1.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/3.2.0.rb +2 -0
- data/lib/regexp_parser/syntax/versions/3.5.0.rb +4 -0
- data/lib/regexp_parser/syntax/versions/4.0.0.rb +4 -0
- data/lib/regexp_parser/syntax/versions.rb +3 -1
- data/lib/regexp_parser/syntax.rb +3 -1
- data/lib/regexp_parser/token.rb +2 -0
- data/lib/regexp_parser/version.rb +3 -1
- data/lib/regexp_parser.rb +8 -6
- data/regexp_parser.gemspec +7 -5
- metadata +19 -11
- data/CHANGELOG.md +0 -632
- data/README.md +0 -503
data/lib/regexp_parser.rb
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require_relative 'regexp_parser/version'
|
|
4
|
+
require_relative 'regexp_parser/token'
|
|
5
|
+
require_relative 'regexp_parser/scanner'
|
|
6
|
+
require_relative 'regexp_parser/syntax'
|
|
7
|
+
require_relative 'regexp_parser/lexer'
|
|
8
|
+
require_relative 'regexp_parser/parser'
|
data/regexp_parser.gemspec
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
$:.unshift File.join(File.dirname(__FILE__), 'lib')
|
|
2
4
|
|
|
3
5
|
require 'regexp_parser/version'
|
|
@@ -16,17 +18,17 @@ Gem::Specification.new do |spec|
|
|
|
16
18
|
spec.metadata['source_code_uri'] = spec.homepage
|
|
17
19
|
spec.metadata['wiki_uri'] = "#{spec.homepage}/wiki"
|
|
18
20
|
|
|
19
|
-
spec.
|
|
20
|
-
|
|
21
|
+
spec.metadata['rubygems_mfa_required'] = 'true'
|
|
22
|
+
|
|
23
|
+
spec.authors = ['Ammar Ali', 'Janosch Müller']
|
|
24
|
+
spec.email = ['ammarabuali@gmail.com', 'janosch84@gmail.com']
|
|
21
25
|
|
|
22
26
|
spec.license = 'MIT'
|
|
23
27
|
|
|
24
28
|
spec.require_paths = ['lib']
|
|
25
29
|
|
|
26
30
|
spec.files = Dir.glob('lib/**/*.{csv,rb,rl}') +
|
|
27
|
-
%w[Gemfile Rakefile LICENSE
|
|
28
|
-
|
|
29
|
-
spec.rdoc_options = ["--inline-source", "--charset=UTF-8"]
|
|
31
|
+
%w[Gemfile Rakefile LICENSE regexp_parser.gemspec]
|
|
30
32
|
|
|
31
33
|
spec.platform = Gem::Platform::RUBY
|
|
32
34
|
|
metadata
CHANGED
|
@@ -1,26 +1,25 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: regexp_parser
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 2.
|
|
4
|
+
version: 2.12.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Ammar Ali
|
|
8
|
-
|
|
8
|
+
- Janosch Müller
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date:
|
|
11
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
12
12
|
dependencies: []
|
|
13
13
|
description: A library for tokenizing, lexing, and parsing Ruby regular expressions.
|
|
14
14
|
email:
|
|
15
15
|
- ammarabuali@gmail.com
|
|
16
|
+
- janosch84@gmail.com
|
|
16
17
|
executables: []
|
|
17
18
|
extensions: []
|
|
18
19
|
extra_rdoc_files: []
|
|
19
20
|
files:
|
|
20
|
-
- CHANGELOG.md
|
|
21
21
|
- Gemfile
|
|
22
22
|
- LICENSE
|
|
23
|
-
- README.md
|
|
24
23
|
- Rakefile
|
|
25
24
|
- lib/regexp_parser.rb
|
|
26
25
|
- lib/regexp_parser/error.rb
|
|
@@ -43,10 +42,16 @@ files:
|
|
|
43
42
|
- lib/regexp_parser/expression/classes/root.rb
|
|
44
43
|
- lib/regexp_parser/expression/classes/unicode_property.rb
|
|
45
44
|
- lib/regexp_parser/expression/methods/construct.rb
|
|
45
|
+
- lib/regexp_parser/expression/methods/escape_sequence_char.rb
|
|
46
|
+
- lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb
|
|
46
47
|
- lib/regexp_parser/expression/methods/human_name.rb
|
|
47
48
|
- lib/regexp_parser/expression/methods/match.rb
|
|
48
49
|
- lib/regexp_parser/expression/methods/match_length.rb
|
|
50
|
+
- lib/regexp_parser/expression/methods/negative.rb
|
|
49
51
|
- lib/regexp_parser/expression/methods/options.rb
|
|
52
|
+
- lib/regexp_parser/expression/methods/parts.rb
|
|
53
|
+
- lib/regexp_parser/expression/methods/printing.rb
|
|
54
|
+
- lib/regexp_parser/expression/methods/referenced_expressions.rb
|
|
50
55
|
- lib/regexp_parser/expression/methods/strfregexp.rb
|
|
51
56
|
- lib/regexp_parser/expression/methods/tests.rb
|
|
52
57
|
- lib/regexp_parser/expression/methods/traverse.rb
|
|
@@ -59,6 +64,9 @@ files:
|
|
|
59
64
|
- lib/regexp_parser/parser.rb
|
|
60
65
|
- lib/regexp_parser/scanner.rb
|
|
61
66
|
- lib/regexp_parser/scanner/char_type.rl
|
|
67
|
+
- lib/regexp_parser/scanner/errors/premature_end_error.rb
|
|
68
|
+
- lib/regexp_parser/scanner/errors/scanner_error.rb
|
|
69
|
+
- lib/regexp_parser/scanner/errors/validation_error.rb
|
|
62
70
|
- lib/regexp_parser/scanner/properties/long.csv
|
|
63
71
|
- lib/regexp_parser/scanner/properties/short.csv
|
|
64
72
|
- lib/regexp_parser/scanner/property.rl
|
|
@@ -80,6 +88,7 @@ files:
|
|
|
80
88
|
- lib/regexp_parser/syntax/token/posix_class.rb
|
|
81
89
|
- lib/regexp_parser/syntax/token/quantifier.rb
|
|
82
90
|
- lib/regexp_parser/syntax/token/unicode_property.rb
|
|
91
|
+
- lib/regexp_parser/syntax/token/virtual.rb
|
|
83
92
|
- lib/regexp_parser/syntax/version_lookup.rb
|
|
84
93
|
- lib/regexp_parser/syntax/versions.rb
|
|
85
94
|
- lib/regexp_parser/syntax/versions/1.8.6.rb
|
|
@@ -96,6 +105,8 @@ files:
|
|
|
96
105
|
- lib/regexp_parser/syntax/versions/2.6.3.rb
|
|
97
106
|
- lib/regexp_parser/syntax/versions/3.1.0.rb
|
|
98
107
|
- lib/regexp_parser/syntax/versions/3.2.0.rb
|
|
108
|
+
- lib/regexp_parser/syntax/versions/3.5.0.rb
|
|
109
|
+
- lib/regexp_parser/syntax/versions/4.0.0.rb
|
|
99
110
|
- lib/regexp_parser/token.rb
|
|
100
111
|
- lib/regexp_parser/version.rb
|
|
101
112
|
- regexp_parser.gemspec
|
|
@@ -108,10 +119,8 @@ metadata:
|
|
|
108
119
|
homepage_uri: https://github.com/ammar/regexp_parser
|
|
109
120
|
source_code_uri: https://github.com/ammar/regexp_parser
|
|
110
121
|
wiki_uri: https://github.com/ammar/regexp_parser/wiki
|
|
111
|
-
|
|
112
|
-
rdoc_options:
|
|
113
|
-
- "--inline-source"
|
|
114
|
-
- "--charset=UTF-8"
|
|
122
|
+
rubygems_mfa_required: 'true'
|
|
123
|
+
rdoc_options: []
|
|
115
124
|
require_paths:
|
|
116
125
|
- lib
|
|
117
126
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
@@ -125,8 +134,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
125
134
|
- !ruby/object:Gem::Version
|
|
126
135
|
version: '0'
|
|
127
136
|
requirements: []
|
|
128
|
-
rubygems_version:
|
|
129
|
-
signing_key:
|
|
137
|
+
rubygems_version: 4.0.3
|
|
130
138
|
specification_version: 4
|
|
131
139
|
summary: Scanner, lexer, parser for ruby's regular expressions
|
|
132
140
|
test_files: []
|