regexp_parser 2.10.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 +3 -1
- 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 +2 -0
- 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 +2 -0
- data/lib/regexp_parser/expression/classes/character_type.rb +2 -0
- data/lib/regexp_parser/expression/classes/conditional.rb +2 -0
- data/lib/regexp_parser/expression/classes/escape_sequence.rb +3 -0
- 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 +2 -0
- data/lib/regexp_parser/expression/classes/literal.rb +2 -0
- data/lib/regexp_parser/expression/classes/posix_class.rb +2 -0
- data/lib/regexp_parser/expression/classes/root.rb +2 -0
- data/lib/regexp_parser/expression/classes/unicode_property.rb +2 -0
- data/lib/regexp_parser/expression/methods/construct.rb +2 -0
- data/lib/regexp_parser/expression/methods/escape_sequence_char.rb +2 -0
- data/lib/regexp_parser/expression/methods/escape_sequence_codepoint.rb +8 -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 +2 -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 +2 -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 +2 -0
- data/lib/regexp_parser/lexer.rb +2 -0
- data/lib/regexp_parser/parser.rb +3 -0
- data/lib/regexp_parser/scanner/errors/premature_end_error.rb +2 -0
- data/lib/regexp_parser/scanner/errors/scanner_error.rb +2 -0
- data/lib/regexp_parser/scanner/errors/validation_error.rb +2 -0
- data/lib/regexp_parser/scanner/properties/long.csv +32 -0
- data/lib/regexp_parser/scanner/properties/short.csv +12 -0
- data/lib/regexp_parser/scanner/scanner.rl +44 -8
- data/lib/regexp_parser/scanner.rb +786 -656
- 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 +134 -74
- data/lib/regexp_parser/syntax/token/virtual.rb +5 -3
- data/lib/regexp_parser/syntax/token.rb +5 -3
- 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 +2 -0
- data/lib/regexp_parser/syntax.rb +2 -0
- data/lib/regexp_parser/token.rb +2 -0
- data/lib/regexp_parser/version.rb +3 -1
- data/lib/regexp_parser.rb +2 -0
- data/regexp_parser.gemspec +2 -0
- metadata +5 -6
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Anchor
|
|
4
|
-
Basic = %i[bol eol]
|
|
6
|
+
Basic = %i[bol eol].freeze
|
|
5
7
|
Extended = Basic + %i[word_boundary nonword_boundary]
|
|
6
|
-
String = %i[bos eos eos_ob_eol]
|
|
7
|
-
MatchStart = %i[match_start]
|
|
8
|
+
String = %i[bos eos eos_ob_eol].freeze
|
|
9
|
+
MatchStart = %i[match_start].freeze
|
|
8
10
|
|
|
9
11
|
All = Extended + String + MatchStart
|
|
10
12
|
Type = :anchor
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Assertion
|
|
4
|
-
Lookahead = %i[lookahead nlookahead]
|
|
5
|
-
Lookbehind = %i[lookbehind nlookbehind]
|
|
6
|
+
Lookahead = %i[lookahead nlookahead].freeze
|
|
7
|
+
Lookbehind = %i[lookbehind nlookbehind].freeze
|
|
6
8
|
|
|
7
9
|
All = Lookahead + Lookbehind
|
|
8
10
|
Type = :assertion
|
|
@@ -1,12 +1,14 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Backreference
|
|
4
|
-
Plain = %i[number]
|
|
5
|
-
NumberRef = %i[number_ref number_rel_ref]
|
|
6
|
+
Plain = %i[number].freeze
|
|
7
|
+
NumberRef = %i[number_ref number_rel_ref].freeze
|
|
6
8
|
Number = Plain + NumberRef
|
|
7
|
-
Name = %i[name_ref]
|
|
9
|
+
Name = %i[name_ref].freeze
|
|
8
10
|
|
|
9
|
-
RecursionLevel = %i[name_recursion_ref number_recursion_ref]
|
|
11
|
+
RecursionLevel = %i[name_recursion_ref number_recursion_ref].freeze
|
|
10
12
|
|
|
11
13
|
V1_8_6 = Plain
|
|
12
14
|
|
|
@@ -18,8 +20,8 @@ module Regexp::Syntax
|
|
|
18
20
|
|
|
19
21
|
# Type is the same as Backreference so keeping it here, for now.
|
|
20
22
|
module SubexpressionCall
|
|
21
|
-
Name = %i[name_call]
|
|
22
|
-
Number = %i[number_call number_rel_call]
|
|
23
|
+
Name = %i[name_call].freeze
|
|
24
|
+
Number = %i[number_call number_rel_call].freeze
|
|
23
25
|
|
|
24
26
|
All = Name + Number
|
|
25
27
|
end
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module CharacterType
|
|
4
|
-
Basic = []
|
|
5
|
-
Extended = %i[digit nondigit space nonspace word nonword]
|
|
6
|
-
Hex = %i[hex nonhex]
|
|
6
|
+
Basic = [].freeze
|
|
7
|
+
Extended = %i[digit nondigit space nonspace word nonword].freeze
|
|
8
|
+
Hex = %i[hex nonhex].freeze
|
|
7
9
|
|
|
8
|
-
Clustered = %i[linebreak xgrapheme]
|
|
10
|
+
Clustered = %i[linebreak xgrapheme].freeze
|
|
9
11
|
|
|
10
12
|
All = Basic + Extended + Hex + Clustered
|
|
11
13
|
Type = :type
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Conditional
|
|
4
|
-
Delimiters = %i[open close]
|
|
6
|
+
Delimiters = %i[open close].freeze
|
|
5
7
|
|
|
6
|
-
Condition = %i[condition_open condition condition_close]
|
|
7
|
-
Separator = %i[separator]
|
|
8
|
+
Condition = %i[condition_open condition condition_close].freeze
|
|
9
|
+
Separator = %i[separator].freeze
|
|
8
10
|
|
|
9
11
|
All = Conditional::Delimiters + Conditional::Condition + Conditional::Separator
|
|
10
12
|
|
|
@@ -1,25 +1,27 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Escape
|
|
4
|
-
Basic = %i[backslash literal]
|
|
6
|
+
Basic = %i[backslash literal].freeze
|
|
5
7
|
|
|
6
|
-
Control = %i[control meta_sequence]
|
|
8
|
+
Control = %i[control meta_sequence].freeze
|
|
7
9
|
|
|
8
10
|
ASCII = %i[bell backspace escape form_feed newline carriage
|
|
9
|
-
tab vertical_tab]
|
|
11
|
+
tab vertical_tab].freeze
|
|
10
12
|
|
|
11
|
-
Unicode = %i[codepoint codepoint_list]
|
|
13
|
+
Unicode = %i[codepoint codepoint_list].freeze
|
|
12
14
|
|
|
13
15
|
Meta = %i[dot alternation
|
|
14
16
|
zero_or_one zero_or_more one_or_more
|
|
15
17
|
bol eol
|
|
16
18
|
group_open group_close
|
|
17
19
|
interval_open interval_close
|
|
18
|
-
set_open set_close]
|
|
20
|
+
set_open set_close].freeze
|
|
19
21
|
|
|
20
|
-
Hex = %i[hex]
|
|
22
|
+
Hex = %i[hex utf8_hex].freeze
|
|
21
23
|
|
|
22
|
-
Octal = %i[octal]
|
|
24
|
+
Octal = %i[octal].freeze
|
|
23
25
|
|
|
24
26
|
All = Basic + Control + ASCII + Unicode + Meta + Hex + Octal
|
|
25
27
|
Type = :escape
|
|
@@ -1,18 +1,20 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Group
|
|
4
|
-
Basic = %i[capture close]
|
|
6
|
+
Basic = %i[capture close].freeze
|
|
5
7
|
Extended = Basic + %i[options options_switch]
|
|
6
8
|
|
|
7
|
-
Named = %i[named]
|
|
8
|
-
Atomic = %i[atomic]
|
|
9
|
-
Passive = %i[passive]
|
|
10
|
-
Comment = %i[comment]
|
|
9
|
+
Named = %i[named].freeze
|
|
10
|
+
Atomic = %i[atomic].freeze
|
|
11
|
+
Passive = %i[passive].freeze
|
|
12
|
+
Comment = %i[comment].freeze
|
|
11
13
|
|
|
12
14
|
V1_8_6 = Group::Extended + Group::Named + Group::Atomic +
|
|
13
15
|
Group::Passive + Group::Comment
|
|
14
16
|
|
|
15
|
-
V2_4_1 = %i[absence]
|
|
17
|
+
V2_4_1 = %i[absence].freeze
|
|
16
18
|
|
|
17
19
|
All = V1_8_6 + V2_4_1
|
|
18
20
|
Type = :group
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module PosixClass
|
|
4
6
|
Standard = %i[alnum alpha blank cntrl digit graph
|
|
5
|
-
lower print punct space upper xdigit]
|
|
7
|
+
lower print punct space upper xdigit].freeze
|
|
6
8
|
|
|
7
|
-
Extensions = %i[ascii word]
|
|
9
|
+
Extensions = %i[ascii word].freeze
|
|
8
10
|
|
|
9
11
|
All = Standard + Extensions
|
|
10
12
|
Type = :posixclass
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module Quantifier
|
|
@@ -5,23 +7,23 @@ module Regexp::Syntax
|
|
|
5
7
|
zero_or_one
|
|
6
8
|
zero_or_more
|
|
7
9
|
one_or_more
|
|
8
|
-
]
|
|
10
|
+
].freeze
|
|
9
11
|
|
|
10
12
|
Reluctant = %i[
|
|
11
13
|
zero_or_one_reluctant
|
|
12
14
|
zero_or_more_reluctant
|
|
13
15
|
one_or_more_reluctant
|
|
14
|
-
]
|
|
16
|
+
].freeze
|
|
15
17
|
|
|
16
18
|
Possessive = %i[
|
|
17
19
|
zero_or_one_possessive
|
|
18
20
|
zero_or_more_possessive
|
|
19
21
|
one_or_more_possessive
|
|
20
|
-
]
|
|
22
|
+
].freeze
|
|
21
23
|
|
|
22
|
-
Interval = %i[interval]
|
|
23
|
-
IntervalReluctant = %i[interval_reluctant]
|
|
24
|
-
IntervalPossessive = %i[interval_possessive]
|
|
24
|
+
Interval = %i[interval].freeze
|
|
25
|
+
IntervalReluctant = %i[interval_reluctant].freeze
|
|
26
|
+
IntervalPossessive = %i[interval_possessive].freeze
|
|
25
27
|
|
|
26
28
|
IntervalAll = Interval + IntervalReluctant + IntervalPossessive
|
|
27
29
|
|
|
@@ -1,37 +1,42 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
1
3
|
module Regexp::Syntax
|
|
2
4
|
module Token
|
|
3
5
|
module UnicodeProperty
|
|
4
|
-
|
|
6
|
+
def self.all(name)
|
|
7
|
+
constants.grep(/#{name}/).flat_map(&method(:const_get)).freeze
|
|
8
|
+
end
|
|
9
|
+
private_class_method :all
|
|
5
10
|
|
|
6
11
|
CharType_V1_9_0 = %i[alnum alpha ascii blank cntrl digit graph
|
|
7
|
-
lower print punct space upper word xdigit]
|
|
12
|
+
lower print punct space upper word xdigit].freeze
|
|
8
13
|
|
|
9
|
-
CharType_V2_5_0 = %i[xposixpunct]
|
|
14
|
+
CharType_V2_5_0 = %i[xposixpunct].freeze
|
|
10
15
|
|
|
11
|
-
POSIX = %i[any assigned newline]
|
|
16
|
+
POSIX = %i[any assigned newline].freeze
|
|
12
17
|
|
|
13
18
|
module Category
|
|
14
19
|
Letter = %i[letter uppercase_letter lowercase_letter
|
|
15
|
-
titlecase_letter modifier_letter other_letter]
|
|
20
|
+
titlecase_letter modifier_letter other_letter].freeze
|
|
16
21
|
|
|
17
22
|
Mark = %i[mark nonspacing_mark spacing_mark
|
|
18
|
-
enclosing_mark]
|
|
23
|
+
enclosing_mark].freeze
|
|
19
24
|
|
|
20
25
|
Number = %i[number decimal_number letter_number
|
|
21
|
-
other_number]
|
|
26
|
+
other_number].freeze
|
|
22
27
|
|
|
23
28
|
Punctuation = %i[punctuation connector_punctuation dash_punctuation
|
|
24
29
|
open_punctuation close_punctuation initial_punctuation
|
|
25
|
-
final_punctuation other_punctuation]
|
|
30
|
+
final_punctuation other_punctuation].freeze
|
|
26
31
|
|
|
27
32
|
Symbol = %i[symbol math_symbol currency_symbol
|
|
28
|
-
modifier_symbol other_symbol]
|
|
33
|
+
modifier_symbol other_symbol].freeze
|
|
29
34
|
|
|
30
35
|
Separator = %i[separator space_separator line_separator
|
|
31
|
-
paragraph_separator]
|
|
36
|
+
paragraph_separator].freeze
|
|
32
37
|
|
|
33
38
|
Codepoint = %i[other control format
|
|
34
|
-
surrogate private_use unassigned]
|
|
39
|
+
surrogate private_use unassigned].freeze
|
|
35
40
|
|
|
36
41
|
All = Letter + Mark + Number + Punctuation +
|
|
37
42
|
Symbol + Separator + Codepoint
|
|
@@ -39,29 +44,33 @@ module Regexp::Syntax
|
|
|
39
44
|
|
|
40
45
|
Age_V1_9_3 = %i[age=1.1 age=2.0 age=2.1 age=3.0 age=3.1
|
|
41
46
|
age=3.2 age=4.0 age=4.1 age=5.0 age=5.1
|
|
42
|
-
age=5.2 age=6.0]
|
|
47
|
+
age=5.2 age=6.0].freeze
|
|
48
|
+
|
|
49
|
+
Age_V2_0_0 = %i[age=6.1].freeze
|
|
43
50
|
|
|
44
|
-
|
|
51
|
+
Age_V2_2_0 = %i[age=6.2 age=6.3 age=7.0].freeze
|
|
45
52
|
|
|
46
|
-
|
|
53
|
+
Age_V2_3_0 = %i[age=8.0].freeze
|
|
47
54
|
|
|
48
|
-
|
|
55
|
+
Age_V2_4_0 = %i[age=9.0].freeze
|
|
49
56
|
|
|
50
|
-
|
|
57
|
+
Age_V2_5_0 = %i[age=10.0].freeze
|
|
51
58
|
|
|
52
|
-
|
|
59
|
+
Age_V2_6_0 = %i[age=11.0].freeze
|
|
53
60
|
|
|
54
|
-
|
|
61
|
+
Age_V2_6_2 = %i[age=12.0].freeze
|
|
55
62
|
|
|
56
|
-
|
|
63
|
+
Age_V2_6_3 = %i[age=12.1].freeze
|
|
57
64
|
|
|
58
|
-
|
|
65
|
+
Age_V3_1_0 = %i[age=13.0].freeze
|
|
59
66
|
|
|
60
|
-
|
|
67
|
+
Age_V3_2_0 = %i[age=14.0 age=15.0].freeze
|
|
61
68
|
|
|
62
|
-
|
|
69
|
+
Age_V3_5_0 = %i[age=15.1].freeze
|
|
63
70
|
|
|
64
|
-
|
|
71
|
+
Age_V4_0_0 = %i[age=16.0 age=17.0].freeze
|
|
72
|
+
|
|
73
|
+
Age = all(:Age_V)
|
|
65
74
|
|
|
66
75
|
Derived_V1_9_0 = %i[
|
|
67
76
|
ascii_hex_digit
|
|
@@ -115,22 +124,32 @@ module Regexp::Syntax
|
|
|
115
124
|
white_space
|
|
116
125
|
xid_start
|
|
117
126
|
xid_continue
|
|
118
|
-
]
|
|
127
|
+
].freeze
|
|
119
128
|
|
|
120
129
|
Derived_V2_0_0 = %i[
|
|
121
130
|
cased_letter
|
|
122
131
|
combining_mark
|
|
123
|
-
]
|
|
132
|
+
].freeze
|
|
124
133
|
|
|
125
134
|
Derived_V2_4_0 = %i[
|
|
126
135
|
prepended_concatenation_mark
|
|
127
|
-
]
|
|
136
|
+
].freeze
|
|
128
137
|
|
|
129
138
|
Derived_V2_5_0 = %i[
|
|
130
139
|
regional_indicator
|
|
140
|
+
].freeze
|
|
141
|
+
|
|
142
|
+
Derived_V3_5_0 = %i[
|
|
143
|
+
id_compat_math_continue
|
|
144
|
+
id_compat_math_start
|
|
145
|
+
ids_unary_operator
|
|
146
|
+
].freeze
|
|
147
|
+
|
|
148
|
+
Derived_V4_0_0 = %i[
|
|
149
|
+
modifier_combining_mark
|
|
131
150
|
]
|
|
132
151
|
|
|
133
|
-
Derived = all
|
|
152
|
+
Derived = all(:Derived_V)
|
|
134
153
|
|
|
135
154
|
Script_V1_9_0 = %i[
|
|
136
155
|
arabic
|
|
@@ -226,13 +245,13 @@ module Regexp::Syntax
|
|
|
226
245
|
inherited
|
|
227
246
|
common
|
|
228
247
|
unknown
|
|
229
|
-
]
|
|
248
|
+
].freeze
|
|
230
249
|
|
|
231
250
|
Script_V1_9_3 = %i[
|
|
232
251
|
brahmi
|
|
233
252
|
batak
|
|
234
253
|
mandaic
|
|
235
|
-
]
|
|
254
|
+
].freeze
|
|
236
255
|
|
|
237
256
|
Script_V2_0_0 = %i[
|
|
238
257
|
chakma
|
|
@@ -242,7 +261,7 @@ module Regexp::Syntax
|
|
|
242
261
|
sharada
|
|
243
262
|
sora_sompeng
|
|
244
263
|
takri
|
|
245
|
-
]
|
|
264
|
+
].freeze
|
|
246
265
|
|
|
247
266
|
Script_V2_2_0 = %i[
|
|
248
267
|
caucasian_albanian
|
|
@@ -268,7 +287,7 @@ module Regexp::Syntax
|
|
|
268
287
|
khudawadi
|
|
269
288
|
tirhuta
|
|
270
289
|
warang_citi
|
|
271
|
-
]
|
|
290
|
+
].freeze
|
|
272
291
|
|
|
273
292
|
Script_V2_3_0 = %i[
|
|
274
293
|
ahom
|
|
@@ -277,7 +296,7 @@ module Regexp::Syntax
|
|
|
277
296
|
multani
|
|
278
297
|
old_hungarian
|
|
279
298
|
signwriting
|
|
280
|
-
]
|
|
299
|
+
].freeze
|
|
281
300
|
|
|
282
301
|
Script_V2_4_0 = %i[
|
|
283
302
|
adlam
|
|
@@ -286,14 +305,14 @@ module Regexp::Syntax
|
|
|
286
305
|
newa
|
|
287
306
|
osage
|
|
288
307
|
tangut
|
|
289
|
-
]
|
|
308
|
+
].freeze
|
|
290
309
|
|
|
291
310
|
Script_V2_5_0 = %i[
|
|
292
311
|
masaram_gondi
|
|
293
312
|
nushu
|
|
294
313
|
soyombo
|
|
295
314
|
zanabazar_square
|
|
296
|
-
]
|
|
315
|
+
].freeze
|
|
297
316
|
|
|
298
317
|
Script_V2_6_0 = %i[
|
|
299
318
|
dogra
|
|
@@ -303,21 +322,21 @@ module Regexp::Syntax
|
|
|
303
322
|
medefaidrin
|
|
304
323
|
old_sogdian
|
|
305
324
|
sogdian
|
|
306
|
-
]
|
|
325
|
+
].freeze
|
|
307
326
|
|
|
308
327
|
Script_V2_6_2 = %i[
|
|
309
328
|
elymaic
|
|
310
329
|
nandinagari
|
|
311
330
|
nyiakeng_puachue_hmong
|
|
312
331
|
wancho
|
|
313
|
-
]
|
|
332
|
+
].freeze
|
|
314
333
|
|
|
315
334
|
Script_V3_1_0 = %i[
|
|
316
335
|
chorasmian
|
|
317
336
|
dives_akuru
|
|
318
337
|
khitan_small_script
|
|
319
338
|
yezidi
|
|
320
|
-
]
|
|
339
|
+
].freeze
|
|
321
340
|
|
|
322
341
|
Script_V3_2_0 = %i[
|
|
323
342
|
cypro_minoan
|
|
@@ -327,9 +346,23 @@ module Regexp::Syntax
|
|
|
327
346
|
tangsa
|
|
328
347
|
toto
|
|
329
348
|
vithkuqi
|
|
330
|
-
]
|
|
331
|
-
|
|
332
|
-
|
|
349
|
+
].freeze
|
|
350
|
+
|
|
351
|
+
Script_V4_0_0 = %i[
|
|
352
|
+
beria_erfe
|
|
353
|
+
garay
|
|
354
|
+
gurung_khema
|
|
355
|
+
kirat_rai
|
|
356
|
+
ol_onal
|
|
357
|
+
sidetic
|
|
358
|
+
sunuwar
|
|
359
|
+
tai_yo
|
|
360
|
+
todhri
|
|
361
|
+
tolong_siki
|
|
362
|
+
tulu_tigalari
|
|
363
|
+
].freeze
|
|
364
|
+
|
|
365
|
+
Script = all(:Script_V)
|
|
333
366
|
|
|
334
367
|
UnicodeBlock_V1_9_0 = %i[
|
|
335
368
|
in_alphabetic_presentation_forms
|
|
@@ -428,7 +461,7 @@ module Regexp::Syntax
|
|
|
428
461
|
in_yi_radicals
|
|
429
462
|
in_yi_syllables
|
|
430
463
|
in_yijing_hexagram_symbols
|
|
431
|
-
]
|
|
464
|
+
].freeze
|
|
432
465
|
|
|
433
466
|
UnicodeBlock_V2_0_0 = %i[
|
|
434
467
|
in_aegean_numbers
|
|
@@ -556,7 +589,7 @@ module Regexp::Syntax
|
|
|
556
589
|
in_variation_selectors_supplement
|
|
557
590
|
in_vedic_extensions
|
|
558
591
|
in_vertical_forms
|
|
559
|
-
]
|
|
592
|
+
].freeze
|
|
560
593
|
|
|
561
594
|
UnicodeBlock_V2_2_0 = %i[
|
|
562
595
|
in_bassa_vah
|
|
@@ -591,7 +624,7 @@ module Regexp::Syntax
|
|
|
591
624
|
in_supplemental_arrows_c
|
|
592
625
|
in_tirhuta
|
|
593
626
|
in_warang_citi
|
|
594
|
-
]
|
|
627
|
+
].freeze
|
|
595
628
|
|
|
596
629
|
UnicodeBlock_V2_3_0 = %i[
|
|
597
630
|
in_ahom
|
|
@@ -604,7 +637,7 @@ module Regexp::Syntax
|
|
|
604
637
|
in_old_hungarian
|
|
605
638
|
in_supplemental_symbols_and_pictographs
|
|
606
639
|
in_sutton_signwriting
|
|
607
|
-
]
|
|
640
|
+
].freeze
|
|
608
641
|
|
|
609
642
|
UnicodeBlock_V2_4_0 = %i[
|
|
610
643
|
in_adlam
|
|
@@ -618,7 +651,7 @@ module Regexp::Syntax
|
|
|
618
651
|
in_osage
|
|
619
652
|
in_tangut
|
|
620
653
|
in_tangut_components
|
|
621
|
-
]
|
|
654
|
+
].freeze
|
|
622
655
|
|
|
623
656
|
UnicodeBlock_V2_5_0 = %i[
|
|
624
657
|
in_cjk_unified_ideographs_extension_f
|
|
@@ -628,7 +661,7 @@ module Regexp::Syntax
|
|
|
628
661
|
in_soyombo
|
|
629
662
|
in_syriac_supplement
|
|
630
663
|
in_zanabazar_square
|
|
631
|
-
]
|
|
664
|
+
].freeze
|
|
632
665
|
|
|
633
666
|
UnicodeBlock_V2_6_0 = %i[
|
|
634
667
|
in_chess_symbols
|
|
@@ -642,7 +675,7 @@ module Regexp::Syntax
|
|
|
642
675
|
in_medefaidrin
|
|
643
676
|
in_old_sogdian
|
|
644
677
|
in_sogdian
|
|
645
|
-
]
|
|
678
|
+
].freeze
|
|
646
679
|
|
|
647
680
|
UnicodeBlock_V2_6_2 = %i[
|
|
648
681
|
in_egyptian_hieroglyph_format_controls
|
|
@@ -654,7 +687,7 @@ module Regexp::Syntax
|
|
|
654
687
|
in_symbols_and_pictographs_extended_a
|
|
655
688
|
in_tamil_supplement
|
|
656
689
|
in_wancho
|
|
657
|
-
]
|
|
690
|
+
].freeze
|
|
658
691
|
|
|
659
692
|
UnicodeBlock_V3_1_0 = %i[
|
|
660
693
|
in_chorasmian
|
|
@@ -665,7 +698,7 @@ module Regexp::Syntax
|
|
|
665
698
|
in_symbols_for_legacy_computing
|
|
666
699
|
in_tangut_supplement
|
|
667
700
|
in_yezidi
|
|
668
|
-
]
|
|
701
|
+
].freeze
|
|
669
702
|
|
|
670
703
|
UnicodeBlock_V3_2_0 = %i[
|
|
671
704
|
in_arabic_extended_b
|
|
@@ -687,9 +720,34 @@ module Regexp::Syntax
|
|
|
687
720
|
in_unified_canadian_aboriginal_syllabics_extended_a
|
|
688
721
|
in_vithkuqi
|
|
689
722
|
in_znamenny_musical_notation
|
|
690
|
-
]
|
|
691
|
-
|
|
692
|
-
|
|
723
|
+
].freeze
|
|
724
|
+
|
|
725
|
+
UnicodeBlock_V3_5_0 = %i[
|
|
726
|
+
in_cjk_unified_ideographs_extension_i
|
|
727
|
+
].freeze
|
|
728
|
+
|
|
729
|
+
UnicodeBlock_V4_0_0 = %i[
|
|
730
|
+
in_beria_erfe
|
|
731
|
+
in_cjk_unified_ideographs_extension_j
|
|
732
|
+
in_egyptian_hieroglyphs_extended_a
|
|
733
|
+
in_garay
|
|
734
|
+
in_gurung_khema
|
|
735
|
+
in_kirat_rai
|
|
736
|
+
in_miscellaneous_symbols_supplement
|
|
737
|
+
in_myanmar_extended_c
|
|
738
|
+
in_ol_onal
|
|
739
|
+
in_sharada_supplement
|
|
740
|
+
in_sidetic
|
|
741
|
+
in_sunuwar
|
|
742
|
+
in_symbols_for_legacy_computing_supplement
|
|
743
|
+
in_tai_yo
|
|
744
|
+
in_tangut_components_supplement
|
|
745
|
+
in_todhri
|
|
746
|
+
in_tolong_siki
|
|
747
|
+
in_tulu_tigalari
|
|
748
|
+
].freeze
|
|
749
|
+
|
|
750
|
+
UnicodeBlock = all(:UnicodeBlock_V)
|
|
693
751
|
|
|
694
752
|
Emoji_V2_5_0 = %i[
|
|
695
753
|
emoji
|
|
@@ -697,11 +755,11 @@ module Regexp::Syntax
|
|
|
697
755
|
emoji_modifier
|
|
698
756
|
emoji_modifier_base
|
|
699
757
|
emoji_presentation
|
|
700
|
-
]
|
|
758
|
+
].freeze
|
|
701
759
|
|
|
702
760
|
Emoji_V2_6_0 = %i[
|
|
703
761
|
extended_pictographic
|
|
704
|
-
]
|
|
762
|
+
].freeze
|
|
705
763
|
|
|
706
764
|
Enumerated_V2_4_0 = %i[
|
|
707
765
|
grapheme_cluster_break=control
|
|
@@ -717,26 +775,28 @@ module Regexp::Syntax
|
|
|
717
775
|
grapheme_cluster_break=t
|
|
718
776
|
grapheme_cluster_break=v
|
|
719
777
|
grapheme_cluster_break=zwj
|
|
720
|
-
]
|
|
721
|
-
|
|
722
|
-
Enumerated = all
|
|
723
|
-
|
|
724
|
-
Emoji = all
|
|
725
|
-
|
|
726
|
-
V1_9_0 = Category::All + POSIX + all
|
|
727
|
-
V1_9_3 = all
|
|
728
|
-
V2_0_0 = all
|
|
729
|
-
V2_2_0 = all
|
|
730
|
-
V2_3_0 = all
|
|
731
|
-
V2_4_0 = all
|
|
732
|
-
V2_5_0 = all
|
|
733
|
-
V2_6_0 = all
|
|
734
|
-
V2_6_2 = all
|
|
735
|
-
V2_6_3 = all
|
|
736
|
-
V3_1_0 = all
|
|
737
|
-
V3_2_0 = all
|
|
738
|
-
|
|
739
|
-
|
|
778
|
+
].freeze
|
|
779
|
+
|
|
780
|
+
Enumerated = all(:Enumerated_V)
|
|
781
|
+
|
|
782
|
+
Emoji = all(:Emoji_V)
|
|
783
|
+
|
|
784
|
+
V1_9_0 = Category::All + POSIX + all(:V1_9_0)
|
|
785
|
+
V1_9_3 = all(:V1_9_3)
|
|
786
|
+
V2_0_0 = all(:V2_0_0)
|
|
787
|
+
V2_2_0 = all(:V2_2_0)
|
|
788
|
+
V2_3_0 = all(:V2_3_0)
|
|
789
|
+
V2_4_0 = all(:V2_4_0)
|
|
790
|
+
V2_5_0 = all(:V2_5_0)
|
|
791
|
+
V2_6_0 = all(:V2_6_0)
|
|
792
|
+
V2_6_2 = all(:V2_6_2)
|
|
793
|
+
V2_6_3 = all(:V2_6_3)
|
|
794
|
+
V3_1_0 = all(:V3_1_0)
|
|
795
|
+
V3_2_0 = all(:V3_2_0)
|
|
796
|
+
V3_5_0 = all(:V3_5_0)
|
|
797
|
+
V4_0_0 = all(:V4_0_0)
|
|
798
|
+
|
|
799
|
+
All = all(/^V\d+_\d+_\d+$/)
|
|
740
800
|
|
|
741
801
|
Type = :property
|
|
742
802
|
NonType = :nonproperty
|