activerecord-ejection_seat 0.3.0 → 0.3.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/.tool-versions +1 -1
  4. data/CHANGELOG.md +6 -0
  5. data/CODE_OF_CONDUCT.md +1 -1
  6. data/Gemfile +0 -2
  7. data/Gemfile.lock +44 -55
  8. data/README.md +19 -8
  9. data/lib/activerecord-ejection_seat/version.rb +1 -1
  10. data/sorbet/rbi/gems/{activerecord@7.0.4.1.rbi → activerecord@7.0.4.3.rbi} +128 -128
  11. data/sorbet/rbi/gems/{activesupport@7.0.4.1.rbi → activesupport@7.0.4.3.rbi} +79 -103
  12. data/sorbet/rbi/gems/{concurrent-ruby@1.1.10.rbi → concurrent-ruby@1.2.2.rbi} +1180 -1267
  13. data/sorbet/rbi/gems/diff-lcs@1.5.0.rbi +19 -0
  14. data/sorbet/rbi/gems/i18n@1.13.0.rbi +2320 -0
  15. data/sorbet/rbi/gems/{irb@1.6.2.rbi → irb@1.6.4.rbi} +44 -44
  16. data/sorbet/rbi/gems/json@2.6.3.rbi +65 -73
  17. data/sorbet/rbi/gems/{minitest@5.17.0.rbi → minitest@5.18.0.rbi} +79 -48
  18. data/sorbet/rbi/gems/{parallel@1.22.1.rbi → parallel@1.23.0.rbi} +75 -79
  19. data/sorbet/rbi/gems/{parser@3.2.0.0.rbi → parser@3.2.2.1.rbi} +760 -471
  20. data/sorbet/rbi/gems/rainbow@3.1.1.rbi +11 -6
  21. data/sorbet/rbi/gems/rake@13.0.6.rbi +141 -0
  22. data/sorbet/rbi/gems/rbi@0.0.16.rbi +17 -17
  23. data/sorbet/rbi/gems/{regexp_parser@2.6.1.rbi → regexp_parser@2.8.0.rbi} +962 -340
  24. data/sorbet/rbi/gems/rexml@3.2.5.rbi +57 -0
  25. data/sorbet/rbi/gems/{rubocop-ast@1.24.1.rbi → rubocop-ast@1.28.1.rbi} +165 -146
  26. data/sorbet/rbi/gems/{rubocop-minitest@0.26.1.rbi → rubocop-minitest@0.31.0.rbi} +456 -248
  27. data/sorbet/rbi/gems/rubocop-rake@0.6.0.rbi +24 -50
  28. data/sorbet/rbi/gems/{rubocop-sorbet@0.6.11.rbi → rubocop-sorbet@0.7.0.rbi} +153 -124
  29. data/sorbet/rbi/gems/{rubocop@1.43.0.rbi → rubocop@1.51.0.rbi} +3237 -2084
  30. data/sorbet/rbi/gems/{ruby-progressbar@1.11.0.rbi → ruby-progressbar@1.13.0.rbi} +382 -277
  31. data/sorbet/rbi/gems/sorbet-struct-comparable@1.3.0.rbi +18 -0
  32. data/sorbet/rbi/gems/{spoom@1.1.15.rbi → spoom@1.2.1.rbi} +621 -501
  33. data/sorbet/rbi/gems/{tapioca@0.10.5.rbi → tapioca@0.11.6.rbi} +293 -207
  34. data/sorbet/rbi/gems/{thor@1.2.1.rbi → thor@1.2.2.rbi} +76 -61
  35. data/sorbet/rbi/gems/tzinfo@2.0.6.rbi +5917 -0
  36. data/sorbet/rbi/gems/{yard-sorbet@0.8.0.rbi → yard-sorbet@0.8.1.rbi} +13 -26
  37. data/sorbet/rbi/gems/{yard@0.9.28.rbi → yard@0.9.34.rbi} +1531 -345
  38. metadata +34 -40
  39. data/activerecord-ejection_seat.gemspec +0 -40
  40. data/sorbet/rbi/gems/i18n@1.12.0.rbi +0 -8
  41. data/sorbet/rbi/gems/language_server-protocol@3.17.0.2.rbi +0 -8
  42. data/sorbet/rbi/gems/prettier_print@1.2.0.rbi +0 -8
  43. data/sorbet/rbi/gems/ruby-lsp@0.3.8.rbi +0 -14
  44. data/sorbet/rbi/gems/syntax_tree@5.2.0.rbi +0 -8
  45. data/sorbet/rbi/gems/tzinfo@2.0.5.rbi +0 -8
  46. data/sorbet/rbi/gems/webrick@1.7.0.rbi +0 -2498
  47. /data/sorbet/rbi/gems/{activemodel@7.0.4.1.rbi → activemodel@7.0.4.3.rbi} +0 -0
  48. /data/sorbet/rbi/gems/{reline@0.3.2.rbi → reline@0.3.3.rbi} +0 -0
  49. /data/sorbet/rbi/gems/{sqlite3@1.6.0.rbi → sqlite3@1.6.2.rbi} +0 -0
@@ -4,8 +4,10 @@
4
4
  # This is an autogenerated file for types exported from the `regexp_parser` gem.
5
5
  # Please instead update this file by running `bin/tapioca gem regexp_parser`.
6
6
 
7
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#1
7
8
  module Regexp::Expression; end
8
9
 
10
+ # source://regexp_parser//lib/regexp_parser/expression/classes/alternation.rb#5
9
11
  class Regexp::Expression::Alternation < ::Regexp::Expression::SequenceOperation
10
12
  # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#5
11
13
  def alternatives; end
@@ -13,19 +15,22 @@ class Regexp::Expression::Alternation < ::Regexp::Expression::SequenceOperation
13
15
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#9
14
16
  def human_name; end
15
17
 
16
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#127
18
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#131
17
19
  def match_length; end
18
20
  end
19
21
 
20
22
  # source://regexp_parser//lib/regexp_parser/expression/classes/alternation.rb#6
21
23
  Regexp::Expression::Alternation::OPERAND = Regexp::Expression::Alternative
22
24
 
23
- # A sequence of expressions, used by Alternation as one of its alternative.
25
+ # A sequence of expressions, used by Alternation as one of its alternatives.
26
+ #
27
+ # source://regexp_parser//lib/regexp_parser/expression/classes/alternation.rb#3
24
28
  class Regexp::Expression::Alternative < ::Regexp::Expression::Sequence
25
29
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#10
26
30
  def human_name; end
27
31
  end
28
32
 
33
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#2
29
34
  module Regexp::Expression::Anchor; end
30
35
 
31
36
  # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#18
@@ -34,16 +39,19 @@ Regexp::Expression::Anchor::BOL = Regexp::Expression::Anchor::BeginningOfLine
34
39
  # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#20
35
40
  Regexp::Expression::Anchor::BOS = Regexp::Expression::Anchor::BeginningOfString
36
41
 
42
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#3
37
43
  class Regexp::Expression::Anchor::Base < ::Regexp::Expression::Base
38
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#144
44
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#148
39
45
  def match_length; end
40
46
  end
41
47
 
48
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#5
42
49
  class Regexp::Expression::Anchor::BeginningOfLine < ::Regexp::Expression::Anchor::Base
43
50
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#11
44
51
  def human_name; end
45
52
  end
46
53
 
54
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#8
47
55
  class Regexp::Expression::Anchor::BeginningOfString < ::Regexp::Expression::Anchor::Base
48
56
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#12
49
57
  def human_name; end
@@ -58,92 +66,116 @@ Regexp::Expression::Anchor::EOS = Regexp::Expression::Anchor::EndOfString
58
66
  # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#22
59
67
  Regexp::Expression::Anchor::EOSobEOL = Regexp::Expression::Anchor::EndOfStringOrBeforeEndOfLine
60
68
 
69
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#6
61
70
  class Regexp::Expression::Anchor::EndOfLine < ::Regexp::Expression::Anchor::Base
62
71
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#13
63
72
  def human_name; end
64
73
  end
65
74
 
75
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#9
66
76
  class Regexp::Expression::Anchor::EndOfString < ::Regexp::Expression::Anchor::Base
67
77
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#14
68
78
  def human_name; end
69
79
  end
70
80
 
81
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#11
71
82
  class Regexp::Expression::Anchor::EndOfStringOrBeforeEndOfLine < ::Regexp::Expression::Anchor::Base
72
83
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#15
73
84
  def human_name; end
74
85
  end
75
86
 
87
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#16
76
88
  class Regexp::Expression::Anchor::MatchStart < ::Regexp::Expression::Anchor::Base
77
89
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#16
78
90
  def human_name; end
79
91
  end
80
92
 
93
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#14
81
94
  class Regexp::Expression::Anchor::NonWordBoundary < ::Regexp::Expression::Anchor::Base
82
95
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#17
83
96
  def human_name; end
84
97
  end
85
98
 
99
+ # source://regexp_parser//lib/regexp_parser/expression/classes/anchor.rb#13
86
100
  class Regexp::Expression::Anchor::WordBoundary < ::Regexp::Expression::Anchor::Base
87
101
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#18
88
102
  def human_name; end
89
103
  end
90
104
 
105
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#64
91
106
  module Regexp::Expression::Assertion; end
92
107
 
108
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#65
93
109
  class Regexp::Expression::Assertion::Base < ::Regexp::Expression::Group::Base
94
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#144
110
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#148
95
111
  def match_length; end
96
112
  end
97
113
 
114
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#67
98
115
  class Regexp::Expression::Assertion::Lookahead < ::Regexp::Expression::Assertion::Base
99
116
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#19
100
117
  def human_name; end
101
118
  end
102
119
 
120
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#70
103
121
  class Regexp::Expression::Assertion::Lookbehind < ::Regexp::Expression::Assertion::Base
104
122
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#20
105
123
  def human_name; end
106
124
  end
107
125
 
126
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#68
108
127
  class Regexp::Expression::Assertion::NegativeLookahead < ::Regexp::Expression::Assertion::Base
109
128
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#21
110
129
  def human_name; end
111
130
  end
112
131
 
132
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#71
113
133
  class Regexp::Expression::Assertion::NegativeLookbehind < ::Regexp::Expression::Assertion::Base
114
134
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#22
115
135
  def human_name; end
116
136
  end
117
137
 
118
- # TODO: unify name with token :backref, one way or the other, in v3.0.0
138
+ # alias for symmetry between token symbol and Expression class name
139
+ #
140
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#74
141
+ Regexp::Expression::Backref = Regexp::Expression::Backreference
142
+
143
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#2
119
144
  module Regexp::Expression::Backreference; end
120
145
 
146
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#3
121
147
  class Regexp::Expression::Backreference::Base < ::Regexp::Expression::Base
122
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#151
148
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#155
123
149
  def match_length; end
124
150
 
125
151
  # Returns the value of attribute referenced_expression.
126
152
  #
127
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#5
153
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#4
128
154
  def referenced_expression; end
129
155
 
130
156
  # Sets the attribute referenced_expression
131
157
  #
132
158
  # @param value the value to set the attribute referenced_expression to.
133
159
  #
134
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#5
160
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#4
135
161
  def referenced_expression=(_arg0); end
136
162
 
137
163
  private
138
164
 
139
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#7
165
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#6
140
166
  def initialize_copy(orig); end
167
+
168
+ class << self
169
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#140
170
+ def referential?; end
171
+ end
141
172
  end
142
173
 
174
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#34
143
175
  class Regexp::Expression::Backreference::Name < ::Regexp::Expression::Backreference::Base
144
176
  # @return [Name] a new instance of Name
145
177
  #
146
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#27
178
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#38
147
179
  def initialize(token, options = T.unsafe(nil)); end
148
180
 
149
181
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#23
@@ -151,36 +183,39 @@ class Regexp::Expression::Backreference::Name < ::Regexp::Expression::Backrefere
151
183
 
152
184
  # Returns the value of attribute name.
153
185
  #
154
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#24
186
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#35
155
187
  def name; end
156
188
 
157
189
  # Returns the value of attribute name.
158
190
  #
159
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#24
191
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#35
160
192
  def reference; end
161
193
  end
162
194
 
195
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#50
163
196
  class Regexp::Expression::Backreference::NameCall < ::Regexp::Expression::Backreference::Name
164
197
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#24
165
198
  def human_name; end
166
199
  end
167
200
 
201
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#62
168
202
  class Regexp::Expression::Backreference::NameRecursionLevel < ::Regexp::Expression::Backreference::Name
169
203
  # @return [NameRecursionLevel] a new instance of NameRecursionLevel
170
204
  #
171
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#54
205
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#65
172
206
  def initialize(token, options = T.unsafe(nil)); end
173
207
 
174
208
  # Returns the value of attribute recursion_level.
175
209
  #
176
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#52
210
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#63
177
211
  def recursion_level; end
178
212
  end
179
213
 
214
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#24
180
215
  class Regexp::Expression::Backreference::Number < ::Regexp::Expression::Backreference::Base
181
216
  # @return [Number] a new instance of Number
182
217
  #
183
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#17
218
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#28
184
219
  def initialize(token, options = T.unsafe(nil)); end
185
220
 
186
221
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#25
@@ -188,48 +223,52 @@ class Regexp::Expression::Backreference::Number < ::Regexp::Expression::Backrefe
188
223
 
189
224
  # Returns the value of attribute number.
190
225
  #
191
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#14
226
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#25
192
227
  def number; end
193
228
 
194
229
  # Returns the value of attribute number.
195
230
  #
196
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#14
231
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#25
197
232
  def reference; end
198
233
  end
199
234
 
235
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#49
200
236
  class Regexp::Expression::Backreference::NumberCall < ::Regexp::Expression::Backreference::Number
201
237
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#27
202
238
  def human_name; end
203
239
  end
204
240
 
241
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#51
205
242
  class Regexp::Expression::Backreference::NumberCallRelative < ::Regexp::Expression::Backreference::NumberRelative
206
243
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#28
207
244
  def human_name; end
208
245
  end
209
246
 
247
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#53
210
248
  class Regexp::Expression::Backreference::NumberRecursionLevel < ::Regexp::Expression::Backreference::NumberRelative
211
249
  # @return [NumberRecursionLevel] a new instance of NumberRecursionLevel
212
250
  #
213
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#45
251
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#56
214
252
  def initialize(token, options = T.unsafe(nil)); end
215
253
 
216
254
  # Returns the value of attribute recursion_level.
217
255
  #
218
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#43
256
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#54
219
257
  def recursion_level; end
220
258
  end
221
259
 
260
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#44
222
261
  class Regexp::Expression::Backreference::NumberRelative < ::Regexp::Expression::Backreference::Number
223
262
  # Returns the value of attribute effective_number.
224
263
  #
225
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#34
264
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#45
226
265
  def effective_number; end
227
266
 
228
267
  # Sets the attribute effective_number
229
268
  #
230
269
  # @param value the value to set the attribute effective_number to.
231
270
  #
232
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#34
271
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#45
233
272
  def effective_number=(_arg0); end
234
273
 
235
274
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#26
@@ -237,13 +276,13 @@ class Regexp::Expression::Backreference::NumberRelative < ::Regexp::Expression::
237
276
 
238
277
  # Returns the value of attribute effective_number.
239
278
  #
240
- # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#34
279
+ # source://regexp_parser//lib/regexp_parser/expression/classes/backreference.rb#45
241
280
  def reference; end
242
281
  end
243
282
 
283
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#2
244
284
  class Regexp::Expression::Base
245
285
  include ::Regexp::Expression::Shared
246
- include ::RuboCop::Ext::RegexpParser::Expression::Base
247
286
  extend ::Regexp::Expression::Shared::ClassMethods
248
287
 
249
288
  # @return [Base] a new instance of Base
@@ -264,7 +303,7 @@ class Regexp::Expression::Base
264
303
  # source://regexp_parser//lib/regexp_parser/expression/methods/options.rb#25
265
304
  def ascii_classes?; end
266
305
 
267
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#67
306
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#60
268
307
  def attributes; end
269
308
 
270
309
  # @return [Boolean]
@@ -278,6 +317,12 @@ class Regexp::Expression::Base
278
317
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
279
318
  def conditional_level=(_arg0); end
280
319
 
320
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
321
+ def custom_to_s_handling; end
322
+
323
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
324
+ def custom_to_s_handling=(_arg0); end
325
+
281
326
  # @return [Boolean]
282
327
  #
283
328
  # source://regexp_parser//lib/regexp_parser/expression/methods/options.rb#20
@@ -300,7 +345,7 @@ class Regexp::Expression::Base
300
345
 
301
346
  # @return [Boolean]
302
347
  #
303
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#54
348
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#47
304
349
  def greedy?; end
305
350
 
306
351
  # @return [Boolean]
@@ -315,7 +360,7 @@ class Regexp::Expression::Base
315
360
 
316
361
  # @return [Boolean]
317
362
  #
318
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#58
363
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#51
319
364
  def lazy?; end
320
365
 
321
366
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -347,7 +392,7 @@ class Regexp::Expression::Base
347
392
  # source://regexp_parser//lib/regexp_parser/expression/methods/options.rb#3
348
393
  def multiline?; end
349
394
 
350
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#13
395
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#14
351
396
  def nesting_level; end
352
397
 
353
398
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -356,28 +401,40 @@ class Regexp::Expression::Base
356
401
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
357
402
  def options=(_arg0); end
358
403
 
404
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
405
+ def parent; end
406
+
407
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
408
+ def parent=(_arg0); end
409
+
359
410
  # @return [Boolean]
360
411
  #
361
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#63
412
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#56
362
413
  def possessive?; end
363
414
 
364
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#13
415
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
416
+ def pre_quantifier_decorations; end
417
+
418
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
419
+ def pre_quantifier_decorations=(_arg0); end
420
+
421
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#14
365
422
  def quantifier; end
366
423
 
367
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#24
424
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#17
368
425
  def quantify(*args); end
369
426
 
370
427
  # Deprecated. Prefer `#repetitions` which has a more uniform interface.
371
428
  #
372
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#33
429
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#26
373
430
  def quantity; end
374
431
 
375
432
  # @return [Boolean]
376
433
  #
377
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#58
434
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#51
378
435
  def reluctant?; end
379
436
 
380
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#38
437
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#31
381
438
  def repetitions; end
382
439
 
383
440
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -470,10 +527,10 @@ class Regexp::Expression::Base
470
527
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
471
528
  def text=(_arg0); end
472
529
 
473
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#67
530
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#60
474
531
  def to_h; end
475
532
 
476
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#16
533
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#9
477
534
  def to_re(format = T.unsafe(nil)); end
478
535
 
479
536
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -504,23 +561,17 @@ class Regexp::Expression::Base
504
561
  # source://regexp_parser//lib/regexp_parser/expression/methods/options.rb#30
505
562
  def unicode_classes?; end
506
563
 
507
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#28
564
+ # source://regexp_parser//lib/regexp_parser/expression/base.rb#21
508
565
  def unquantified_clone; end
509
566
 
510
567
  # @return [Boolean]
511
568
  #
512
569
  # source://regexp_parser//lib/regexp_parser/expression/methods/options.rb#14
513
570
  def x?; end
514
-
515
- private
516
-
517
- # source://regexp_parser//lib/regexp_parser/expression/base.rb#9
518
- def initialize_copy(orig); end
519
571
  end
520
572
 
573
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#2
521
574
  class Regexp::Expression::CharacterSet < ::Regexp::Expression::Subexpression
522
- include ::RuboCop::Ext::RegexpParser::Expression::CharacterSet
523
-
524
575
  # @return [CharacterSet] a new instance of CharacterSet
525
576
  #
526
577
  # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#9
@@ -546,7 +597,7 @@ class Regexp::Expression::CharacterSet < ::Regexp::Expression::Subexpression
546
597
  # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#3
547
598
  def closed?; end
548
599
 
549
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
600
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
550
601
  def match_length; end
551
602
 
552
603
  # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#15
@@ -574,94 +625,125 @@ class Regexp::Expression::CharacterSet < ::Regexp::Expression::Subexpression
574
625
  # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#3
575
626
  def negative?; end
576
627
 
577
- # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#23
628
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#15
578
629
  def parts; end
579
630
  end
580
631
 
632
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/intersection.rb#3
581
633
  class Regexp::Expression::CharacterSet::IntersectedSequence < ::Regexp::Expression::Sequence
582
634
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#29
583
635
  def human_name; end
584
636
 
585
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
637
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
586
638
  def match_length; end
587
639
  end
588
640
 
641
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/intersection.rb#5
589
642
  class Regexp::Expression::CharacterSet::Intersection < ::Regexp::Expression::SequenceOperation
590
643
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#30
591
644
  def human_name; end
592
645
 
593
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
646
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
594
647
  def match_length; end
595
648
  end
596
649
 
597
650
  # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/intersection.rb#6
598
651
  Regexp::Expression::CharacterSet::Intersection::OPERAND = Regexp::Expression::CharacterSet::IntersectedSequence
599
652
 
653
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#3
600
654
  class Regexp::Expression::CharacterSet::Range < ::Regexp::Expression::Subexpression
601
- # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#9
655
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#8
602
656
  def <<(exp); end
603
657
 
604
658
  # @return [Boolean]
605
659
  #
606
- # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#15
660
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#14
607
661
  def complete?; end
608
662
 
609
663
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#31
610
664
  def human_name; end
611
665
 
612
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
666
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
613
667
  def match_length; end
614
668
 
615
- # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#19
669
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#16
616
670
  def parts; end
617
671
 
618
- # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#4
619
- def starts_at; end
620
-
621
672
  # source://regexp_parser//lib/regexp_parser/expression/classes/character_set/range.rb#4
622
673
  def ts; end
623
674
  end
624
675
 
676
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#2
625
677
  module Regexp::Expression::CharacterType; end
626
678
 
679
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#5
627
680
  class Regexp::Expression::CharacterType::Any < ::Regexp::Expression::CharacterType::Base
628
681
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#32
629
682
  def human_name; end
630
683
  end
631
684
 
685
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#3
632
686
  class Regexp::Expression::CharacterType::Base < ::Regexp::Expression::Base
633
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
687
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
634
688
  def match_length; end
635
689
  end
636
690
 
691
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#6
637
692
  class Regexp::Expression::CharacterType::Digit < ::Regexp::Expression::CharacterType::Base; end
693
+
694
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#15
638
695
  class Regexp::Expression::CharacterType::ExtendedGrapheme < ::Regexp::Expression::CharacterType::Base; end
696
+
697
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#8
639
698
  class Regexp::Expression::CharacterType::Hex < ::Regexp::Expression::CharacterType::Base; end
699
+
700
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#14
640
701
  class Regexp::Expression::CharacterType::Linebreak < ::Regexp::Expression::CharacterType::Base; end
702
+
703
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#7
641
704
  class Regexp::Expression::CharacterType::NonDigit < ::Regexp::Expression::CharacterType::Base; end
705
+
706
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#9
642
707
  class Regexp::Expression::CharacterType::NonHex < ::Regexp::Expression::CharacterType::Base; end
708
+
709
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#13
643
710
  class Regexp::Expression::CharacterType::NonSpace < ::Regexp::Expression::CharacterType::Base; end
711
+
712
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#11
644
713
  class Regexp::Expression::CharacterType::NonWord < ::Regexp::Expression::CharacterType::Base; end
714
+
715
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#12
645
716
  class Regexp::Expression::CharacterType::Space < ::Regexp::Expression::CharacterType::Base; end
717
+
718
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_type.rb#10
646
719
  class Regexp::Expression::CharacterType::Word < ::Regexp::Expression::CharacterType::Base; end
647
720
 
721
+ # source://regexp_parser//lib/regexp_parser/expression/classes/free_space.rb#8
648
722
  class Regexp::Expression::Comment < ::Regexp::Expression::FreeSpace
649
723
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#33
650
724
  def human_name; end
725
+
726
+ class << self
727
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#130
728
+ def comment?; end
729
+ end
651
730
  end
652
731
 
732
+ # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#2
653
733
  module Regexp::Expression::Conditional; end
654
734
 
735
+ # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#25
655
736
  class Regexp::Expression::Conditional::Branch < ::Regexp::Expression::Sequence
656
737
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#34
657
738
  def human_name; end
658
739
  end
659
740
 
741
+ # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#9
660
742
  class Regexp::Expression::Conditional::Condition < ::Regexp::Expression::Base
661
743
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#35
662
744
  def human_name; end
663
745
 
664
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#144
746
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#148
665
747
  def match_length; end
666
748
 
667
749
  # Name or number of the referenced capturing group that determines state.
@@ -686,8 +768,14 @@ class Regexp::Expression::Conditional::Condition < ::Regexp::Expression::Base
686
768
 
687
769
  # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#19
688
770
  def initialize_copy(orig); end
771
+
772
+ class << self
773
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#141
774
+ def referential?; end
775
+ end
689
776
  end
690
777
 
778
+ # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#27
691
779
  class Regexp::Expression::Conditional::Expression < ::Regexp::Expression::Subexpression
692
780
  # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#30
693
781
  def <<(exp); end
@@ -695,12 +783,12 @@ class Regexp::Expression::Conditional::Expression < ::Regexp::Expression::Subexp
695
783
  # @raise [TooManyBranches]
696
784
  #
697
785
  # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#34
698
- def add_sequence(active_opts = T.unsafe(nil)); end
786
+ def add_sequence(active_opts = T.unsafe(nil), params = T.unsafe(nil)); end
699
787
 
700
788
  # @raise [TooManyBranches]
701
789
  #
702
790
  # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#34
703
- def branch(active_opts = T.unsafe(nil)); end
791
+ def branch(active_opts = T.unsafe(nil), params = T.unsafe(nil)); end
704
792
 
705
793
  # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#50
706
794
  def branches; end
@@ -714,10 +802,10 @@ class Regexp::Expression::Conditional::Expression < ::Regexp::Expression::Subexp
714
802
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#36
715
803
  def human_name; end
716
804
 
717
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#127
805
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#131
718
806
  def match_length; end
719
807
 
720
- # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#58
808
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#17
721
809
  def parts; end
722
810
 
723
811
  # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#54
@@ -737,10 +825,16 @@ class Regexp::Expression::Conditional::Expression < ::Regexp::Expression::Subexp
737
825
 
738
826
  private
739
827
 
740
- # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#62
828
+ # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#58
741
829
  def initialize_copy(orig); end
830
+
831
+ class << self
832
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#142
833
+ def referential?; end
834
+ end
742
835
  end
743
836
 
837
+ # source://regexp_parser//lib/regexp_parser/expression/classes/conditional.rb#3
744
838
  class Regexp::Expression::Conditional::TooManyBranches < ::Regexp::Parser::Error
745
839
  # @return [TooManyBranches] a new instance of TooManyBranches
746
840
  #
@@ -748,183 +842,218 @@ class Regexp::Expression::Conditional::TooManyBranches < ::Regexp::Parser::Error
748
842
  def initialize; end
749
843
  end
750
844
 
751
- # TODO: unify naming with Token::Escape, one way or the other, in v3.0.0
845
+ # alias for symmetry between Token::* and Expression::*
846
+ #
847
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#101
848
+ Regexp::Expression::Escape = Regexp::Expression::EscapeSequence
849
+
850
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#2
752
851
  module Regexp::Expression::EscapeSequence; end
753
852
 
853
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#63
754
854
  class Regexp::Expression::EscapeSequence::AbstractMetaControlSequence < ::Regexp::Expression::EscapeSequence::Base
755
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#65
855
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#64
756
856
  def char; end
757
857
 
758
858
  private
759
859
 
760
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#71
860
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#70
761
861
  def control_sequence_to_s(control_sequence); end
762
862
 
763
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#76
863
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#75
764
864
  def meta_char_to_codepoint(meta_char); end
765
865
  end
766
866
 
867
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#27
767
868
  class Regexp::Expression::EscapeSequence::AsciiEscape < ::Regexp::Expression::EscapeSequence::Base; end
869
+
870
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#28
768
871
  class Regexp::Expression::EscapeSequence::Backspace < ::Regexp::Expression::EscapeSequence::Base; end
769
872
 
873
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#3
770
874
  class Regexp::Expression::EscapeSequence::Base < ::Regexp::Expression::Base
771
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#10
875
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#9
772
876
  def char; end
773
877
 
774
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#5
878
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#4
775
879
  def codepoint; end
776
880
 
777
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
881
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
778
882
  def match_length; end
779
883
  end
780
884
 
885
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#29
781
886
  class Regexp::Expression::EscapeSequence::Bell < ::Regexp::Expression::EscapeSequence::Base; end
887
+
888
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#37
782
889
  class Regexp::Expression::EscapeSequence::Codepoint < ::Regexp::Expression::EscapeSequence::Base; end
783
890
 
891
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#39
784
892
  class Regexp::Expression::EscapeSequence::CodepointList < ::Regexp::Expression::EscapeSequence::Base
785
893
  # @raise [NoMethodError]
786
894
  #
787
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#41
895
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#40
788
896
  def char; end
789
897
 
790
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#49
898
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#48
791
899
  def chars; end
792
900
 
793
901
  # @raise [NoMethodError]
794
902
  #
795
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#45
903
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#44
796
904
  def codepoint; end
797
905
 
798
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#53
906
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#52
799
907
  def codepoints; end
800
908
 
801
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#160
909
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#164
802
910
  def match_length; end
803
911
  end
804
912
 
913
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#81
805
914
  class Regexp::Expression::EscapeSequence::Control < ::Regexp::Expression::EscapeSequence::AbstractMetaControlSequence
806
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#83
915
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#82
807
916
  def codepoint; end
808
917
  end
809
918
 
919
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#30
810
920
  class Regexp::Expression::EscapeSequence::FormFeed < ::Regexp::Expression::EscapeSequence::Base; end
921
+
922
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#36
811
923
  class Regexp::Expression::EscapeSequence::Hex < ::Regexp::Expression::EscapeSequence::Base; end
812
924
 
925
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#21
813
926
  class Regexp::Expression::EscapeSequence::Literal < ::Regexp::Expression::EscapeSequence::Base
814
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#23
927
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#22
815
928
  def char; end
816
929
  end
817
930
 
931
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#87
818
932
  class Regexp::Expression::EscapeSequence::Meta < ::Regexp::Expression::EscapeSequence::AbstractMetaControlSequence
819
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#89
933
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#88
820
934
  def codepoint; end
821
935
  end
822
936
 
937
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#93
823
938
  class Regexp::Expression::EscapeSequence::MetaControl < ::Regexp::Expression::EscapeSequence::AbstractMetaControlSequence
824
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#95
939
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#94
825
940
  def codepoint; end
826
941
  end
827
942
 
943
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#31
828
944
  class Regexp::Expression::EscapeSequence::Newline < ::Regexp::Expression::EscapeSequence::Base; end
829
945
 
946
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#57
830
947
  class Regexp::Expression::EscapeSequence::Octal < ::Regexp::Expression::EscapeSequence::Base
831
- # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#59
948
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#58
832
949
  def char; end
833
950
  end
834
951
 
952
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#32
835
953
  class Regexp::Expression::EscapeSequence::Return < ::Regexp::Expression::EscapeSequence::Base; end
954
+
955
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#33
836
956
  class Regexp::Expression::EscapeSequence::Tab < ::Regexp::Expression::EscapeSequence::Base; end
957
+
958
+ # source://regexp_parser//lib/regexp_parser/expression/classes/escape_sequence.rb#34
837
959
  class Regexp::Expression::EscapeSequence::VerticalTab < ::Regexp::Expression::EscapeSequence::Base; end
838
960
 
961
+ # source://regexp_parser//lib/regexp_parser/expression/classes/free_space.rb#2
839
962
  class Regexp::Expression::FreeSpace < ::Regexp::Expression::Base
840
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#144
963
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#148
841
964
  def match_length; end
842
965
 
843
966
  # @raise [Regexp::Parser::Error]
844
967
  #
845
968
  # source://regexp_parser//lib/regexp_parser/expression/classes/free_space.rb#3
846
969
  def quantify(*_args); end
970
+
971
+ class << self
972
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#135
973
+ def decorative?; end
974
+ end
847
975
  end
848
976
 
977
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#2
849
978
  module Regexp::Expression::Group; end
850
979
 
851
980
  # Special case. Absence group can match 0.. chars, irrespective of content.
852
981
  # TODO: in theory, they *can* exclude match lengths with `.`: `(?~.{3})`
982
+ #
983
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#19
853
984
  class Regexp::Expression::Group::Absence < ::Regexp::Expression::Group::Base
854
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#168
985
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#172
855
986
  def match_length; end
856
987
  end
857
988
 
989
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#20
858
990
  class Regexp::Expression::Group::Atomic < ::Regexp::Expression::Group::Base; end
859
991
 
992
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#3
860
993
  class Regexp::Expression::Group::Base < ::Regexp::Expression::Subexpression
861
- # @return [Boolean]
862
- #
863
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#8
864
- def capturing?; end
865
-
866
- # @return [Boolean]
867
- #
868
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#10
869
- def comment?; end
870
-
871
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#4
994
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#18
872
995
  def parts; end
873
996
  end
874
997
 
998
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#40
875
999
  class Regexp::Expression::Group::Capture < ::Regexp::Expression::Group::Base
876
- # @return [Boolean]
877
- #
878
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#59
879
- def capturing?; end
880
-
881
1000
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#37
882
1001
  def human_name; end
883
1002
 
884
1003
  # Returns the value of attribute number.
885
1004
  #
886
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#56
1005
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#41
887
1006
  def identifier; end
888
1007
 
889
1008
  # Returns the value of attribute number.
890
1009
  #
891
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#56
1010
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#41
892
1011
  def number; end
893
1012
 
894
1013
  # Sets the attribute number
895
1014
  #
896
1015
  # @param value the value to set the attribute number to.
897
1016
  #
898
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#56
1017
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#41
899
1018
  def number=(_arg0); end
900
1019
 
901
1020
  # Returns the value of attribute number_at_level.
902
1021
  #
903
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#56
1022
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#41
904
1023
  def number_at_level; end
905
1024
 
906
1025
  # Sets the attribute number_at_level
907
1026
  #
908
1027
  # @param value the value to set the attribute number_at_level to.
909
1028
  #
910
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#56
1029
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#41
911
1030
  def number_at_level=(_arg0); end
1031
+
1032
+ class << self
1033
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#126
1034
+ def capturing?; end
1035
+ end
912
1036
  end
913
1037
 
1038
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#60
914
1039
  class Regexp::Expression::Group::Comment < ::Regexp::Expression::Group::Base
915
- # @return [Boolean]
916
- #
917
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#82
918
- def comment?; end
919
-
920
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#78
1040
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#20
921
1041
  def parts; end
1042
+
1043
+ class << self
1044
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#131
1045
+ def comment?; end
1046
+
1047
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#136
1048
+ def decorative?; end
1049
+ end
922
1050
  end
923
1051
 
1052
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#45
924
1053
  class Regexp::Expression::Group::Named < ::Regexp::Expression::Group::Capture
925
1054
  # @return [Named] a new instance of Named
926
1055
  #
927
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#66
1056
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#49
928
1057
  def initialize(token, options = T.unsafe(nil)); end
929
1058
 
930
1059
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#38
@@ -932,91 +1061,105 @@ class Regexp::Expression::Group::Named < ::Regexp::Expression::Group::Capture
932
1061
 
933
1062
  # Returns the value of attribute name.
934
1063
  #
935
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#63
1064
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#46
936
1065
  def identifier; end
937
1066
 
938
1067
  # Returns the value of attribute name.
939
1068
  #
940
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#63
1069
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#46
941
1070
  def name; end
942
1071
 
943
1072
  private
944
1073
 
945
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#71
1074
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#54
946
1075
  def initialize_copy(orig); end
947
1076
  end
948
1077
 
949
1078
  # TODO: should split off OptionsSwitch in v3.0.0. Maybe even make it no
950
1079
  # longer inherit from Group because it is effectively a terminal expression.
1080
+ #
1081
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#23
951
1082
  class Regexp::Expression::Group::Options < ::Regexp::Expression::Group::Base
952
1083
  # Returns the value of attribute option_changes.
953
1084
  #
954
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#39
1085
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#24
955
1086
  def option_changes; end
956
1087
 
957
1088
  # Sets the attribute option_changes
958
1089
  #
959
1090
  # @param value the value to set the attribute option_changes to.
960
1091
  #
961
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#39
1092
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#24
962
1093
  def option_changes=(_arg0); end
963
1094
 
964
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#46
1095
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#31
965
1096
  def quantify(*args); end
966
1097
 
967
1098
  private
968
1099
 
969
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#41
1100
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#26
970
1101
  def initialize_copy(orig); end
971
1102
  end
972
1103
 
1104
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#6
973
1105
  class Regexp::Expression::Group::Passive < ::Regexp::Expression::Group::Base
974
1106
  # @return [Passive] a new instance of Passive
975
1107
  #
976
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#16
1108
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#9
977
1109
  def initialize(*_arg0); end
978
1110
 
979
1111
  # Sets the attribute implicit
980
1112
  #
981
1113
  # @param value the value to set the attribute implicit to.
982
1114
  #
983
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#14
1115
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#7
984
1116
  def implicit=(_arg0); end
985
1117
 
986
1118
  # @return [Boolean]
987
1119
  #
988
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#29
1120
+ # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#14
989
1121
  def implicit?; end
990
1122
 
991
- # source://regexp_parser//lib/regexp_parser/expression/classes/group.rb#21
1123
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#19
992
1124
  def parts; end
993
1125
  end
994
1126
 
1127
+ # source://regexp_parser//lib/regexp_parser/expression/classes/keep.rb#2
995
1128
  module Regexp::Expression::Keep; end
996
1129
 
997
1130
  # TOOD: in regexp_parser v3.0.0 this should possibly be a Subexpression
998
1131
  # that contains all expressions to its left.
1132
+ #
1133
+ # source://regexp_parser//lib/regexp_parser/expression/classes/keep.rb#5
999
1134
  class Regexp::Expression::Keep::Mark < ::Regexp::Expression::Base
1000
1135
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#39
1001
1136
  def human_name; end
1002
1137
 
1003
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#144
1138
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#148
1004
1139
  def match_length; end
1005
1140
  end
1006
1141
 
1142
+ # source://regexp_parser//lib/regexp_parser/expression/classes/literal.rb#2
1007
1143
  class Regexp::Expression::Literal < ::Regexp::Expression::Base
1008
1144
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#40
1009
1145
  def human_name; end
1010
1146
 
1011
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#101
1147
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#105
1012
1148
  def match_length; end
1013
1149
  end
1014
1150
 
1015
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#81
1151
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#85
1016
1152
  Regexp::Expression::MatchLength = Regexp::MatchLength
1017
1153
 
1154
+ # source://regexp_parser//lib/regexp_parser/expression/classes/posix_class.rb#14
1155
+ Regexp::Expression::Nonposixclass = Regexp::Expression::PosixClass
1156
+
1157
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#121
1158
+ Regexp::Expression::Nonproperty = Regexp::Expression::UnicodeProperty
1159
+
1160
+ # source://regexp_parser//lib/regexp_parser/expression/classes/posix_class.rb#2
1018
1161
  class Regexp::Expression::PosixClass < ::Regexp::Expression::Base
1019
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
1162
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
1020
1163
  def match_length; end
1021
1164
 
1022
1165
  # source://regexp_parser//lib/regexp_parser/expression/classes/posix_class.rb#7
@@ -1028,17 +1171,29 @@ class Regexp::Expression::PosixClass < ::Regexp::Expression::Base
1028
1171
  def negative?; end
1029
1172
  end
1030
1173
 
1174
+ # alias for symmetry between token symbol and Expression class name
1175
+ #
1176
+ # source://regexp_parser//lib/regexp_parser/expression/classes/posix_class.rb#13
1177
+ Regexp::Expression::Posixclass = Regexp::Expression::PosixClass
1178
+
1179
+ # alias for symmetry between token symbol and Expression class name
1180
+ #
1181
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#120
1182
+ Regexp::Expression::Property = Regexp::Expression::UnicodeProperty
1183
+
1031
1184
  # TODO: in v3.0.0, maybe put Shared back into Base, and inherit from Base and
1032
1185
  # call super in #initialize, but raise in #quantifier= and #quantify,
1033
1186
  # or introduce an Expression::Quantifiable intermediate class.
1034
1187
  # Or actually allow chaining as a more concise but tricky solution than PR#69.
1188
+ #
1189
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#6
1035
1190
  class Regexp::Expression::Quantifier
1036
1191
  include ::Regexp::Expression::Shared
1037
1192
  extend ::Regexp::Expression::Shared::ClassMethods
1038
1193
 
1039
1194
  # @return [Quantifier] a new instance of Quantifier
1040
1195
  #
1041
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#13
1196
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#11
1042
1197
  def initialize(*args); end
1043
1198
 
1044
1199
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -1047,10 +1202,16 @@ class Regexp::Expression::Quantifier
1047
1202
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1048
1203
  def conditional_level=(_arg0); end
1049
1204
 
1050
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#35
1205
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1206
+ def custom_to_s_handling; end
1207
+
1208
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1209
+ def custom_to_s_handling=(_arg0); end
1210
+
1211
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#31
1051
1212
  def greedy?; end
1052
1213
 
1053
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#35
1214
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#31
1054
1215
  def lazy?; end
1055
1216
 
1056
1217
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -1059,22 +1220,16 @@ class Regexp::Expression::Quantifier
1059
1220
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1060
1221
  def level=(_arg0); end
1061
1222
 
1062
- # Returns the value of attribute max.
1063
- #
1064
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#11
1223
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#42
1065
1224
  def max; end
1066
1225
 
1067
- # Returns the value of attribute min.
1068
- #
1069
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#11
1226
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#38
1070
1227
  def min; end
1071
1228
 
1072
- # Returns the value of attribute mode.
1073
- #
1074
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#11
1229
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#46
1075
1230
  def mode; end
1076
1231
 
1077
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#13
1232
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#14
1078
1233
  def nesting_level; end
1079
1234
 
1080
1235
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -1083,13 +1238,25 @@ class Regexp::Expression::Quantifier
1083
1238
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1084
1239
  def options=(_arg0); end
1085
1240
 
1086
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#35
1241
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1242
+ def parent; end
1243
+
1244
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1245
+ def parent=(_arg0); end
1246
+
1247
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#31
1087
1248
  def possessive?; end
1088
1249
 
1089
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#13
1250
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1251
+ def pre_quantifier_decorations; end
1252
+
1253
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1254
+ def pre_quantifier_decorations=(_arg0); end
1255
+
1256
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#14
1090
1257
  def quantifier; end
1091
1258
 
1092
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#35
1259
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#31
1093
1260
  def reluctant?; end
1094
1261
 
1095
1262
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -1110,7 +1277,7 @@ class Regexp::Expression::Quantifier
1110
1277
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1111
1278
  def text=(_arg0); end
1112
1279
 
1113
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#23
1280
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#19
1114
1281
  def to_h; end
1115
1282
 
1116
1283
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
@@ -1133,16 +1300,17 @@ class Regexp::Expression::Quantifier
1133
1300
 
1134
1301
  private
1135
1302
 
1136
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#44
1137
- def deprecated_old_init(token, text, min, max, mode = T.unsafe(nil)); end
1303
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#52
1304
+ def deprecated_old_init(token, text, _min, _max, _mode = T.unsafe(nil)); end
1138
1305
 
1139
- # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#59
1140
- def minmax; end
1306
+ # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#64
1307
+ def derived_data; end
1141
1308
  end
1142
1309
 
1143
1310
  # source://regexp_parser//lib/regexp_parser/expression/quantifier.rb#9
1144
1311
  Regexp::Expression::Quantifier::MODES = T.let(T.unsafe(nil), Array)
1145
1312
 
1313
+ # source://regexp_parser//lib/regexp_parser/expression/classes/root.rb#2
1146
1314
  class Regexp::Expression::Root < ::Regexp::Expression::Subexpression
1147
1315
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#41
1148
1316
  def human_name; end
@@ -1159,12 +1327,11 @@ end
1159
1327
  #
1160
1328
  # Used as the base class for the Alternation alternatives, Conditional
1161
1329
  # branches, and CharacterSet::Intersection intersected sequences.
1330
+ #
1331
+ # source://regexp_parser//lib/regexp_parser/expression/sequence.rb#8
1162
1332
  class Regexp::Expression::Sequence < ::Regexp::Expression::Subexpression
1163
- # source://regexp_parser//lib/regexp_parser/expression/sequence.rb#28
1164
- def quantify(*args); end
1165
-
1166
- # source://regexp_parser//lib/regexp_parser/expression/sequence.rb#23
1167
- def starts_at; end
1333
+ # source://regexp_parser//lib/regexp_parser/expression/sequence.rb#27
1334
+ def quantify(token, *args); end
1168
1335
 
1169
1336
  # source://regexp_parser//lib/regexp_parser/expression/sequence.rb#23
1170
1337
  def ts; end
@@ -1176,12 +1343,14 @@ class Regexp::Expression::Sequence < ::Regexp::Expression::Subexpression
1176
1343
  end
1177
1344
 
1178
1345
  # abstract class
1346
+ #
1347
+ # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#3
1179
1348
  class Regexp::Expression::SequenceOperation < ::Regexp::Expression::Subexpression
1180
- # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#13
1349
+ # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#12
1181
1350
  def <<(exp); end
1182
1351
 
1183
- # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#17
1184
- def add_sequence(active_opts = T.unsafe(nil)); end
1352
+ # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#16
1353
+ def add_sequence(active_opts = T.unsafe(nil), params = T.unsafe(nil)); end
1185
1354
 
1186
1355
  # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#5
1187
1356
  def operands; end
@@ -1189,44 +1358,68 @@ class Regexp::Expression::SequenceOperation < ::Regexp::Expression::Subexpressio
1189
1358
  # source://regexp_parser//lib/regexp_parser/expression/shared.rb#9
1190
1359
  def operator; end
1191
1360
 
1192
- # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#21
1361
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#22
1193
1362
  def parts; end
1194
1363
 
1195
1364
  # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#5
1196
1365
  def sequences; end
1197
1366
 
1198
- # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#8
1199
- def starts_at; end
1200
-
1201
1367
  # source://regexp_parser//lib/regexp_parser/expression/sequence_operation.rb#8
1202
1368
  def ts; end
1203
1369
  end
1204
1370
 
1371
+ # alias for symmetry between token symbol and Expression class name
1372
+ #
1373
+ # source://regexp_parser//lib/regexp_parser/expression/classes/character_set.rb#25
1374
+ Regexp::Expression::Set = Regexp::Expression::CharacterSet
1375
+
1376
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#2
1205
1377
  module Regexp::Expression::Shared
1206
1378
  mixes_in_class_methods ::Regexp::Expression::Shared::ClassMethods
1207
1379
 
1208
1380
  # Deep-compare two expressions for equality.
1209
1381
  #
1210
- # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#98
1382
+ # When changing the conditions, please make sure to update
1383
+ # #pretty_print_instance_variables so that it includes all relevant values.
1384
+ #
1385
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#101
1211
1386
  def ==(other); end
1212
1387
 
1213
1388
  # Deep-compare two expressions for equality.
1214
1389
  #
1215
- # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#98
1390
+ # When changing the conditions, please make sure to update
1391
+ # #pretty_print_instance_variables so that it includes all relevant values.
1392
+ #
1393
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#101
1216
1394
  def ===(other); end
1217
1395
 
1218
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#42
1396
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#51
1219
1397
  def base_length; end
1220
1398
 
1221
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#75
1399
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#124
1400
+ def capturing?; end
1401
+
1402
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#96
1222
1403
  def coded_offset; end
1223
1404
 
1405
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#128
1406
+ def comment?; end
1407
+
1408
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#133
1409
+ def decorative?; end
1410
+
1411
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#47
1412
+ def ends_at(include_quantifier = T.unsafe(nil)); end
1413
+
1224
1414
  # Deep-compare two expressions for equality.
1225
1415
  #
1226
- # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#98
1416
+ # When changing the conditions, please make sure to update
1417
+ # #pretty_print_instance_variables so that it includes all relevant values.
1418
+ #
1419
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#101
1227
1420
  def eql?(other); end
1228
1421
 
1229
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#46
1422
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#55
1230
1423
  def full_length; end
1231
1424
 
1232
1425
  # default implementation, e.g. "atomic group", "hex escape", "word type", ..
@@ -1234,6 +1427,9 @@ module Regexp::Expression::Shared
1234
1427
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#4
1235
1428
  def human_name; end
1236
1429
 
1430
+ # source://regexp_parser//lib/regexp_parser/expression/methods/printing.rb#3
1431
+ def inspect; end
1432
+
1237
1433
  # Test if this expression has the given test_token, and optionally a given
1238
1434
  # test_type.
1239
1435
  #
@@ -1257,10 +1453,10 @@ module Regexp::Expression::Shared
1257
1453
  # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#36
1258
1454
  def is?(test_token, test_type = T.unsafe(nil)); end
1259
1455
 
1260
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#83
1456
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#100
1261
1457
  def nesting_level=(lvl); end
1262
1458
 
1263
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#71
1459
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#92
1264
1460
  def offset; end
1265
1461
 
1266
1462
  # Test if this expression matches an entry in the given scope spec.
@@ -1304,38 +1500,80 @@ module Regexp::Expression::Shared
1304
1500
 
1305
1501
  # @return [Boolean]
1306
1502
  #
1307
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#67
1503
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#111
1308
1504
  def optional?; end
1309
1505
 
1310
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#55
1506
+ # default implementation
1507
+ #
1508
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#4
1311
1509
  def parts; end
1312
1510
 
1511
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#84
1512
+ def pre_quantifier_decoration(expression_format = T.unsafe(nil)); end
1513
+
1514
+ # Make pretty-print work despite #inspect implementation.
1515
+ #
1516
+ # source://regexp_parser//lib/regexp_parser/expression/methods/printing.rb#12
1517
+ def pretty_print(q); end
1518
+
1519
+ # Called by pretty_print (ruby/pp) and #inspect.
1520
+ #
1521
+ # source://regexp_parser//lib/regexp_parser/expression/methods/printing.rb#17
1522
+ def pretty_print_instance_variables; end
1523
+
1313
1524
  # @return [Boolean]
1314
1525
  #
1315
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#63
1526
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#115
1316
1527
  def quantified?; end
1317
1528
 
1318
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#89
1529
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#106
1319
1530
  def quantifier=(qtf); end
1320
1531
 
1321
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#59
1322
- def quantifier_affix(expression_format); end
1532
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#88
1533
+ def quantifier_affix(expression_format = T.unsafe(nil)); end
1323
1534
 
1324
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#38
1535
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#138
1536
+ def referential?; end
1537
+
1538
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#43
1325
1539
  def starts_at; end
1326
1540
 
1327
- # @return [Boolean]
1328
- #
1329
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#79
1541
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#120
1330
1542
  def terminal?; end
1331
1543
 
1332
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#50
1544
+ # #to_s reproduces the original source, as an unparser would.
1545
+ #
1546
+ # It takes an optional format argument.
1547
+ #
1548
+ # Example:
1549
+ #
1550
+ # lit = Regexp::Parser.parse(/a +/x)[0]
1551
+ #
1552
+ # lit.to_s # => 'a+' # default; with quantifier
1553
+ # lit.to_s(:full) # => 'a+' # default; with quantifier
1554
+ # lit.to_s(:base) # => 'a' # without quantifier
1555
+ # lit.to_s(:original) # => 'a +' # with quantifier AND intermittent decorations
1556
+ #
1557
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#72
1333
1558
  def to_s(format = T.unsafe(nil)); end
1334
1559
 
1335
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#50
1560
+ # #to_s reproduces the original source, as an unparser would.
1561
+ #
1562
+ # It takes an optional format argument.
1563
+ #
1564
+ # Example:
1565
+ #
1566
+ # lit = Regexp::Parser.parse(/a +/x)[0]
1567
+ #
1568
+ # lit.to_s # => 'a+' # default; with quantifier
1569
+ # lit.to_s(:full) # => 'a+' # default; with quantifier
1570
+ # lit.to_s(:base) # => 'a' # without quantifier
1571
+ # lit.to_s(:original) # => 'a +' # with quantifier AND intermittent decorations
1572
+ #
1573
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#72
1336
1574
  def to_str(format = T.unsafe(nil)); end
1337
1575
 
1338
- # source://regexp_parser//lib/regexp_parser/expression/methods/construct.rb#39
1576
+ # source://regexp_parser//lib/regexp_parser/expression/methods/construct.rb#37
1339
1577
  def token_class; end
1340
1578
 
1341
1579
  # Test if this expression has the given test_type, which can be either
@@ -1354,12 +1592,15 @@ module Regexp::Expression::Shared
1354
1592
 
1355
1593
  private
1356
1594
 
1357
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#17
1595
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#18
1358
1596
  def init_from_token_and_options(token, options = T.unsafe(nil)); end
1359
1597
 
1360
- # source://regexp_parser//lib/regexp_parser/expression/shared.rb#31
1598
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#32
1361
1599
  def initialize_copy(orig); end
1362
1600
 
1601
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#10
1602
+ def intersperse(expressions, separator); end
1603
+
1363
1604
  class << self
1364
1605
  # @private
1365
1606
  #
@@ -1369,7 +1610,15 @@ module Regexp::Expression::Shared
1369
1610
  end
1370
1611
 
1371
1612
  # filled in ./methods/*.rb
1613
+ #
1614
+ # source://regexp_parser//lib/regexp_parser/expression/shared.rb#3
1372
1615
  module Regexp::Expression::Shared::ClassMethods
1616
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#125
1617
+ def capturing?; end
1618
+
1619
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#129
1620
+ def comment?; end
1621
+
1373
1622
  # Convenience method to init a valid Expression without a Regexp::Token
1374
1623
  #
1375
1624
  # @raise [ArgumentError]
@@ -1380,10 +1629,20 @@ module Regexp::Expression::Shared::ClassMethods
1380
1629
  # source://regexp_parser//lib/regexp_parser/expression/methods/construct.rb#15
1381
1630
  def construct_defaults; end
1382
1631
 
1632
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#134
1633
+ def decorative?; end
1634
+
1635
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#139
1636
+ def referential?; end
1637
+
1638
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#121
1639
+ def terminal?; end
1640
+
1383
1641
  # source://regexp_parser//lib/regexp_parser/expression/methods/construct.rb#25
1384
1642
  def token_class; end
1385
1643
  end
1386
1644
 
1645
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#2
1387
1646
  class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1388
1647
  include ::Enumerable
1389
1648
 
@@ -1392,28 +1651,30 @@ class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1392
1651
  # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#7
1393
1652
  def initialize(token, options = T.unsafe(nil)); end
1394
1653
 
1395
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#18
1654
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#20
1396
1655
  def <<(exp); end
1397
1656
 
1398
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1657
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1399
1658
  def [](*args, &block); end
1400
1659
 
1401
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1660
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1402
1661
  def at(*args, &block); end
1403
1662
 
1404
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#35
1663
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#33
1405
1664
  def dig(*indices); end
1406
1665
 
1407
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1666
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1408
1667
  def each(*args, &block); end
1409
1668
 
1410
- # Iterates over the expressions of this expression as an array, passing
1411
- # the expression and its index within its parent to the given block.
1669
+ # Traverses the expression, passing each recursive child to the
1670
+ # given block.
1671
+ # If the block takes two arguments, the indices of the children within
1672
+ # their parents are also passed to it.
1412
1673
  #
1413
- # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#39
1414
- def each_expression(include_self = T.unsafe(nil)); end
1674
+ # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#8
1675
+ def each_expression(include_self = T.unsafe(nil), &block); end
1415
1676
 
1416
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1677
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1417
1678
  def empty?(*args, &block); end
1418
1679
 
1419
1680
  # Returns the value of attribute expressions.
@@ -1428,35 +1689,38 @@ class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1428
1689
  # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#5
1429
1690
  def expressions=(_arg0); end
1430
1691
 
1431
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1692
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#50
1693
+ def extract_quantifier_target(quantifier_description); end
1694
+
1695
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1432
1696
  def fetch(*args, &block); end
1433
1697
 
1434
1698
  # Returns a new array with the results of calling the given block once
1435
1699
  # for every expression. If a block is not given, returns an array with
1436
1700
  # each expression and its level index as an array.
1437
1701
  #
1438
- # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#50
1439
- def flat_map(include_self = T.unsafe(nil)); end
1702
+ # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#56
1703
+ def flat_map(include_self = T.unsafe(nil), &block); end
1440
1704
 
1441
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1705
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1442
1706
  def index(*args, &block); end
1443
1707
 
1444
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#114
1708
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#118
1445
1709
  def inner_match_length; end
1446
1710
 
1447
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1711
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1448
1712
  def join(*args, &block); end
1449
1713
 
1450
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1714
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1451
1715
  def last(*args, &block); end
1452
1716
 
1453
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1717
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1454
1718
  def length(*args, &block); end
1455
1719
 
1456
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#107
1720
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#111
1457
1721
  def match_length; end
1458
1722
 
1459
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#45
1723
+ # source://regexp_parser//lib/regexp_parser/expression/methods/parts.rb#21
1460
1724
  def parts; end
1461
1725
 
1462
1726
  # source://regexp_parser//lib/regexp_parser/expression/methods/strfregexp.rb#102
@@ -1465,10 +1729,10 @@ class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1465
1729
  # source://regexp_parser//lib/regexp_parser/expression/methods/strfregexp.rb#102
1466
1730
  def strfregexp_tree(format = T.unsafe(nil), include_self = T.unsafe(nil), separator = T.unsafe(nil)); end
1467
1731
 
1468
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#41
1732
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#39
1469
1733
  def te; end
1470
1734
 
1471
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#49
1735
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#43
1472
1736
  def to_h; end
1473
1737
 
1474
1738
  # Traverses the subexpression (depth-first, pre-order) and calls the given
@@ -1484,10 +1748,10 @@ class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1484
1748
  #
1485
1749
  # Returns self.
1486
1750
  #
1487
- # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#16
1751
+ # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#32
1488
1752
  def traverse(include_self = T.unsafe(nil), &block); end
1489
1753
 
1490
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#29
1754
+ # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#27
1491
1755
  def values_at(*args, &block); end
1492
1756
 
1493
1757
  # Traverses the subexpression (depth-first, pre-order) and calls the given
@@ -1503,9 +1767,17 @@ class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1503
1767
  #
1504
1768
  # Returns self.
1505
1769
  #
1506
- # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#16
1770
+ # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#32
1507
1771
  def walk(include_self = T.unsafe(nil), &block); end
1508
1772
 
1773
+ protected
1774
+
1775
+ # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#66
1776
+ def each_expression_with_index(&block); end
1777
+
1778
+ # source://regexp_parser//lib/regexp_parser/expression/methods/traverse.rb#73
1779
+ def each_expression_without_index(&block); end
1780
+
1509
1781
  private
1510
1782
 
1511
1783
  # Override base method to clone the expressions as well.
@@ -1513,112 +1785,266 @@ class Regexp::Expression::Subexpression < ::Regexp::Expression::Base
1513
1785
  # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#13
1514
1786
  def initialize_copy(orig); end
1515
1787
 
1516
- # source://regexp_parser//lib/regexp_parser/expression/subexpression.rb#58
1517
- def intersperse(expressions, separator); end
1788
+ class << self
1789
+ # source://regexp_parser//lib/regexp_parser/expression/methods/tests.rb#122
1790
+ def terminal?; end
1791
+ end
1518
1792
  end
1519
1793
 
1520
- # TODO: unify name with token :property, one way or the other, in v3.0.0
1794
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#2
1521
1795
  module Regexp::Expression::UnicodeProperty; end
1522
1796
 
1797
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#112
1523
1798
  class Regexp::Expression::UnicodeProperty::Age < ::Regexp::Expression::UnicodeProperty::Base; end
1799
+
1800
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#17
1524
1801
  class Regexp::Expression::UnicodeProperty::Alnum < ::Regexp::Expression::UnicodeProperty::Base; end
1802
+
1803
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#18
1525
1804
  class Regexp::Expression::UnicodeProperty::Alpha < ::Regexp::Expression::UnicodeProperty::Base; end
1805
+
1806
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#35
1526
1807
  class Regexp::Expression::UnicodeProperty::Any < ::Regexp::Expression::UnicodeProperty::Base; end
1808
+
1809
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#19
1527
1810
  class Regexp::Expression::UnicodeProperty::Ascii < ::Regexp::Expression::UnicodeProperty::Base; end
1811
+
1812
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#36
1528
1813
  class Regexp::Expression::UnicodeProperty::Assigned < ::Regexp::Expression::UnicodeProperty::Base; end
1529
1814
 
1815
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#3
1530
1816
  class Regexp::Expression::UnicodeProperty::Base < ::Regexp::Expression::Base
1531
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#94
1817
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#98
1532
1818
  def match_length; end
1533
1819
 
1534
- # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#9
1820
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#8
1535
1821
  def name; end
1536
1822
 
1537
1823
  # @return [Boolean]
1538
1824
  #
1539
- # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#5
1825
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#4
1540
1826
  def negative?; end
1541
1827
 
1542
- # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#13
1828
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#12
1543
1829
  def shortcut; end
1544
1830
  end
1545
1831
 
1832
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#20
1546
1833
  class Regexp::Expression::UnicodeProperty::Blank < ::Regexp::Expression::UnicodeProperty::Base; end
1834
+
1835
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#116
1547
1836
  class Regexp::Expression::UnicodeProperty::Block < ::Regexp::Expression::UnicodeProperty::Base; end
1837
+
1838
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#21
1548
1839
  class Regexp::Expression::UnicodeProperty::Cntrl < ::Regexp::Expression::UnicodeProperty::Base; end
1840
+
1841
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#101
1549
1842
  module Regexp::Expression::UnicodeProperty::Codepoint; end
1843
+
1844
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#104
1550
1845
  class Regexp::Expression::UnicodeProperty::Codepoint::Any < ::Regexp::Expression::UnicodeProperty::Codepoint::Base; end
1846
+
1847
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#102
1551
1848
  class Regexp::Expression::UnicodeProperty::Codepoint::Base < ::Regexp::Expression::UnicodeProperty::Base; end
1849
+
1850
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#105
1552
1851
  class Regexp::Expression::UnicodeProperty::Codepoint::Control < ::Regexp::Expression::UnicodeProperty::Codepoint::Base; end
1852
+
1853
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#106
1553
1854
  class Regexp::Expression::UnicodeProperty::Codepoint::Format < ::Regexp::Expression::UnicodeProperty::Codepoint::Base; end
1855
+
1856
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#108
1554
1857
  class Regexp::Expression::UnicodeProperty::Codepoint::PrivateUse < ::Regexp::Expression::UnicodeProperty::Codepoint::Base; end
1858
+
1859
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#107
1555
1860
  class Regexp::Expression::UnicodeProperty::Codepoint::Surrogate < ::Regexp::Expression::UnicodeProperty::Codepoint::Base; end
1861
+
1862
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#109
1556
1863
  class Regexp::Expression::UnicodeProperty::Codepoint::Unassigned < ::Regexp::Expression::UnicodeProperty::Codepoint::Base; end
1864
+
1865
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#113
1557
1866
  class Regexp::Expression::UnicodeProperty::Derived < ::Regexp::Expression::UnicodeProperty::Base; end
1867
+
1868
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#22
1558
1869
  class Regexp::Expression::UnicodeProperty::Digit < ::Regexp::Expression::UnicodeProperty::Base; end
1870
+
1871
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#114
1559
1872
  class Regexp::Expression::UnicodeProperty::Emoji < ::Regexp::Expression::UnicodeProperty::Base; end
1873
+
1874
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#23
1560
1875
  class Regexp::Expression::UnicodeProperty::Graph < ::Regexp::Expression::UnicodeProperty::Base; end
1876
+
1877
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#38
1561
1878
  module Regexp::Expression::UnicodeProperty::Letter; end
1879
+
1880
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#41
1562
1881
  class Regexp::Expression::UnicodeProperty::Letter::Any < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1882
+
1883
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#39
1563
1884
  class Regexp::Expression::UnicodeProperty::Letter::Base < ::Regexp::Expression::UnicodeProperty::Base; end
1885
+
1886
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#42
1564
1887
  class Regexp::Expression::UnicodeProperty::Letter::Cased < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1888
+
1889
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#44
1565
1890
  class Regexp::Expression::UnicodeProperty::Letter::Lowercase < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1891
+
1892
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#46
1566
1893
  class Regexp::Expression::UnicodeProperty::Letter::Modifier < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1894
+
1895
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#47
1567
1896
  class Regexp::Expression::UnicodeProperty::Letter::Other < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1897
+
1898
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#45
1568
1899
  class Regexp::Expression::UnicodeProperty::Letter::Titlecase < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1900
+
1901
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#43
1569
1902
  class Regexp::Expression::UnicodeProperty::Letter::Uppercase < ::Regexp::Expression::UnicodeProperty::Letter::Base; end
1903
+
1904
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#24
1570
1905
  class Regexp::Expression::UnicodeProperty::Lower < ::Regexp::Expression::UnicodeProperty::Base; end
1906
+
1907
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#50
1571
1908
  module Regexp::Expression::UnicodeProperty::Mark; end
1909
+
1910
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#53
1572
1911
  class Regexp::Expression::UnicodeProperty::Mark::Any < ::Regexp::Expression::UnicodeProperty::Mark::Base; end
1912
+
1913
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#51
1573
1914
  class Regexp::Expression::UnicodeProperty::Mark::Base < ::Regexp::Expression::UnicodeProperty::Base; end
1915
+
1916
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#54
1574
1917
  class Regexp::Expression::UnicodeProperty::Mark::Combining < ::Regexp::Expression::UnicodeProperty::Mark::Base; end
1918
+
1919
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#57
1575
1920
  class Regexp::Expression::UnicodeProperty::Mark::Enclosing < ::Regexp::Expression::UnicodeProperty::Mark::Base; end
1921
+
1922
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#55
1576
1923
  class Regexp::Expression::UnicodeProperty::Mark::Nonspacing < ::Regexp::Expression::UnicodeProperty::Mark::Base; end
1924
+
1925
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#56
1577
1926
  class Regexp::Expression::UnicodeProperty::Mark::Spacing < ::Regexp::Expression::UnicodeProperty::Mark::Base; end
1927
+
1928
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#33
1578
1929
  class Regexp::Expression::UnicodeProperty::Newline < ::Regexp::Expression::UnicodeProperty::Base; end
1930
+
1931
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#60
1579
1932
  module Regexp::Expression::UnicodeProperty::Number; end
1933
+
1934
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#63
1580
1935
  class Regexp::Expression::UnicodeProperty::Number::Any < ::Regexp::Expression::UnicodeProperty::Number::Base; end
1936
+
1937
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#61
1581
1938
  class Regexp::Expression::UnicodeProperty::Number::Base < ::Regexp::Expression::UnicodeProperty::Base; end
1939
+
1940
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#64
1582
1941
  class Regexp::Expression::UnicodeProperty::Number::Decimal < ::Regexp::Expression::UnicodeProperty::Number::Base; end
1942
+
1943
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#65
1583
1944
  class Regexp::Expression::UnicodeProperty::Number::Letter < ::Regexp::Expression::UnicodeProperty::Number::Base; end
1945
+
1946
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#66
1584
1947
  class Regexp::Expression::UnicodeProperty::Number::Other < ::Regexp::Expression::UnicodeProperty::Number::Base; end
1948
+
1949
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#25
1585
1950
  class Regexp::Expression::UnicodeProperty::Print < ::Regexp::Expression::UnicodeProperty::Base; end
1951
+
1952
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#26
1586
1953
  class Regexp::Expression::UnicodeProperty::Punct < ::Regexp::Expression::UnicodeProperty::Base; end
1954
+
1955
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#69
1587
1956
  module Regexp::Expression::UnicodeProperty::Punctuation; end
1957
+
1958
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#72
1588
1959
  class Regexp::Expression::UnicodeProperty::Punctuation::Any < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1960
+
1961
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#70
1589
1962
  class Regexp::Expression::UnicodeProperty::Punctuation::Base < ::Regexp::Expression::UnicodeProperty::Base; end
1963
+
1964
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#76
1590
1965
  class Regexp::Expression::UnicodeProperty::Punctuation::Close < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1966
+
1967
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#73
1591
1968
  class Regexp::Expression::UnicodeProperty::Punctuation::Connector < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1969
+
1970
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#74
1592
1971
  class Regexp::Expression::UnicodeProperty::Punctuation::Dash < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1972
+
1973
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#78
1593
1974
  class Regexp::Expression::UnicodeProperty::Punctuation::Final < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1975
+
1976
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#77
1594
1977
  class Regexp::Expression::UnicodeProperty::Punctuation::Initial < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1978
+
1979
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#75
1595
1980
  class Regexp::Expression::UnicodeProperty::Punctuation::Open < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1981
+
1982
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#79
1596
1983
  class Regexp::Expression::UnicodeProperty::Punctuation::Other < ::Regexp::Expression::UnicodeProperty::Punctuation::Base; end
1984
+
1985
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#115
1597
1986
  class Regexp::Expression::UnicodeProperty::Script < ::Regexp::Expression::UnicodeProperty::Base; end
1987
+
1988
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#82
1598
1989
  module Regexp::Expression::UnicodeProperty::Separator; end
1990
+
1991
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#85
1599
1992
  class Regexp::Expression::UnicodeProperty::Separator::Any < ::Regexp::Expression::UnicodeProperty::Separator::Base; end
1993
+
1994
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#83
1600
1995
  class Regexp::Expression::UnicodeProperty::Separator::Base < ::Regexp::Expression::UnicodeProperty::Base; end
1996
+
1997
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#87
1601
1998
  class Regexp::Expression::UnicodeProperty::Separator::Line < ::Regexp::Expression::UnicodeProperty::Separator::Base; end
1999
+
2000
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#88
1602
2001
  class Regexp::Expression::UnicodeProperty::Separator::Paragraph < ::Regexp::Expression::UnicodeProperty::Separator::Base; end
2002
+
2003
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#86
1603
2004
  class Regexp::Expression::UnicodeProperty::Separator::Space < ::Regexp::Expression::UnicodeProperty::Separator::Base; end
2005
+
2006
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#27
1604
2007
  class Regexp::Expression::UnicodeProperty::Space < ::Regexp::Expression::UnicodeProperty::Base; end
2008
+
2009
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#91
1605
2010
  module Regexp::Expression::UnicodeProperty::Symbol; end
2011
+
2012
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#94
1606
2013
  class Regexp::Expression::UnicodeProperty::Symbol::Any < ::Regexp::Expression::UnicodeProperty::Symbol::Base; end
2014
+
2015
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#92
1607
2016
  class Regexp::Expression::UnicodeProperty::Symbol::Base < ::Regexp::Expression::UnicodeProperty::Base; end
2017
+
2018
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#96
1608
2019
  class Regexp::Expression::UnicodeProperty::Symbol::Currency < ::Regexp::Expression::UnicodeProperty::Symbol::Base; end
2020
+
2021
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#95
1609
2022
  class Regexp::Expression::UnicodeProperty::Symbol::Math < ::Regexp::Expression::UnicodeProperty::Symbol::Base; end
2023
+
2024
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#97
1610
2025
  class Regexp::Expression::UnicodeProperty::Symbol::Modifier < ::Regexp::Expression::UnicodeProperty::Symbol::Base; end
2026
+
2027
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#98
1611
2028
  class Regexp::Expression::UnicodeProperty::Symbol::Other < ::Regexp::Expression::UnicodeProperty::Symbol::Base; end
2029
+
2030
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#28
1612
2031
  class Regexp::Expression::UnicodeProperty::Upper < ::Regexp::Expression::UnicodeProperty::Base; end
2032
+
2033
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#29
1613
2034
  class Regexp::Expression::UnicodeProperty::Word < ::Regexp::Expression::UnicodeProperty::Base; end
2035
+
2036
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#31
1614
2037
  class Regexp::Expression::UnicodeProperty::XPosixPunct < ::Regexp::Expression::UnicodeProperty::Base; end
2038
+
2039
+ # source://regexp_parser//lib/regexp_parser/expression/classes/unicode_property.rb#30
1615
2040
  class Regexp::Expression::UnicodeProperty::Xdigit < ::Regexp::Expression::UnicodeProperty::Base; end
1616
2041
 
2042
+ # source://regexp_parser//lib/regexp_parser/expression/classes/free_space.rb#11
1617
2043
  class Regexp::Expression::WhiteSpace < ::Regexp::Expression::FreeSpace
1618
2044
  # source://regexp_parser//lib/regexp_parser/expression/methods/human_name.rb#42
1619
2045
  def human_name; end
1620
2046
 
1621
- # source://regexp_parser//lib/regexp_parser/expression/classes/free_space.rb#11
2047
+ # source://regexp_parser//lib/regexp_parser/expression/classes/free_space.rb#12
1622
2048
  def merge(exp); end
1623
2049
  end
1624
2050
 
@@ -1626,96 +2052,153 @@ end
1626
2052
  # collects emitted tokens into an array, calculates their nesting depth, and
1627
2053
  # normalizes tokens for the parser, and checks if they are implemented by the
1628
2054
  # given syntax flavor.
2055
+ #
2056
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#5
1629
2057
  class Regexp::Lexer
2058
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#71
2059
+ def emit(token); end
2060
+
1630
2061
  # source://regexp_parser//lib/regexp_parser/lexer.rb#20
1631
- def lex(input, syntax = T.unsafe(nil), options: T.unsafe(nil), &block); end
2062
+ def lex(input, syntax = T.unsafe(nil), options: T.unsafe(nil), collect_tokens: T.unsafe(nil), &block); end
1632
2063
 
1633
2064
  private
1634
2065
 
1635
- # source://regexp_parser//lib/regexp_parser/lexer.rb#71
2066
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#91
1636
2067
  def ascend(type, token); end
1637
2068
 
1638
- # source://regexp_parser//lib/regexp_parser/lexer.rb#108
2069
+ # Returns the value of attribute block.
2070
+ #
2071
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2072
+ def block; end
2073
+
2074
+ # Sets the attribute block
2075
+ #
2076
+ # @param value the value to set the attribute block to.
2077
+ #
2078
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2079
+ def block=(_arg0); end
2080
+
2081
+ # if a codepoint list is followed by a quantifier, that quantifier applies
2082
+ # to the last codepoint, e.g. /\u{61 62 63}{3}/ =~ 'abccc'
2083
+ # c.f. #break_literal.
2084
+ #
2085
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#143
1639
2086
  def break_codepoint_list(token); end
1640
2087
 
1641
2088
  # called by scan to break a literal run that is longer than one character
1642
2089
  # into two separate tokens when it is followed by a quantifier
1643
2090
  #
1644
- # source://regexp_parser//lib/regexp_parser/lexer.rb#95
2091
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#123
1645
2092
  def break_literal(token); end
1646
2093
 
2094
+ # Returns the value of attribute collect_tokens.
2095
+ #
2096
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2097
+ def collect_tokens; end
2098
+
2099
+ # Sets the attribute collect_tokens
2100
+ #
2101
+ # @param value the value to set the attribute collect_tokens to.
2102
+ #
2103
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2104
+ def collect_tokens=(_arg0); end
2105
+
1647
2106
  # Returns the value of attribute conditional_nesting.
1648
2107
  #
1649
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2108
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1650
2109
  def conditional_nesting; end
1651
2110
 
1652
2111
  # Sets the attribute conditional_nesting
1653
2112
  #
1654
2113
  # @param value the value to set the attribute conditional_nesting to.
1655
2114
  #
1656
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2115
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1657
2116
  def conditional_nesting=(_arg0); end
1658
2117
 
1659
- # source://regexp_parser//lib/regexp_parser/lexer.rb#82
2118
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#106
1660
2119
  def descend(type, token); end
1661
2120
 
1662
- # source://regexp_parser//lib/regexp_parser/lexer.rb#123
1663
- def merge_condition(current); end
2121
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#162
2122
+ def merge_condition(current, last); end
1664
2123
 
1665
2124
  # Returns the value of attribute nesting.
1666
2125
  #
1667
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2126
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1668
2127
  def nesting; end
1669
2128
 
1670
2129
  # Sets the attribute nesting
1671
2130
  #
1672
2131
  # @param value the value to set the attribute nesting to.
1673
2132
  #
1674
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2133
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1675
2134
  def nesting=(_arg0); end
1676
2135
 
2136
+ # Returns the value of attribute preprev_token.
2137
+ #
2138
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2139
+ def preprev_token; end
2140
+
2141
+ # Sets the attribute preprev_token
2142
+ #
2143
+ # @param value the value to set the attribute preprev_token to.
2144
+ #
2145
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2146
+ def preprev_token=(_arg0); end
2147
+
2148
+ # Returns the value of attribute prev_token.
2149
+ #
2150
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2151
+ def prev_token; end
2152
+
2153
+ # Sets the attribute prev_token
2154
+ #
2155
+ # @param value the value to set the attribute prev_token to.
2156
+ #
2157
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
2158
+ def prev_token=(_arg0); end
2159
+
1677
2160
  # Returns the value of attribute set_nesting.
1678
2161
  #
1679
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2162
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1680
2163
  def set_nesting; end
1681
2164
 
1682
2165
  # Sets the attribute set_nesting
1683
2166
  #
1684
2167
  # @param value the value to set the attribute set_nesting to.
1685
2168
  #
1686
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2169
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1687
2170
  def set_nesting=(_arg0); end
1688
2171
 
1689
2172
  # Returns the value of attribute shift.
1690
2173
  #
1691
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2174
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1692
2175
  def shift; end
1693
2176
 
1694
2177
  # Sets the attribute shift
1695
2178
  #
1696
2179
  # @param value the value to set the attribute shift to.
1697
2180
  #
1698
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2181
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1699
2182
  def shift=(_arg0); end
1700
2183
 
1701
2184
  # Returns the value of attribute tokens.
1702
2185
  #
1703
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2186
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1704
2187
  def tokens; end
1705
2188
 
1706
2189
  # Sets the attribute tokens
1707
2190
  #
1708
2191
  # @param value the value to set the attribute tokens to.
1709
2192
  #
1710
- # source://regexp_parser//lib/regexp_parser/lexer.rb#69
2193
+ # source://regexp_parser//lib/regexp_parser/lexer.rb#87
1711
2194
  def tokens=(_arg0); end
1712
2195
 
1713
2196
  class << self
1714
2197
  # source://regexp_parser//lib/regexp_parser/lexer.rb#16
1715
- def lex(input, syntax = T.unsafe(nil), options: T.unsafe(nil), &block); end
2198
+ def lex(input, syntax = T.unsafe(nil), options: T.unsafe(nil), collect_tokens: T.unsafe(nil), &block); end
1716
2199
 
1717
2200
  # source://regexp_parser//lib/regexp_parser/lexer.rb#16
1718
- def scan(input, syntax = T.unsafe(nil), options: T.unsafe(nil), &block); end
2201
+ def scan(input, syntax = T.unsafe(nil), options: T.unsafe(nil), collect_tokens: T.unsafe(nil), &block); end
1719
2202
  end
1720
2203
  end
1721
2204
 
@@ -1728,6 +2211,7 @@ Regexp::Lexer::CONDITION_TOKENS = T.let(T.unsafe(nil), Array)
1728
2211
  # source://regexp_parser//lib/regexp_parser/lexer.rb#7
1729
2212
  Regexp::Lexer::OPENING_TOKENS = T.let(T.unsafe(nil), Array)
1730
2213
 
2214
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#1
1731
2215
  class Regexp::MatchLength
1732
2216
  include ::Enumerable
1733
2217
 
@@ -1841,7 +2325,7 @@ class Regexp::MatchLength
1841
2325
  # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#71
1842
2326
  def reify=(_arg0); end
1843
2327
 
1844
- # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#73
2328
+ # source://regexp_parser//lib/regexp_parser/expression/methods/match_length.rb#74
1845
2329
  def test_regexp; end
1846
2330
 
1847
2331
  class << self
@@ -1850,16 +2334,16 @@ class Regexp::MatchLength
1850
2334
  end
1851
2335
  end
1852
2336
 
2337
+ # source://regexp_parser//lib/regexp_parser/version.rb#2
1853
2338
  class Regexp::Parser
1854
2339
  include ::Regexp::Expression
1855
- include ::Regexp::Expression::UnicodeProperty
1856
2340
 
1857
2341
  # source://regexp_parser//lib/regexp_parser/parser.rb#25
1858
2342
  def parse(input, syntax = T.unsafe(nil), options: T.unsafe(nil), &block); end
1859
2343
 
1860
2344
  private
1861
2345
 
1862
- # source://regexp_parser//lib/regexp_parser/parser.rb#574
2346
+ # source://regexp_parser//lib/regexp_parser/parser.rb#573
1863
2347
  def active_opts; end
1864
2348
 
1865
2349
  # source://regexp_parser//lib/regexp_parser/parser.rb#99
@@ -1872,7 +2356,7 @@ class Regexp::Parser
1872
2356
  # an instance of Backreference::Number, its #referenced_expression is set to
1873
2357
  # the instance of Group::Capture that it refers to via its number.
1874
2358
  #
1875
- # source://regexp_parser//lib/regexp_parser/parser.rb#581
2359
+ # source://regexp_parser//lib/regexp_parser/parser.rb#580
1876
2360
  def assign_referenced_expressions; end
1877
2361
 
1878
2362
  # source://regexp_parser//lib/regexp_parser/parser.rb#227
@@ -1893,13 +2377,13 @@ class Regexp::Parser
1893
2377
  # source://regexp_parser//lib/regexp_parser/parser.rb#56
1894
2378
  def captured_group_counts=(_arg0); end
1895
2379
 
1896
- # source://regexp_parser//lib/regexp_parser/parser.rb#570
2380
+ # source://regexp_parser//lib/regexp_parser/parser.rb#569
1897
2381
  def close_completed_character_set_range; end
1898
2382
 
1899
2383
  # source://regexp_parser//lib/regexp_parser/parser.rb#210
1900
2384
  def close_group; end
1901
2385
 
1902
- # source://regexp_parser//lib/regexp_parser/parser.rb#538
2386
+ # source://regexp_parser//lib/regexp_parser/parser.rb#537
1903
2387
  def close_set; end
1904
2388
 
1905
2389
  # source://regexp_parser//lib/regexp_parser/parser.rb#269
@@ -1931,28 +2415,28 @@ class Regexp::Parser
1931
2415
  # source://regexp_parser//lib/regexp_parser/parser.rb#60
1932
2416
  def extract_options(input, options); end
1933
2417
 
1934
- # source://regexp_parser//lib/regexp_parser/parser.rb#347
2418
+ # source://regexp_parser//lib/regexp_parser/parser.rb#349
1935
2419
  def free_space(token); end
1936
2420
 
1937
2421
  # source://regexp_parser//lib/regexp_parser/parser.rb#114
1938
2422
  def group(token); end
1939
2423
 
1940
- # source://regexp_parser//lib/regexp_parser/parser.rb#511
2424
+ # source://regexp_parser//lib/regexp_parser/parser.rb#508
1941
2425
  def increase_group_level(exp); end
1942
2426
 
1943
- # source://regexp_parser//lib/regexp_parser/parser.rb#549
2427
+ # source://regexp_parser//lib/regexp_parser/parser.rb#548
1944
2428
  def intersection(token); end
1945
2429
 
1946
- # source://regexp_parser//lib/regexp_parser/parser.rb#362
2430
+ # source://regexp_parser//lib/regexp_parser/parser.rb#360
1947
2431
  def keep(token); end
1948
2432
 
1949
- # source://regexp_parser//lib/regexp_parser/parser.rb#366
2433
+ # source://regexp_parser//lib/regexp_parser/parser.rb#364
1950
2434
  def literal(token); end
1951
2435
 
1952
- # source://regexp_parser//lib/regexp_parser/parser.rb#370
2436
+ # source://regexp_parser//lib/regexp_parser/parser.rb#368
1953
2437
  def meta(token); end
1954
2438
 
1955
- # source://regexp_parser//lib/regexp_parser/parser.rb#534
2439
+ # source://regexp_parser//lib/regexp_parser/parser.rb#533
1956
2440
  def negate_set; end
1957
2441
 
1958
2442
  # source://regexp_parser//lib/regexp_parser/parser.rb#299
@@ -1988,7 +2472,7 @@ class Regexp::Parser
1988
2472
  # source://regexp_parser//lib/regexp_parser/parser.rb#165
1989
2473
  def open_group(token); end
1990
2474
 
1991
- # source://regexp_parser//lib/regexp_parser/parser.rb#529
2475
+ # source://regexp_parser//lib/regexp_parser/parser.rb#526
1992
2476
  def open_set(token); end
1993
2477
 
1994
2478
  # source://regexp_parser//lib/regexp_parser/parser.rb#130
@@ -2009,16 +2493,16 @@ class Regexp::Parser
2009
2493
  # source://regexp_parser//lib/regexp_parser/parser.rb#76
2010
2494
  def parse_token(token); end
2011
2495
 
2012
- # source://regexp_parser//lib/regexp_parser/parser.rb#392
2496
+ # source://regexp_parser//lib/regexp_parser/parser.rb#390
2013
2497
  def posixclass(token); end
2014
2498
 
2015
- # source://regexp_parser//lib/regexp_parser/parser.rb#399
2499
+ # source://regexp_parser//lib/regexp_parser/parser.rb#397
2016
2500
  def property(token); end
2017
2501
 
2018
- # source://regexp_parser//lib/regexp_parser/parser.rb#480
2502
+ # source://regexp_parser//lib/regexp_parser/parser.rb#478
2019
2503
  def quantifier(token); end
2020
2504
 
2021
- # source://regexp_parser//lib/regexp_parser/parser.rb#542
2505
+ # source://regexp_parser//lib/regexp_parser/parser.rb#541
2022
2506
  def range(token); end
2023
2507
 
2024
2508
  # Returns the value of attribute root.
@@ -2033,10 +2517,10 @@ class Regexp::Parser
2033
2517
  # source://regexp_parser//lib/regexp_parser/parser.rb#56
2034
2518
  def root=(_arg0); end
2035
2519
 
2036
- # source://regexp_parser//lib/regexp_parser/parser.rb#381
2520
+ # source://regexp_parser//lib/regexp_parser/parser.rb#379
2037
2521
  def sequence_operation(klass, token); end
2038
2522
 
2039
- # source://regexp_parser//lib/regexp_parser/parser.rb#517
2523
+ # source://regexp_parser//lib/regexp_parser/parser.rb#514
2040
2524
  def set(token); end
2041
2525
 
2042
2526
  # Returns the value of attribute switching_options.
@@ -2054,7 +2538,7 @@ class Regexp::Parser
2054
2538
  # source://regexp_parser//lib/regexp_parser/parser.rb#198
2055
2539
  def total_captured_group_count; end
2056
2540
 
2057
- # source://regexp_parser//lib/regexp_parser/parser.rb#553
2541
+ # source://regexp_parser//lib/regexp_parser/parser.rb#552
2058
2542
  def type(token); end
2059
2543
 
2060
2544
  class << self
@@ -2067,16 +2551,23 @@ end
2067
2551
  Regexp::Parser::ENC_FLAGS = T.let(T.unsafe(nil), Array)
2068
2552
 
2069
2553
  # base class for all gem-specific errors
2554
+ #
2555
+ # source://regexp_parser//lib/regexp_parser/error.rb#3
2070
2556
  class Regexp::Parser::Error < ::StandardError; end
2071
2557
 
2072
2558
  # source://regexp_parser//lib/regexp_parser/parser.rb#127
2073
2559
  Regexp::Parser::MOD_FLAGS = T.let(T.unsafe(nil), Array)
2074
2560
 
2561
+ # source://regexp_parser//lib/regexp_parser/parser.rb#7
2075
2562
  class Regexp::Parser::ParserError < ::Regexp::Parser::Error; end
2076
2563
 
2077
- # source://regexp_parser//lib/regexp_parser/parser.rb#397
2564
+ # source://regexp_parser//lib/regexp_parser/parser.rb#394
2565
+ Regexp::Parser::UP = Regexp::Expression::UnicodeProperty
2566
+
2567
+ # source://regexp_parser//lib/regexp_parser/parser.rb#395
2078
2568
  Regexp::Parser::UPTokens = Regexp::Syntax::Token::UnicodeProperty
2079
2569
 
2570
+ # source://regexp_parser//lib/regexp_parser/parser.rb#15
2080
2571
  class Regexp::Parser::UnknownTokenError < ::Regexp::Parser::ParserError
2081
2572
  # @return [UnknownTokenError] a new instance of UnknownTokenError
2082
2573
  #
@@ -2084,6 +2575,7 @@ class Regexp::Parser::UnknownTokenError < ::Regexp::Parser::ParserError
2084
2575
  def initialize(type, token); end
2085
2576
  end
2086
2577
 
2578
+ # source://regexp_parser//lib/regexp_parser/parser.rb#9
2087
2579
  class Regexp::Parser::UnknownTokenTypeError < ::Regexp::Parser::ParserError
2088
2580
  # @return [UnknownTokenTypeError] a new instance of UnknownTokenTypeError
2089
2581
  #
@@ -2094,178 +2586,197 @@ end
2094
2586
  # source://regexp_parser//lib/regexp_parser/version.rb#3
2095
2587
  Regexp::Parser::VERSION = T.let(T.unsafe(nil), String)
2096
2588
 
2589
+ # mapping for simple cases with a 1:1 relation between text and token
2590
+ #
2591
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/scanner_error.rb#3
2097
2592
  class Regexp::Scanner
2098
2593
  # Emits an array with the details of the scanned pattern
2099
2594
  #
2100
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2555
2595
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2388
2101
2596
  def emit(type, token, text); end
2102
2597
 
2598
+ # only public for #||= to work on ruby <= 2.5
2599
+ #
2600
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2413
2601
+ def literal_run; end
2602
+
2603
+ # only public for #||= to work on ruby <= 2.5
2604
+ #
2605
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2413
2606
+ def literal_run=(_arg0); end
2607
+
2103
2608
  # @raise [PrematureEndError]
2104
2609
  #
2105
- # source://regexp_parser//lib/regexp_parser/scanner.rb#84
2106
- def scan(input_object, options: T.unsafe(nil), &block); end
2610
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#24
2611
+ def scan(input_object, options: T.unsafe(nil), collect_tokens: T.unsafe(nil), &block); end
2107
2612
 
2108
2613
  private
2109
2614
 
2110
2615
  # Appends one or more characters to the literal buffer, to be emitted later
2111
2616
  # by a call to emit_literal.
2112
2617
  #
2113
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2606
2618
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2450
2114
2619
  def append_literal(data, ts, te); end
2115
2620
 
2116
2621
  # Returns the value of attribute block.
2117
2622
  #
2118
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2623
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2119
2624
  def block; end
2120
2625
 
2121
2626
  # Sets the attribute block
2122
2627
  #
2123
2628
  # @param value the value to set the attribute block to.
2124
2629
  #
2125
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2630
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2126
2631
  def block=(_arg0); end
2127
2632
 
2128
2633
  # Returns the value of attribute char_pos.
2129
2634
  #
2130
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2635
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2131
2636
  def char_pos; end
2132
2637
 
2133
2638
  # Sets the attribute char_pos
2134
2639
  #
2135
2640
  # @param value the value to set the attribute char_pos to.
2136
2641
  #
2137
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2642
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2138
2643
  def char_pos=(_arg0); end
2139
2644
 
2645
+ # Returns the value of attribute collect_tokens.
2646
+ #
2647
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2648
+ def collect_tokens; end
2649
+
2650
+ # Sets the attribute collect_tokens
2651
+ #
2652
+ # @param value the value to set the attribute collect_tokens to.
2653
+ #
2654
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2655
+ def collect_tokens=(_arg0); end
2656
+
2140
2657
  # Returns the value of attribute conditional_stack.
2141
2658
  #
2142
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2659
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2143
2660
  def conditional_stack; end
2144
2661
 
2145
2662
  # Sets the attribute conditional_stack
2146
2663
  #
2147
2664
  # @param value the value to set the attribute conditional_stack to.
2148
2665
  #
2149
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2666
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2150
2667
  def conditional_stack=(_arg0); end
2151
2668
 
2152
2669
  # Copy from ts to te from data as text
2153
2670
  #
2154
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2600
2671
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2444
2155
2672
  def copy(data, ts, te); end
2156
2673
 
2157
2674
  # Emits the literal run collected by calls to the append_literal method.
2158
2675
  #
2159
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2612
2676
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2455
2160
2677
  def emit_literal; end
2161
2678
 
2162
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2647
2679
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2490
2163
2680
  def emit_meta_control_sequence(data, ts, te, token); end
2164
2681
 
2165
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2618
2682
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2461
2166
2683
  def emit_options(text); end
2167
2684
 
2168
2685
  # Returns the value of attribute free_spacing.
2169
2686
  #
2170
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2687
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2171
2688
  def free_spacing; end
2172
2689
 
2173
2690
  # Sets the attribute free_spacing
2174
2691
  #
2175
2692
  # @param value the value to set the attribute free_spacing to.
2176
2693
  #
2177
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2694
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2178
2695
  def free_spacing=(_arg0); end
2179
2696
 
2180
2697
  # @return [Boolean]
2181
2698
  #
2182
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2579
2699
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2423
2183
2700
  def free_spacing?(input_object, options); end
2184
2701
 
2185
2702
  # Returns the value of attribute group_depth.
2186
2703
  #
2187
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2704
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2188
2705
  def group_depth; end
2189
2706
 
2190
2707
  # Sets the attribute group_depth
2191
2708
  #
2192
2709
  # @param value the value to set the attribute group_depth to.
2193
2710
  #
2194
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2711
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2195
2712
  def group_depth=(_arg0); end
2196
2713
 
2197
2714
  # @return [Boolean]
2198
2715
  #
2199
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2591
2716
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2435
2200
2717
  def in_group?; end
2201
2718
 
2202
2719
  # @return [Boolean]
2203
2720
  #
2204
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2595
2721
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2439
2205
2722
  def in_set?; end
2206
2723
 
2207
- # Returns the value of attribute literal.
2724
+ # Returns the value of attribute prev_token.
2208
2725
  #
2209
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2210
- def literal; end
2726
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2727
+ def prev_token; end
2211
2728
 
2212
- # Sets the attribute literal
2729
+ # Sets the attribute prev_token
2213
2730
  #
2214
- # @param value the value to set the attribute literal to.
2731
+ # @param value the value to set the attribute prev_token to.
2215
2732
  #
2216
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2217
- def literal=(_arg0); end
2733
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2734
+ def prev_token=(_arg0); end
2218
2735
 
2219
2736
  # Returns the value of attribute set_depth.
2220
2737
  #
2221
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2738
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2222
2739
  def set_depth; end
2223
2740
 
2224
2741
  # Sets the attribute set_depth
2225
2742
  #
2226
2743
  # @param value the value to set the attribute set_depth to.
2227
2744
  #
2228
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2745
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2229
2746
  def set_depth=(_arg0); end
2230
2747
 
2231
2748
  # Returns the value of attribute spacing_stack.
2232
2749
  #
2233
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2750
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2234
2751
  def spacing_stack; end
2235
2752
 
2236
2753
  # Sets the attribute spacing_stack
2237
2754
  #
2238
2755
  # @param value the value to set the attribute spacing_stack to.
2239
2756
  #
2240
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2757
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2241
2758
  def spacing_stack=(_arg0); end
2242
2759
 
2243
2760
  # Returns the value of attribute tokens.
2244
2761
  #
2245
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2762
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2246
2763
  def tokens; end
2247
2764
 
2248
2765
  # Sets the attribute tokens
2249
2766
  #
2250
2767
  # @param value the value to set the attribute tokens to.
2251
2768
  #
2252
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2576
2769
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2417
2253
2770
  def tokens=(_arg0); end
2254
2771
 
2255
- # Centralizes and unifies the handling of validation related
2256
- # errors.
2257
- #
2258
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2656
2259
- def validation_error(type, what, reason = T.unsafe(nil)); end
2260
-
2261
2772
  class << self
2262
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2541
2773
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2374
2263
2774
  def long_prop_map; end
2264
2775
 
2265
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2545
2776
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2378
2266
2777
  def parse_prop_map(name); end
2267
2778
 
2268
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2549
2779
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2382
2269
2780
  def posix_classes; end
2270
2781
 
2271
2782
  # Scans the given regular expression text, or Regexp object and collects the
@@ -2275,96 +2786,121 @@ class Regexp::Scanner
2275
2786
  # This method may raise errors if a syntax error is encountered.
2276
2787
  # --------------------------------------------------------------------------
2277
2788
  #
2278
- # source://regexp_parser//lib/regexp_parser/scanner.rb#80
2279
- def scan(input_object, options: T.unsafe(nil), &block); end
2789
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#20
2790
+ def scan(input_object, options: T.unsafe(nil), collect_tokens: T.unsafe(nil), &block); end
2280
2791
 
2281
2792
  # lazy-load property maps when first needed
2282
2793
  #
2283
- # source://regexp_parser//lib/regexp_parser/scanner.rb#2537
2794
+ # source://regexp_parser//lib/regexp_parser/scanner.rb#2370
2284
2795
  def short_prop_map; end
2285
2796
  end
2286
2797
  end
2287
2798
 
2288
2799
  # Invalid back reference. Used for name a number refs/calls.
2800
+ #
2801
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#44
2289
2802
  class Regexp::Scanner::InvalidBackrefError < ::Regexp::Scanner::ValidationError
2290
2803
  # @return [InvalidBackrefError] a new instance of InvalidBackrefError
2291
2804
  #
2292
- # source://regexp_parser//lib/regexp_parser/scanner.rb#55
2805
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#45
2293
2806
  def initialize(what, reason); end
2294
2807
  end
2295
2808
 
2296
2809
  # Invalid group. Used for named groups.
2810
+ #
2811
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#29
2297
2812
  class Regexp::Scanner::InvalidGroupError < ::Regexp::Scanner::ValidationError
2298
2813
  # @return [InvalidGroupError] a new instance of InvalidGroupError
2299
2814
  #
2300
- # source://regexp_parser//lib/regexp_parser/scanner.rb#40
2815
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#30
2301
2816
  def initialize(what, reason); end
2302
2817
  end
2303
2818
 
2304
2819
  # Invalid groupOption. Used for inline options.
2305
2820
  # TODO: should become InvalidGroupOptionError in v3.0.0 for consistency
2821
+ #
2822
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#37
2306
2823
  class Regexp::Scanner::InvalidGroupOption < ::Regexp::Scanner::ValidationError
2307
2824
  # @return [InvalidGroupOption] a new instance of InvalidGroupOption
2308
2825
  #
2309
- # source://regexp_parser//lib/regexp_parser/scanner.rb#48
2826
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#38
2310
2827
  def initialize(option, text); end
2311
2828
  end
2312
2829
 
2313
2830
  # Invalid sequence format. Used for escape sequences, mainly.
2831
+ #
2832
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#22
2314
2833
  class Regexp::Scanner::InvalidSequenceError < ::Regexp::Scanner::ValidationError
2315
2834
  # @return [InvalidSequenceError] a new instance of InvalidSequenceError
2316
2835
  #
2317
- # source://regexp_parser//lib/regexp_parser/scanner.rb#33
2836
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#23
2318
2837
  def initialize(what = T.unsafe(nil), where = T.unsafe(nil)); end
2319
2838
  end
2320
2839
 
2321
2840
  # Unexpected end of pattern
2841
+ #
2842
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/premature_end_error.rb#3
2322
2843
  class Regexp::Scanner::PrematureEndError < ::Regexp::Scanner::ScannerError
2323
2844
  # @return [PrematureEndError] a new instance of PrematureEndError
2324
2845
  #
2325
- # source://regexp_parser//lib/regexp_parser/scanner.rb#26
2846
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/premature_end_error.rb#4
2326
2847
  def initialize(where = T.unsafe(nil)); end
2327
2848
  end
2328
2849
 
2329
2850
  # General scanner error (catch all)
2851
+ #
2852
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/scanner_error.rb#5
2330
2853
  class Regexp::Scanner::ScannerError < ::Regexp::Parser::Error; end
2331
2854
 
2332
2855
  # The POSIX class name was not recognized by the scanner.
2856
+ #
2857
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#58
2333
2858
  class Regexp::Scanner::UnknownPosixClassError < ::Regexp::Scanner::ValidationError
2334
2859
  # @return [UnknownPosixClassError] a new instance of UnknownPosixClassError
2335
2860
  #
2336
- # source://regexp_parser//lib/regexp_parser/scanner.rb#69
2337
- def initialize(text); end
2861
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#59
2862
+ def initialize(text, _); end
2338
2863
  end
2339
2864
 
2340
2865
  # The property name was not recognized by the scanner.
2866
+ #
2867
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#51
2341
2868
  class Regexp::Scanner::UnknownUnicodePropertyError < ::Regexp::Scanner::ValidationError
2342
2869
  # @return [UnknownUnicodePropertyError] a new instance of UnknownUnicodePropertyError
2343
2870
  #
2344
- # source://regexp_parser//lib/regexp_parser/scanner.rb#62
2345
- def initialize(name); end
2871
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#52
2872
+ def initialize(name, _); end
2346
2873
  end
2347
2874
 
2348
2875
  # Base for all scanner validation errors
2349
- class Regexp::Scanner::ValidationError < ::Regexp::Parser::Error
2350
- # @return [ValidationError] a new instance of ValidationError
2351
- #
2352
- # source://regexp_parser//lib/regexp_parser/scanner.rb#19
2353
- def initialize(reason); end
2876
+ #
2877
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#3
2878
+ class Regexp::Scanner::ValidationError < ::Regexp::Scanner::ScannerError
2879
+ class << self
2880
+ # Centralizes and unifies the handling of validation related errors.
2881
+ #
2882
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#5
2883
+ def for(type, problem, reason = T.unsafe(nil)); end
2884
+
2885
+ # source://regexp_parser//lib/regexp_parser/scanner/errors/validation_error.rb#9
2886
+ def types; end
2887
+ end
2354
2888
  end
2355
2889
 
2356
2890
  # After loading all the tokens the map is full. Extract all tokens and types
2357
2891
  # into the All and Types constants.
2892
+ #
2893
+ # source://regexp_parser//lib/regexp_parser/syntax.rb#3
2358
2894
  module Regexp::Syntax
2359
2895
  private
2360
2896
 
2361
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#62
2897
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#61
2362
2898
  def comparable(name); end
2363
2899
 
2364
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#45
2900
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#44
2365
2901
  def const_missing(const_name); end
2366
2902
 
2367
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#52
2903
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#51
2368
2904
  def fallback_version_class(version); end
2369
2905
 
2370
2906
  # Returns the syntax specification class for the given syntax
@@ -2376,7 +2912,7 @@ module Regexp::Syntax
2376
2912
  # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#26
2377
2913
  def new(name); end
2378
2914
 
2379
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#58
2915
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#57
2380
2916
  def specified_versions; end
2381
2917
 
2382
2918
  # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#32
@@ -2385,17 +2921,14 @@ module Regexp::Syntax
2385
2921
  # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#36
2386
2922
  def version_class(version); end
2387
2923
 
2388
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#67
2389
- def warn_if_future_version(const_name); end
2390
-
2391
2924
  class << self
2392
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#62
2925
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#61
2393
2926
  def comparable(name); end
2394
2927
 
2395
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#45
2928
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#44
2396
2929
  def const_missing(const_name); end
2397
2930
 
2398
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#52
2931
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#51
2399
2932
  def fallback_version_class(version); end
2400
2933
 
2401
2934
  # Returns the syntax specification class for the given syntax
@@ -2407,7 +2940,7 @@ module Regexp::Syntax
2407
2940
  # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#26
2408
2941
  def new(name); end
2409
2942
 
2410
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#58
2943
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#57
2411
2944
  def specified_versions; end
2412
2945
 
2413
2946
  # @return [Boolean]
@@ -2417,15 +2950,14 @@ module Regexp::Syntax
2417
2950
 
2418
2951
  # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#36
2419
2952
  def version_class(version); end
2420
-
2421
- # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#67
2422
- def warn_if_future_version(const_name); end
2423
2953
  end
2424
2954
  end
2425
2955
 
2426
2956
  # A syntax that always returns true, passing all tokens as implemented. This
2427
2957
  # is useful during development, testing, and should be useful for some types
2428
2958
  # of transformations as well.
2959
+ #
2960
+ # source://regexp_parser//lib/regexp_parser/syntax/any.rb#5
2429
2961
  class Regexp::Syntax::Any < ::Regexp::Syntax::Base
2430
2962
  class << self
2431
2963
  # @return [Boolean]
@@ -2436,6 +2968,8 @@ class Regexp::Syntax::Any < ::Regexp::Syntax::Base
2436
2968
  end
2437
2969
 
2438
2970
  # A lookup map of supported types and tokens in a given syntax
2971
+ #
2972
+ # source://regexp_parser//lib/regexp_parser/syntax/base.rb#9
2439
2973
  class Regexp::Syntax::Base
2440
2974
  include ::Regexp::Syntax::Token
2441
2975
 
@@ -2520,6 +3054,10 @@ class Regexp::Syntax::Base
2520
3054
  end
2521
3055
  end
2522
3056
 
3057
+ # source://regexp_parser//lib/regexp_parser/syntax/versions.rb#8
3058
+ Regexp::Syntax::CURRENT = Regexp::Syntax::V3_2_0
3059
+
3060
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#6
2523
3061
  class Regexp::Syntax::InvalidVersionNameError < ::Regexp::Syntax::SyntaxError
2524
3062
  # @return [InvalidVersionNameError] a new instance of InvalidVersionNameError
2525
3063
  #
@@ -2527,6 +3065,7 @@ class Regexp::Syntax::InvalidVersionNameError < ::Regexp::Syntax::SyntaxError
2527
3065
  def initialize(name); end
2528
3066
  end
2529
3067
 
3068
+ # source://regexp_parser//lib/regexp_parser/syntax/base.rb#2
2530
3069
  class Regexp::Syntax::NotImplementedError < ::Regexp::Syntax::SyntaxError
2531
3070
  # @return [NotImplementedError] a new instance of NotImplementedError
2532
3071
  #
@@ -2534,12 +3073,27 @@ class Regexp::Syntax::NotImplementedError < ::Regexp::Syntax::SyntaxError
2534
3073
  def initialize(syntax, type, token); end
2535
3074
  end
2536
3075
 
3076
+ # source://regexp_parser//lib/regexp_parser/syntax.rb#4
2537
3077
  class Regexp::Syntax::SyntaxError < ::Regexp::Parser::Error; end
3078
+
3079
+ # source://regexp_parser//lib/regexp_parser/syntax/token.rb#3
2538
3080
  module Regexp::Syntax::Token; end
2539
3081
 
2540
3082
  # source://regexp_parser//lib/regexp_parser/syntax/token.rb#42
2541
3083
  Regexp::Syntax::Token::All = T.let(T.unsafe(nil), Array)
2542
3084
 
3085
+ # alias for symmetry between Token::* and Expression::*
3086
+ #
3087
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#15
3088
+ module Regexp::Syntax::Token::Alternation; end
3089
+
3090
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#16
3091
+ Regexp::Syntax::Token::Alternation::All = T.let(T.unsafe(nil), Array)
3092
+
3093
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#17
3094
+ Regexp::Syntax::Token::Alternation::Type = T.let(T.unsafe(nil), Symbol)
3095
+
3096
+ # source://regexp_parser//lib/regexp_parser/syntax/token/anchor.rb#3
2543
3097
  module Regexp::Syntax::Token::Anchor; end
2544
3098
 
2545
3099
  # source://regexp_parser//lib/regexp_parser/syntax/token/anchor.rb#9
@@ -2560,6 +3114,7 @@ Regexp::Syntax::Token::Anchor::String = T.let(T.unsafe(nil), Array)
2560
3114
  # source://regexp_parser//lib/regexp_parser/syntax/token/anchor.rb#10
2561
3115
  Regexp::Syntax::Token::Anchor::Type = T.let(T.unsafe(nil), Symbol)
2562
3116
 
3117
+ # source://regexp_parser//lib/regexp_parser/syntax/token/assertion.rb#3
2563
3118
  module Regexp::Syntax::Token::Assertion; end
2564
3119
 
2565
3120
  # source://regexp_parser//lib/regexp_parser/syntax/token/assertion.rb#7
@@ -2574,6 +3129,12 @@ Regexp::Syntax::Token::Assertion::Lookbehind = T.let(T.unsafe(nil), Array)
2574
3129
  # source://regexp_parser//lib/regexp_parser/syntax/token/assertion.rb#8
2575
3130
  Regexp::Syntax::Token::Assertion::Type = T.let(T.unsafe(nil), Symbol)
2576
3131
 
3132
+ # alias for symmetry between token symbol and Expression class name
3133
+ #
3134
+ # source://regexp_parser//lib/regexp_parser/syntax/token/backreference.rb#31
3135
+ Regexp::Syntax::Token::Backref = Regexp::Syntax::Token::Backreference
3136
+
3137
+ # source://regexp_parser//lib/regexp_parser/syntax/token/backreference.rb#3
2577
3138
  module Regexp::Syntax::Token::Backreference; end
2578
3139
 
2579
3140
  # source://regexp_parser//lib/regexp_parser/syntax/token/backreference.rb#15
@@ -2603,6 +3164,7 @@ Regexp::Syntax::Token::Backreference::V1_8_6 = T.let(T.unsafe(nil), Array)
2603
3164
  # source://regexp_parser//lib/regexp_parser/syntax/token/backreference.rb#13
2604
3165
  Regexp::Syntax::Token::Backreference::V1_9_1 = T.let(T.unsafe(nil), Array)
2605
3166
 
3167
+ # source://regexp_parser//lib/regexp_parser/syntax/token/character_set.rb#3
2606
3168
  module Regexp::Syntax::Token::CharacterSet; end
2607
3169
 
2608
3170
  # source://regexp_parser//lib/regexp_parser/syntax/token/character_set.rb#7
@@ -2617,6 +3179,7 @@ Regexp::Syntax::Token::CharacterSet::Extended = T.let(T.unsafe(nil), Array)
2617
3179
  # source://regexp_parser//lib/regexp_parser/syntax/token/character_set.rb#8
2618
3180
  Regexp::Syntax::Token::CharacterSet::Type = T.let(T.unsafe(nil), Symbol)
2619
3181
 
3182
+ # source://regexp_parser//lib/regexp_parser/syntax/token/character_type.rb#3
2620
3183
  module Regexp::Syntax::Token::CharacterType; end
2621
3184
 
2622
3185
  # source://regexp_parser//lib/regexp_parser/syntax/token/character_type.rb#10
@@ -2637,6 +3200,7 @@ Regexp::Syntax::Token::CharacterType::Hex = T.let(T.unsafe(nil), Array)
2637
3200
  # source://regexp_parser//lib/regexp_parser/syntax/token/character_type.rb#11
2638
3201
  Regexp::Syntax::Token::CharacterType::Type = T.let(T.unsafe(nil), Symbol)
2639
3202
 
3203
+ # source://regexp_parser//lib/regexp_parser/syntax/token/conditional.rb#3
2640
3204
  module Regexp::Syntax::Token::Conditional; end
2641
3205
 
2642
3206
  # source://regexp_parser//lib/regexp_parser/syntax/token/conditional.rb#9
@@ -2654,36 +3218,42 @@ Regexp::Syntax::Token::Conditional::Separator = T.let(T.unsafe(nil), Array)
2654
3218
  # source://regexp_parser//lib/regexp_parser/syntax/token/conditional.rb#11
2655
3219
  Regexp::Syntax::Token::Conditional::Type = T.let(T.unsafe(nil), Symbol)
2656
3220
 
2657
- # TODO: unify naming with RE::EscapeSequence, one way or the other, in v3.0.0
3221
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#3
2658
3222
  module Regexp::Syntax::Token::Escape; end
2659
3223
 
2660
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#9
3224
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#8
2661
3225
  Regexp::Syntax::Token::Escape::ASCII = T.let(T.unsafe(nil), Array)
2662
3226
 
2663
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#25
3227
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#24
2664
3228
  Regexp::Syntax::Token::Escape::All = T.let(T.unsafe(nil), Array)
2665
3229
 
2666
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#5
3230
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#4
2667
3231
  Regexp::Syntax::Token::Escape::Basic = T.let(T.unsafe(nil), Array)
2668
3232
 
2669
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#7
3233
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#6
2670
3234
  Regexp::Syntax::Token::Escape::Control = T.let(T.unsafe(nil), Array)
2671
3235
 
2672
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#21
3236
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#20
2673
3237
  Regexp::Syntax::Token::Escape::Hex = T.let(T.unsafe(nil), Array)
2674
3238
 
2675
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#14
3239
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#13
2676
3240
  Regexp::Syntax::Token::Escape::Meta = T.let(T.unsafe(nil), Array)
2677
3241
 
2678
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#23
3242
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#22
2679
3243
  Regexp::Syntax::Token::Escape::Octal = T.let(T.unsafe(nil), Array)
2680
3244
 
2681
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#26
3245
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#25
2682
3246
  Regexp::Syntax::Token::Escape::Type = T.let(T.unsafe(nil), Symbol)
2683
3247
 
2684
- # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#12
3248
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#11
2685
3249
  Regexp::Syntax::Token::Escape::Unicode = T.let(T.unsafe(nil), Array)
2686
3250
 
3251
+ # alias for symmetry between Token::* and Expression::*
3252
+ #
3253
+ # source://regexp_parser//lib/regexp_parser/syntax/token/escape.rb#31
3254
+ Regexp::Syntax::Token::EscapeSequence = Regexp::Syntax::Token::Escape
3255
+
3256
+ # source://regexp_parser//lib/regexp_parser/syntax/token.rb#11
2687
3257
  module Regexp::Syntax::Token::FreeSpace; end
2688
3258
 
2689
3259
  # source://regexp_parser//lib/regexp_parser/syntax/token.rb#12
@@ -2692,6 +3262,7 @@ Regexp::Syntax::Token::FreeSpace::All = T.let(T.unsafe(nil), Array)
2692
3262
  # source://regexp_parser//lib/regexp_parser/syntax/token.rb#13
2693
3263
  Regexp::Syntax::Token::FreeSpace::Type = T.let(T.unsafe(nil), Symbol)
2694
3264
 
3265
+ # source://regexp_parser//lib/regexp_parser/syntax/token/group.rb#3
2695
3266
  module Regexp::Syntax::Token::Group; end
2696
3267
 
2697
3268
  # source://regexp_parser//lib/regexp_parser/syntax/token/group.rb#17
@@ -2724,6 +3295,7 @@ Regexp::Syntax::Token::Group::V1_8_6 = T.let(T.unsafe(nil), Array)
2724
3295
  # source://regexp_parser//lib/regexp_parser/syntax/token/group.rb#15
2725
3296
  Regexp::Syntax::Token::Group::V2_4_1 = T.let(T.unsafe(nil), Array)
2726
3297
 
3298
+ # source://regexp_parser//lib/regexp_parser/syntax/token/keep.rb#3
2727
3299
  module Regexp::Syntax::Token::Keep; end
2728
3300
 
2729
3301
  # source://regexp_parser//lib/regexp_parser/syntax/token/keep.rb#6
@@ -2735,6 +3307,7 @@ Regexp::Syntax::Token::Keep::Mark = T.let(T.unsafe(nil), Array)
2735
3307
  # source://regexp_parser//lib/regexp_parser/syntax/token/keep.rb#7
2736
3308
  Regexp::Syntax::Token::Keep::Type = T.let(T.unsafe(nil), Symbol)
2737
3309
 
3310
+ # source://regexp_parser//lib/regexp_parser/syntax/token.rb#6
2738
3311
  module Regexp::Syntax::Token::Literal; end
2739
3312
 
2740
3313
  # source://regexp_parser//lib/regexp_parser/syntax/token.rb#7
@@ -2746,20 +3319,25 @@ Regexp::Syntax::Token::Literal::Type = T.let(T.unsafe(nil), Symbol)
2746
3319
  # source://regexp_parser//lib/regexp_parser/syntax/token.rb#4
2747
3320
  Regexp::Syntax::Token::Map = T.let(T.unsafe(nil), Hash)
2748
3321
 
3322
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#3
2749
3323
  module Regexp::Syntax::Token::Meta; end
2750
3324
 
2751
- # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#7
3325
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#8
2752
3326
  Regexp::Syntax::Token::Meta::All = T.let(T.unsafe(nil), Array)
2753
3327
 
3328
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#5
3329
+ Regexp::Syntax::Token::Meta::Alternation = T.let(T.unsafe(nil), Array)
3330
+
2754
3331
  # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#4
2755
3332
  Regexp::Syntax::Token::Meta::Basic = T.let(T.unsafe(nil), Array)
2756
3333
 
2757
- # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#5
3334
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#6
2758
3335
  Regexp::Syntax::Token::Meta::Extended = T.let(T.unsafe(nil), Array)
2759
3336
 
2760
- # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#8
3337
+ # source://regexp_parser//lib/regexp_parser/syntax/token/meta.rb#9
2761
3338
  Regexp::Syntax::Token::Meta::Type = T.let(T.unsafe(nil), Symbol)
2762
3339
 
3340
+ # source://regexp_parser//lib/regexp_parser/syntax/token/posix_class.rb#3
2763
3341
  module Regexp::Syntax::Token::PosixClass; end
2764
3342
 
2765
3343
  # source://regexp_parser//lib/regexp_parser/syntax/token/posix_class.rb#9
@@ -2777,6 +3355,12 @@ Regexp::Syntax::Token::PosixClass::Standard = T.let(T.unsafe(nil), Array)
2777
3355
  # source://regexp_parser//lib/regexp_parser/syntax/token/posix_class.rb#10
2778
3356
  Regexp::Syntax::Token::PosixClass::Type = T.let(T.unsafe(nil), Symbol)
2779
3357
 
3358
+ # alias for symmetry between token symbol and Token module name
3359
+ #
3360
+ # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#718
3361
+ Regexp::Syntax::Token::Property = Regexp::Syntax::Token::UnicodeProperty
3362
+
3363
+ # source://regexp_parser//lib/regexp_parser/syntax/token/quantifier.rb#3
2780
3364
  module Regexp::Syntax::Token::Quantifier; end
2781
3365
 
2782
3366
  # source://regexp_parser//lib/regexp_parser/syntax/token/quantifier.rb#29
@@ -2809,7 +3393,14 @@ Regexp::Syntax::Token::Quantifier::Type = T.let(T.unsafe(nil), Symbol)
2809
3393
  # source://regexp_parser//lib/regexp_parser/syntax/token/quantifier.rb#28
2810
3394
  Regexp::Syntax::Token::Quantifier::V1_8_6 = T.let(T.unsafe(nil), Array)
2811
3395
 
3396
+ # alias for symmetry between token symbol and Token module name
3397
+ #
3398
+ # source://regexp_parser//lib/regexp_parser/syntax/token/character_set.rb#14
3399
+ Regexp::Syntax::Token::Set = Regexp::Syntax::Token::CharacterSet
3400
+
2812
3401
  # Type is the same as Backreference so keeping it here, for now.
3402
+ #
3403
+ # source://regexp_parser//lib/regexp_parser/syntax/token/backreference.rb#20
2813
3404
  module Regexp::Syntax::Token::SubexpressionCall; end
2814
3405
 
2815
3406
  # source://regexp_parser//lib/regexp_parser/syntax/token/backreference.rb#24
@@ -2824,6 +3415,7 @@ Regexp::Syntax::Token::SubexpressionCall::Number = T.let(T.unsafe(nil), Array)
2824
3415
  # source://regexp_parser//lib/regexp_parser/syntax/token.rb#43
2825
3416
  Regexp::Syntax::Token::Types = T.let(T.unsafe(nil), Array)
2826
3417
 
3418
+ # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#3
2827
3419
  module Regexp::Syntax::Token::UnicodeProperty; end
2828
3420
 
2829
3421
  # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#64
@@ -2865,6 +3457,7 @@ Regexp::Syntax::Token::UnicodeProperty::Age_V3_2_0 = T.let(T.unsafe(nil), Array)
2865
3457
  # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#708
2866
3458
  Regexp::Syntax::Token::UnicodeProperty::All = T.let(T.unsafe(nil), Array)
2867
3459
 
3460
+ # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#13
2868
3461
  module Regexp::Syntax::Token::UnicodeProperty::Category; end
2869
3462
 
2870
3463
  # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#36
@@ -3032,6 +3625,7 @@ Regexp::Syntax::Token::UnicodeProperty::V3_1_0 = T.let(T.unsafe(nil), Array)
3032
3625
  # source://regexp_parser//lib/regexp_parser/syntax/token/unicode_property.rb#706
3033
3626
  Regexp::Syntax::Token::UnicodeProperty::V3_2_0 = T.let(T.unsafe(nil), Array)
3034
3627
 
3628
+ # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#12
3035
3629
  class Regexp::Syntax::UnknownSyntaxNameError < ::Regexp::Syntax::SyntaxError
3036
3630
  # @return [UnknownSyntaxNameError] a new instance of UnknownSyntaxNameError
3037
3631
  #
@@ -3039,19 +3633,46 @@ class Regexp::Syntax::UnknownSyntaxNameError < ::Regexp::Syntax::SyntaxError
3039
3633
  def initialize(name); end
3040
3634
  end
3041
3635
 
3636
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/1.8.6.rb#1
3042
3637
  class Regexp::Syntax::V1_8_6 < ::Regexp::Syntax::Base; end
3638
+
3639
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/1.9.1.rb#1
3043
3640
  class Regexp::Syntax::V1_9_1 < ::Regexp::Syntax::V1_8_6; end
3641
+
3642
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/1.9.3.rb#1
3044
3643
  class Regexp::Syntax::V1_9_3 < ::Regexp::Syntax::V1_9_1; end
3644
+
3645
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.0.0.rb#1
3045
3646
  class Regexp::Syntax::V2_0_0 < ::Regexp::Syntax::V1_9_3; end
3647
+
3648
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.2.0.rb#1
3046
3649
  class Regexp::Syntax::V2_2_0 < ::Regexp::Syntax::V2_0_0; end
3650
+
3651
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.3.0.rb#1
3047
3652
  class Regexp::Syntax::V2_3_0 < ::Regexp::Syntax::V2_2_0; end
3653
+
3654
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.4.0.rb#1
3048
3655
  class Regexp::Syntax::V2_4_0 < ::Regexp::Syntax::V2_3_0; end
3656
+
3657
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.4.1.rb#1
3049
3658
  class Regexp::Syntax::V2_4_1 < ::Regexp::Syntax::V2_4_0; end
3659
+
3660
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.5.0.rb#1
3050
3661
  class Regexp::Syntax::V2_5_0 < ::Regexp::Syntax::V2_4_1; end
3662
+
3663
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.6.0.rb#1
3051
3664
  class Regexp::Syntax::V2_6_0 < ::Regexp::Syntax::V2_5_0; end
3665
+
3666
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.6.2.rb#1
3052
3667
  class Regexp::Syntax::V2_6_2 < ::Regexp::Syntax::V2_6_0; end
3668
+
3669
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/2.6.3.rb#1
3053
3670
  class Regexp::Syntax::V2_6_3 < ::Regexp::Syntax::V2_6_2; end
3671
+
3672
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/3.1.0.rb#1
3054
3673
  class Regexp::Syntax::V3_1_0 < ::Regexp::Syntax::V2_6_3; end
3674
+
3675
+ # source://regexp_parser//lib/regexp_parser/syntax/versions/3.2.0.rb#1
3055
3676
  class Regexp::Syntax::V3_2_0 < ::Regexp::Syntax::V3_1_0; end
3056
3677
 
3057
3678
  # source://regexp_parser//lib/regexp_parser/syntax/version_lookup.rb#4
@@ -3066,6 +3687,7 @@ Regexp::Syntax::VERSION_REGEXP = T.let(T.unsafe(nil), Regexp)
3066
3687
  # source://regexp_parser//lib/regexp_parser/token.rb#2
3067
3688
  Regexp::TOKEN_KEYS = T.let(T.unsafe(nil), Array)
3068
3689
 
3690
+ # source://regexp_parser//lib/regexp_parser/token.rb#13
3069
3691
  class Regexp::Token < ::Struct
3070
3692
  def conditional_level; end
3071
3693
  def conditional_level=(_); end