regexp_parser 2.8.1 → 2.11.3
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 +6 -4
- data/LICENSE +1 -1
- data/Rakefile +5 -3
- data/lib/regexp_parser/error.rb +2 -0
- data/lib/regexp_parser/expression/base.rb +2 -0
- data/lib/regexp_parser/expression/classes/alternation.rb +2 -0
- data/lib/regexp_parser/expression/classes/anchor.rb +2 -0
- data/lib/regexp_parser/expression/classes/backreference.rb +3 -20
- data/lib/regexp_parser/expression/classes/character_set/intersection.rb +2 -0
- data/lib/regexp_parser/expression/classes/character_set/range.rb +2 -0
- data/lib/regexp_parser/expression/classes/character_set.rb +3 -4
- data/lib/regexp_parser/expression/classes/character_type.rb +2 -0
- data/lib/regexp_parser/expression/classes/conditional.rb +2 -14
- data/lib/regexp_parser/expression/classes/escape_sequence.rb +26 -95
- data/lib/regexp_parser/expression/classes/free_space.rb +2 -0
- data/lib/regexp_parser/expression/classes/group.rb +2 -0
- 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 +2 -4
- data/lib/regexp_parser/expression/classes/root.rb +2 -0
- data/lib/regexp_parser/expression/classes/unicode_property.rb +8 -9
- data/lib/regexp_parser/expression/methods/construct.rb +2 -0
- 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 +2 -0
- data/lib/regexp_parser/expression/methods/printing.rb +2 -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 +2 -0
- data/lib/regexp_parser/expression/methods/traverse.rb +2 -0
- data/lib/regexp_parser/expression/quantifier.rb +3 -1
- data/lib/regexp_parser/expression/sequence.rb +2 -0
- data/lib/regexp_parser/expression/sequence_operation.rb +2 -0
- data/lib/regexp_parser/expression/shared.rb +6 -3
- data/lib/regexp_parser/expression/subexpression.rb +2 -0
- data/lib/regexp_parser/expression.rb +39 -33
- data/lib/regexp_parser/lexer.rb +2 -0
- data/lib/regexp_parser/parser.rb +16 -9
- data/lib/regexp_parser/scanner/errors/premature_end_error.rb +2 -0
- data/lib/regexp_parser/scanner/errors/scanner_error.rb +3 -1
- data/lib/regexp_parser/scanner/errors/validation_error.rb +2 -0
- data/lib/regexp_parser/scanner/properties/long.csv +37 -0
- data/lib/regexp_parser/scanner/properties/short.csv +9 -0
- data/lib/regexp_parser/scanner/scanner.rl +62 -18
- data/lib/regexp_parser/scanner.rb +1041 -936
- 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 +8 -6
- data/lib/regexp_parser/syntax/token/character_set.rb +3 -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 +9 -7
- 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 +4 -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 +79 -46
- data/lib/regexp_parser/syntax/token/virtual.rb +5 -3
- 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.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 +12 -11
- data/CHANGELOG.md +0 -691
- data/README.md +0 -506
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
# Ruby 1.x is no longer a supported runtime,
|
|
2
4
|
# but its regex features are still recognized.
|
|
3
5
|
#
|
|
4
6
|
# Aliases for the latest patch version are provided as 'ruby/n.n',
|
|
5
7
|
# e.g. 'ruby/1.9' refers to Ruby v1.9.3.
|
|
6
|
-
Dir[File.expand_path('../versions/*.rb', __FILE__)].sort.each { |f|
|
|
8
|
+
Dir[File.expand_path('../versions/*.rb', __FILE__)].sort.each { |f| require_relative f }
|
|
7
9
|
|
|
8
10
|
Regexp::Syntax::CURRENT = Regexp::Syntax.for("ruby/#{RUBY_VERSION}")
|
data/lib/regexp_parser/syntax.rb
CHANGED
data/lib/regexp_parser/token.rb
CHANGED
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.11.3
|
|
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,12 +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
|
|
50
52
|
- lib/regexp_parser/expression/methods/parts.rb
|
|
51
53
|
- lib/regexp_parser/expression/methods/printing.rb
|
|
54
|
+
- lib/regexp_parser/expression/methods/referenced_expressions.rb
|
|
52
55
|
- lib/regexp_parser/expression/methods/strfregexp.rb
|
|
53
56
|
- lib/regexp_parser/expression/methods/tests.rb
|
|
54
57
|
- lib/regexp_parser/expression/methods/traverse.rb
|
|
@@ -102,6 +105,7 @@ files:
|
|
|
102
105
|
- lib/regexp_parser/syntax/versions/2.6.3.rb
|
|
103
106
|
- lib/regexp_parser/syntax/versions/3.1.0.rb
|
|
104
107
|
- lib/regexp_parser/syntax/versions/3.2.0.rb
|
|
108
|
+
- lib/regexp_parser/syntax/versions/3.5.0.rb
|
|
105
109
|
- lib/regexp_parser/token.rb
|
|
106
110
|
- lib/regexp_parser/version.rb
|
|
107
111
|
- regexp_parser.gemspec
|
|
@@ -114,10 +118,8 @@ metadata:
|
|
|
114
118
|
homepage_uri: https://github.com/ammar/regexp_parser
|
|
115
119
|
source_code_uri: https://github.com/ammar/regexp_parser
|
|
116
120
|
wiki_uri: https://github.com/ammar/regexp_parser/wiki
|
|
117
|
-
|
|
118
|
-
rdoc_options:
|
|
119
|
-
- "--inline-source"
|
|
120
|
-
- "--charset=UTF-8"
|
|
121
|
+
rubygems_mfa_required: 'true'
|
|
122
|
+
rdoc_options: []
|
|
121
123
|
require_paths:
|
|
122
124
|
- lib
|
|
123
125
|
required_ruby_version: !ruby/object:Gem::Requirement
|
|
@@ -131,8 +133,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
131
133
|
- !ruby/object:Gem::Version
|
|
132
134
|
version: '0'
|
|
133
135
|
requirements: []
|
|
134
|
-
rubygems_version: 3.
|
|
135
|
-
signing_key:
|
|
136
|
+
rubygems_version: 3.6.7
|
|
136
137
|
specification_version: 4
|
|
137
138
|
summary: Scanner, lexer, parser for ruby's regular expressions
|
|
138
139
|
test_files: []
|