roast-ai 0.4.8 → 0.4.9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +1 -0
  4. data/Gemfile.lock +3 -3
  5. data/README.md +9 -5
  6. data/dsl/less_simple.rb +112 -0
  7. data/dsl/prototype.rb +17 -0
  8. data/dsl/simple.rb +5 -7
  9. data/dsl/step_communication.rb +18 -0
  10. data/examples/grading/README.md +46 -0
  11. data/examples/grading/analyze_coverage/prompt.md +52 -0
  12. data/examples/grading/calculate_final_grade.rb +64 -0
  13. data/examples/grading/format_result.rb +61 -0
  14. data/examples/grading/generate_grades/prompt.md +105 -0
  15. data/examples/grading/generate_recommendations/output.txt +17 -0
  16. data/examples/grading/generate_recommendations/prompt.md +60 -0
  17. data/examples/grading/read_dependencies/prompt.md +15 -0
  18. data/examples/grading/verify_mocks_and_stubs/prompt.md +12 -0
  19. data/examples/grading/verify_test_helpers/prompt.md +53 -0
  20. data/examples/grading/workflow.md +5 -0
  21. data/examples/grading/workflow.yml +28 -0
  22. data/lib/roast/dsl/cog/config.rb +31 -0
  23. data/lib/roast/dsl/cog/stack.rb +21 -0
  24. data/lib/roast/dsl/cog/store.rb +26 -0
  25. data/lib/roast/dsl/cog.rb +70 -0
  26. data/lib/roast/dsl/cog_execution_context.rb +29 -0
  27. data/lib/roast/dsl/cogs/cmd.rb +55 -0
  28. data/lib/roast/dsl/cogs/graph.rb +53 -0
  29. data/lib/roast/dsl/cogs.rb +65 -0
  30. data/lib/roast/dsl/config_context.rb +54 -0
  31. data/lib/roast/dsl/executor.rb +62 -7
  32. data/lib/roast/dsl/workflow_execution_context.rb +47 -0
  33. data/lib/roast/error.rb +7 -0
  34. data/lib/roast/errors.rb +3 -3
  35. data/lib/roast/graph/edge.rb +25 -0
  36. data/lib/roast/graph/node.rb +40 -0
  37. data/lib/roast/graph/quantum_edge.rb +27 -0
  38. data/lib/roast/graph/threaded_exec.rb +93 -0
  39. data/lib/roast/graph.rb +233 -0
  40. data/lib/roast/resources/api_resource.rb +2 -2
  41. data/lib/roast/resources/url_resource.rb +2 -2
  42. data/lib/roast/tools/apply_diff.rb +1 -1
  43. data/lib/roast/tools/ask_user.rb +1 -1
  44. data/lib/roast/tools/bash.rb +1 -1
  45. data/lib/roast/tools/cmd.rb +2 -2
  46. data/lib/roast/tools/coding_agent.rb +2 -2
  47. data/lib/roast/tools/grep.rb +1 -1
  48. data/lib/roast/tools/read_file.rb +1 -1
  49. data/lib/roast/tools/search_file.rb +1 -1
  50. data/lib/roast/tools/swarm.rb +1 -1
  51. data/lib/roast/tools/update_files.rb +2 -2
  52. data/lib/roast/tools/write_file.rb +1 -1
  53. data/lib/roast/tools.rb +1 -1
  54. data/lib/roast/value_objects/api_token.rb +1 -1
  55. data/lib/roast/value_objects/uri_base.rb +1 -1
  56. data/lib/roast/value_objects/workflow_path.rb +1 -1
  57. data/lib/roast/version.rb +1 -1
  58. data/lib/roast/workflow/base_workflow.rb +38 -2
  59. data/lib/roast/workflow/command_executor.rb +1 -1
  60. data/lib/roast/workflow/configuration_loader.rb +1 -1
  61. data/lib/roast/workflow/error_handler.rb +1 -1
  62. data/lib/roast/workflow/step_executor_registry.rb +1 -1
  63. data/lib/roast/workflow/step_loader.rb +1 -1
  64. data/lib/roast/workflow/workflow_executor.rb +1 -1
  65. data/lib/roast.rb +1 -1
  66. data/sorbet/config +2 -0
  67. data/sorbet/rbi/annotations/.gitattributes +1 -0
  68. data/sorbet/rbi/annotations/activesupport.rbi +495 -0
  69. data/sorbet/rbi/annotations/faraday.rbi +17 -0
  70. data/sorbet/rbi/annotations/minitest.rbi +119 -0
  71. data/sorbet/rbi/annotations/mocha.rbi +34 -0
  72. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  73. data/sorbet/rbi/annotations/webmock.rbi +9 -0
  74. data/sorbet/rbi/gems/rbs-inline@0.12.0.rbi +2170 -0
  75. data/sorbet/rbi/gems/{rexml@3.4.1.rbi → rexml@3.4.2.rbi} +284 -239
  76. data/sorbet/rbi/shims/lib/roast/dsl/config_context.rbi +11 -0
  77. data/sorbet/rbi/shims/lib/roast/dsl/workflow_execution_context.rbi +11 -0
  78. data/sorbet/rbi/todo.rbi +7 -0
  79. metadata +46 -5
  80. data/package-lock.json +0 -6
  81. /data/sorbet/rbi/gems/{rack@2.2.17.rbi → rack@2.2.18.rbi} +0 -0
@@ -113,12 +113,15 @@ class REXML::Attribute
113
113
 
114
114
  # Returns a copy of this attribute
115
115
  #
116
- # source://rexml//lib/rexml/attribute.rb#164
116
+ # source://rexml//lib/rexml/attribute.rb#161
117
117
  def clone; end
118
118
 
119
119
  # source://rexml//lib/rexml/attribute.rb#132
120
120
  def doctype; end
121
121
 
122
+ # source://rexml//lib/rexml/attribute.rb#205
123
+ def document; end
124
+
122
125
  # The element to which this attribute belongs
123
126
  #
124
127
  # source://rexml//lib/rexml/attribute.rb#15
@@ -129,7 +132,7 @@ class REXML::Attribute
129
132
  #
130
133
  # Returns this attribute
131
134
  #
132
- # source://rexml//lib/rexml/attribute.rb#172
135
+ # source://rexml//lib/rexml/attribute.rb#169
133
136
  def element=(element); end
134
137
 
135
138
  # Creates (and returns) a hash from both the name and value
@@ -137,7 +140,7 @@ class REXML::Attribute
137
140
  # source://rexml//lib/rexml/attribute.rb#111
138
141
  def hash; end
139
142
 
140
- # source://rexml//lib/rexml/attribute.rb#198
143
+ # source://rexml//lib/rexml/attribute.rb#195
141
144
  def inspect; end
142
145
 
143
146
  # Returns the namespace URL, if defined, or nil otherwise
@@ -165,13 +168,13 @@ class REXML::Attribute
165
168
  # source://rexml//lib/rexml/attribute.rb#95
166
169
  def namespace(arg = T.unsafe(nil)); end
167
170
 
168
- # source://rexml//lib/rexml/attribute.rb#194
171
+ # source://rexml//lib/rexml/attribute.rb#191
169
172
  def node_type; end
170
173
 
171
174
  # The normalized value of this attribute. That is, the attribute with
172
175
  # entities intact.
173
176
  #
174
- # source://rexml//lib/rexml/attribute.rb#158
177
+ # source://rexml//lib/rexml/attribute.rb#155
175
178
  def normalized=(new_normalized); end
176
179
 
177
180
  # Returns the namespace of the attribute.
@@ -191,12 +194,12 @@ class REXML::Attribute
191
194
  #
192
195
  # This method is usually not called directly.
193
196
  #
194
- # source://rexml//lib/rexml/attribute.rb#185
197
+ # source://rexml//lib/rexml/attribute.rb#182
195
198
  def remove; end
196
199
 
197
200
  # Returns the attribute value, with entities replaced
198
201
  #
199
- # source://rexml//lib/rexml/attribute.rb#140
202
+ # source://rexml//lib/rexml/attribute.rb#137
200
203
  def to_s; end
201
204
 
202
205
  # Returns this attribute out as XML source, expanding the name
@@ -212,22 +215,22 @@ class REXML::Attribute
212
215
  # Returns the UNNORMALIZED value of this attribute. That is, entities
213
216
  # have been expanded to their values
214
217
  #
215
- # source://rexml//lib/rexml/attribute.rb#149
218
+ # source://rexml//lib/rexml/attribute.rb#146
216
219
  def value; end
217
220
 
218
221
  # Writes this attribute (EG, puts 'key="value"' to the output)
219
222
  #
220
- # source://rexml//lib/rexml/attribute.rb#190
223
+ # source://rexml//lib/rexml/attribute.rb#187
221
224
  def write(output, indent = T.unsafe(nil)); end
222
225
 
223
- # source://rexml//lib/rexml/attribute.rb#204
226
+ # source://rexml//lib/rexml/attribute.rb#201
224
227
  def xpath; end
225
228
  end
226
229
 
227
230
  # A class that defines the set of Attributes of an Element and provides
228
231
  # operations for accessing elements in that set.
229
232
  #
230
- # source://rexml//lib/rexml/element.rb#2137
233
+ # source://rexml//lib/rexml/element.rb#2131
231
234
  class REXML::Attributes < ::Hash
232
235
  # :call-seq:
233
236
  # new(element)
@@ -248,7 +251,7 @@ class REXML::Attributes < ::Hash
248
251
  #
249
252
  # @return [Attributes] a new instance of Attributes
250
253
  #
251
- # source://rexml//lib/rexml/element.rb#2156
254
+ # source://rexml//lib/rexml/element.rb#2150
252
255
  def initialize(element); end
253
256
 
254
257
  # :call-seq:
@@ -271,7 +274,7 @@ class REXML::Attributes < ::Hash
271
274
  # attrs.add(REXML::Attribute.new('baz', '3')) # => baz='3'
272
275
  # attrs.include?('baz') # => true
273
276
  #
274
- # source://rexml//lib/rexml/element.rb#2522
277
+ # source://rexml//lib/rexml/element.rb#2516
275
278
  def <<(attribute); end
276
279
 
277
280
  # :call-seq:
@@ -295,7 +298,7 @@ class REXML::Attributes < ::Hash
295
298
  #
296
299
  # Related: get_attribute (returns an \Attribute object).
297
300
  #
298
- # source://rexml//lib/rexml/element.rb#2181
301
+ # source://rexml//lib/rexml/element.rb#2175
299
302
  def [](name); end
300
303
 
301
304
  # :call-seq:
@@ -321,7 +324,7 @@ class REXML::Attributes < ::Hash
321
324
  # attrs['baz:att'] = nil
322
325
  # attrs.include?('baz:att') # => false
323
326
  #
324
- # source://rexml//lib/rexml/element.rb#2365
327
+ # source://rexml//lib/rexml/element.rb#2358
325
328
  def []=(name, value); end
326
329
 
327
330
  # :call-seq:
@@ -344,7 +347,7 @@ class REXML::Attributes < ::Hash
344
347
  # attrs.add(REXML::Attribute.new('baz', '3')) # => baz='3'
345
348
  # attrs.include?('baz') # => true
346
349
  #
347
- # source://rexml//lib/rexml/element.rb#2522
350
+ # source://rexml//lib/rexml/element.rb#2516
348
351
  def add(attribute); end
349
352
 
350
353
  # :call-seq:
@@ -375,7 +378,7 @@ class REXML::Attributes < ::Hash
375
378
  # attrs.delete(attr) # => <ele att='&lt;'/> # => <ele att='&lt;'/>
376
379
  # attrs.delete(attr) # => <ele att='&lt;'/> # => <ele/>
377
380
  #
378
- # source://rexml//lib/rexml/element.rb#2475
381
+ # source://rexml//lib/rexml/element.rb#2471
379
382
  def delete(attribute); end
380
383
 
381
384
  # :call-seq:
@@ -394,7 +397,7 @@ class REXML::Attributes < ::Hash
394
397
  # attrs = ele.attributes
395
398
  # attrs.delete_all('att') # => [att='&lt;']
396
399
  #
397
- # source://rexml//lib/rexml/element.rb#2544
400
+ # source://rexml//lib/rexml/element.rb#2538
398
401
  def delete_all(name); end
399
402
 
400
403
  # :call-seq:
@@ -419,7 +422,7 @@ class REXML::Attributes < ::Hash
419
422
  # ["bar:att", "2"]
420
423
  # ["att", "<"]
421
424
  #
422
- # source://rexml//lib/rexml/element.rb#2283
425
+ # source://rexml//lib/rexml/element.rb#2276
423
426
  def each; end
424
427
 
425
428
  # :call-seq:
@@ -444,7 +447,7 @@ class REXML::Attributes < ::Hash
444
447
  # [REXML::Attribute, bar:att='2']
445
448
  # [REXML::Attribute, att='&lt;']
446
449
  #
447
- # source://rexml//lib/rexml/element.rb#2250
450
+ # source://rexml//lib/rexml/element.rb#2243
448
451
  def each_attribute; end
449
452
 
450
453
  # :call-seq:
@@ -466,7 +469,7 @@ class REXML::Attributes < ::Hash
466
469
  # attrs.get_attribute('att') # => att='&lt;'
467
470
  # attrs.get_attribute('nosuch') # => nil
468
471
  #
469
- # source://rexml//lib/rexml/element.rb#2309
472
+ # source://rexml//lib/rexml/element.rb#2302
470
473
  def get_attribute(name); end
471
474
 
472
475
  # :call-seq:
@@ -486,7 +489,7 @@ class REXML::Attributes < ::Hash
486
489
  # attrs.get_attribute_ns('http://foo', 'att') # => foo:att='1'
487
490
  # attrs.get_attribute_ns('http://foo', 'nosuch') # => nil
488
491
  #
489
- # source://rexml//lib/rexml/element.rb#2570
492
+ # source://rexml//lib/rexml/element.rb#2564
490
493
  def get_attribute_ns(namespace, name); end
491
494
 
492
495
  # :call-seq:
@@ -503,7 +506,7 @@ class REXML::Attributes < ::Hash
503
506
  # ele = d.root.elements['//ele'] # => <a foo:att='1' bar:att='2' att='&lt;'/>
504
507
  # ele.attributes.length # => 3
505
508
  #
506
- # source://rexml//lib/rexml/element.rb#2221
509
+ # source://rexml//lib/rexml/element.rb#2214
507
510
  def length; end
508
511
 
509
512
  # :call-seq:
@@ -515,7 +518,7 @@ class REXML::Attributes < ::Hash
515
518
  # d = REXML::Document.new(xml_string)
516
519
  # d.root.attributes.namespaces # => {"xmlns"=>"foo", "x"=>"bar", "y"=>"twee"}
517
520
  #
518
- # source://rexml//lib/rexml/element.rb#2431
521
+ # source://rexml//lib/rexml/element.rb#2426
519
522
  def namespaces; end
520
523
 
521
524
  # :call-seq:
@@ -529,7 +532,7 @@ class REXML::Attributes < ::Hash
529
532
  # d = REXML::Document.new(xml_string)
530
533
  # d.root.attributes.prefixes # => ["x", "y"]
531
534
  #
532
- # source://rexml//lib/rexml/element.rb#2406
535
+ # source://rexml//lib/rexml/element.rb#2400
533
536
  def prefixes; end
534
537
 
535
538
  # :call-seq:
@@ -546,7 +549,7 @@ class REXML::Attributes < ::Hash
546
549
  # ele = d.root.elements['//ele'] # => <a foo:att='1' bar:att='2' att='&lt;'/>
547
550
  # ele.attributes.length # => 3
548
551
  #
549
- # source://rexml//lib/rexml/element.rb#2221
552
+ # source://rexml//lib/rexml/element.rb#2214
550
553
  def size; end
551
554
 
552
555
  # :call-seq:
@@ -565,7 +568,7 @@ class REXML::Attributes < ::Hash
565
568
  # attrs = ele.attributes.to_a # => [foo:att='1', bar:att='2', att='&lt;']
566
569
  # attrs.first.class # => REXML::Attribute
567
570
  #
568
- # source://rexml//lib/rexml/element.rb#2203
571
+ # source://rexml//lib/rexml/element.rb#2196
569
572
  def to_a; end
570
573
  end
571
574
 
@@ -648,7 +651,7 @@ class REXML::Child
648
651
 
649
652
  # This doesn't yet handle encodings
650
653
  #
651
- # source://rexml//lib/rexml/child.rb#91
654
+ # source://rexml//lib/rexml/child.rb#90
652
655
  def bytes; end
653
656
 
654
657
  # Returns:: the document this child belongs to, or nil if this child
@@ -794,20 +797,20 @@ module REXML::DClonable; end
794
797
  # This is an abstract class. You never use this directly; it serves as a
795
798
  # parent class for the specific declarations.
796
799
  #
797
- # source://rexml//lib/rexml/doctype.rb#242
800
+ # source://rexml//lib/rexml/doctype.rb#238
798
801
  class REXML::Declaration < ::REXML::Child
799
802
  # @return [Declaration] a new instance of Declaration
800
803
  #
801
- # source://rexml//lib/rexml/doctype.rb#243
804
+ # source://rexml//lib/rexml/doctype.rb#239
802
805
  def initialize(src); end
803
806
 
804
- # source://rexml//lib/rexml/doctype.rb#248
807
+ # source://rexml//lib/rexml/doctype.rb#244
805
808
  def to_s; end
806
809
 
807
810
  # == DEPRECATED
808
811
  # See REXML::Formatters
809
812
  #
810
- # source://rexml//lib/rexml/doctype.rb#255
813
+ # source://rexml//lib/rexml/doctype.rb#251
811
814
  def write(output, indent); end
812
815
  end
813
816
 
@@ -837,7 +840,7 @@ class REXML::DocType < ::REXML::Parent
837
840
  # source://rexml//lib/rexml/doctype.rb#80
838
841
  def initialize(first, parent = T.unsafe(nil)); end
839
842
 
840
- # source://rexml//lib/rexml/doctype.rb#185
843
+ # source://rexml//lib/rexml/doctype.rb#181
841
844
  def add(child); end
842
845
 
843
846
  # source://rexml//lib/rexml/doctype.rb#125
@@ -858,7 +861,7 @@ class REXML::DocType < ::REXML::Parent
858
861
  # source://rexml//lib/rexml/doctype.rb#66
859
862
  def entities; end
860
863
 
861
- # source://rexml//lib/rexml/doctype.rb#181
864
+ # source://rexml//lib/rexml/doctype.rb#177
862
865
  def entity(name); end
863
866
 
864
867
  # name is the name of the doctype
@@ -887,7 +890,7 @@ class REXML::DocType < ::REXML::Parent
887
890
  #
888
891
  # Method contributed by Henrik Martensson
889
892
  #
890
- # source://rexml//lib/rexml/doctype.rb#229
893
+ # source://rexml//lib/rexml/doctype.rb#225
891
894
  def notation(name); end
892
895
 
893
896
  # This method returns a list of notations that have been declared in the
@@ -896,7 +899,7 @@ class REXML::DocType < ::REXML::Parent
896
899
  #
897
900
  # Method contributed by Henrik Martensson
898
901
  #
899
- # source://rexml//lib/rexml/doctype.rb#221
902
+ # source://rexml//lib/rexml/doctype.rb#217
900
903
  def notations; end
901
904
 
902
905
  # This method retrieves the public identifier identifying the document's
@@ -904,14 +907,14 @@ class REXML::DocType < ::REXML::Parent
904
907
  #
905
908
  # Method contributed by Henrik Martensson
906
909
  #
907
- # source://rexml//lib/rexml/doctype.rb#195
910
+ # source://rexml//lib/rexml/doctype.rb#191
908
911
  def public; end
909
912
 
910
913
  # This method retrieves the system identifier identifying the document's DTD
911
914
  #
912
915
  # Method contributed by Henrik Martensson
913
916
  #
914
- # source://rexml//lib/rexml/doctype.rb#207
917
+ # source://rexml//lib/rexml/doctype.rb#203
915
918
  def system; end
916
919
 
917
920
  # output::
@@ -1223,8 +1226,8 @@ class REXML::Document < ::REXML::Element
1223
1226
  def version; end
1224
1227
 
1225
1228
  # :call-seq:
1226
- # doc.write(output=$stdout, indent=-1, transtive=false, ie_hack=false, encoding=nil)
1227
- # doc.write(options={:output => $stdout, :indent => -1, :transtive => false, :ie_hack => false, :encoding => nil})
1229
+ # doc.write(output=$stdout, indent=-1, transitive=false, ie_hack=false, encoding=nil)
1230
+ # doc.write(options={:output => $stdout, :indent => -1, :transitive => false, :ie_hack => false, :encoding => nil})
1228
1231
  #
1229
1232
  # Write the XML tree out, optionally with indent. This writes out the
1230
1233
  # entire XML document, including XML declarations, doctype declarations,
@@ -1299,9 +1302,27 @@ class REXML::Document < ::REXML::Element
1299
1302
 
1300
1303
  private
1301
1304
 
1302
- # source://rexml//lib/rexml/document.rb#451
1305
+ # source://rexml//lib/rexml/document.rb#465
1303
1306
  def build(source); end
1304
1307
 
1308
+ # New document level cache is created and available in this block.
1309
+ # This API is thread unsafe. Users can't change this document in this block.
1310
+ #
1311
+ # source://rexml//lib/rexml/document.rb#456
1312
+ def enable_cache; end
1313
+
1314
+ # Returns the value of attribute namespaces_cache.
1315
+ #
1316
+ # source://rexml//lib/rexml/document.rb#452
1317
+ def namespaces_cache; end
1318
+
1319
+ # Sets the attribute namespaces_cache
1320
+ #
1321
+ # @param value the value to set the attribute namespaces_cache to.
1322
+ #
1323
+ # source://rexml//lib/rexml/document.rb#452
1324
+ def namespaces_cache=(_arg0); end
1325
+
1305
1326
  class << self
1306
1327
  # Get the entity expansion limit. By default the limit is set to 10000.
1307
1328
  #
@@ -1682,7 +1703,7 @@ class REXML::Element < ::REXML::Parent
1682
1703
  # root[:attr] # => "value"
1683
1704
  # root[:nosuch] # => nil
1684
1705
  #
1685
- # source://rexml//lib/rexml/element.rb#1246
1706
+ # source://rexml//lib/rexml/element.rb#1238
1686
1707
  def [](name_or_index); end
1687
1708
 
1688
1709
  # :call-seq:
@@ -1711,7 +1732,7 @@ class REXML::Element < ::REXML::Parent
1711
1732
  # e.add_attribute(a) # => attr='VALUE'
1712
1733
  # e['attr'] # => "VALUE"
1713
1734
  #
1714
- # source://rexml//lib/rexml/element.rb#1345
1735
+ # source://rexml//lib/rexml/element.rb#1336
1715
1736
  def add_attribute(key, value = T.unsafe(nil)); end
1716
1737
 
1717
1738
  # :call-seq:
@@ -1737,7 +1758,7 @@ class REXML::Element < ::REXML::Parent
1737
1758
  # a = [['foo' => 'bar'], ['baz' => 'bat']]
1738
1759
  # e.add_attributes(a)
1739
1760
  #
1740
- # source://rexml//lib/rexml/element.rb#1376
1761
+ # source://rexml//lib/rexml/element.rb#1367
1741
1762
  def add_attributes(hash); end
1742
1763
 
1743
1764
  # :call-seq:
@@ -1774,7 +1795,7 @@ class REXML::Element < ::REXML::Parent
1774
1795
  # e0.add_element(e1, {'bat' => '0', 'bam' => '1'})
1775
1796
  # e0[1] # => <bar bat='0' bam='1'/>
1776
1797
  #
1777
- # source://rexml//lib/rexml/element.rb#732
1798
+ # source://rexml//lib/rexml/element.rb#725
1778
1799
  def add_element(element, attrs = T.unsafe(nil)); end
1779
1800
 
1780
1801
  # :call-seq:
@@ -1795,7 +1816,7 @@ class REXML::Element < ::REXML::Parent
1795
1816
  # e.add_namespace('baz', 'bat')
1796
1817
  # e.namespaces # => {"xmlns"=>"bar", "baz"=>"bat"}
1797
1818
  #
1798
- # source://rexml//lib/rexml/element.rb#655
1819
+ # source://rexml//lib/rexml/element.rb#648
1799
1820
  def add_namespace(prefix, uri = T.unsafe(nil)); end
1800
1821
 
1801
1822
  # :call-seq:
@@ -1837,7 +1858,7 @@ class REXML::Element < ::REXML::Parent
1837
1858
  # a.add_text(REXML::Text.new('baz'))
1838
1859
  # a.to_a # => ["foo", <b/>, "bar", "baz", "baz"]
1839
1860
  #
1840
- # source://rexml//lib/rexml/element.rb#1147
1861
+ # source://rexml//lib/rexml/element.rb#1139
1841
1862
  def add_text(text); end
1842
1863
 
1843
1864
  # :call-seq:
@@ -1869,7 +1890,7 @@ class REXML::Element < ::REXML::Parent
1869
1890
  # document.root.attribute("x") # => x='x'
1870
1891
  # document.root.attribute("x", "a") # => a:x='a:x'
1871
1892
  #
1872
- # source://rexml//lib/rexml/element.rb#1287
1893
+ # source://rexml//lib/rexml/element.rb#1279
1873
1894
  def attribute(name, namespace = T.unsafe(nil)); end
1874
1895
 
1875
1896
  # Mechanisms for accessing attributes and child elements of this
@@ -1894,7 +1915,7 @@ class REXML::Element < ::REXML::Parent
1894
1915
  # cds.frozen? # => true
1895
1916
  # cds.map {|cd| cd.class } # => [REXML::CData, REXML::CData]
1896
1917
  #
1897
- # source://rexml//lib/rexml/element.rb#1420
1918
+ # source://rexml//lib/rexml/element.rb#1411
1898
1919
  def cdatas; end
1899
1920
 
1900
1921
  # :call-seq:
@@ -1927,7 +1948,7 @@ class REXML::Element < ::REXML::Parent
1927
1948
  # cs.map {|c| c.class } # => [REXML::Comment, REXML::Comment]
1928
1949
  # cs.map {|c| c.to_s } # => ["foo", "bar"]
1929
1950
  #
1930
- # source://rexml//lib/rexml/element.rb#1441
1951
+ # source://rexml//lib/rexml/element.rb#1432
1931
1952
  def comments; end
1932
1953
 
1933
1954
  # The context holds information about the processing environment, such as
@@ -1953,7 +1974,7 @@ class REXML::Element < ::REXML::Parent
1953
1974
  # e.delete_attribute('bar') # => <bar/>
1954
1975
  # e.delete_attribute('bar') # => nil
1955
1976
  #
1956
- # source://rexml//lib/rexml/element.rb#1395
1977
+ # source://rexml//lib/rexml/element.rb#1386
1957
1978
  def delete_attribute(key); end
1958
1979
 
1959
1980
  # :call-seq:
@@ -1993,7 +2014,7 @@ class REXML::Element < ::REXML::Parent
1993
2014
  # a.delete_element('//c') # => <c/>
1994
2015
  # a.delete_element('//c') # => nil
1995
2016
  #
1996
- # source://rexml//lib/rexml/element.rb#778
2017
+ # source://rexml//lib/rexml/element.rb#771
1997
2018
  def delete_element(element); end
1998
2019
 
1999
2020
  # :call-seq:
@@ -2018,7 +2039,7 @@ class REXML::Element < ::REXML::Parent
2018
2039
  # d.root.delete_namespace('nosuch')
2019
2040
  # d.to_s # => "<a/>"
2020
2041
  #
2021
- # source://rexml//lib/rexml/element.rb#687
2042
+ # source://rexml//lib/rexml/element.rb#680
2022
2043
  def delete_namespace(namespace = T.unsafe(nil)); end
2023
2044
 
2024
2045
  # :call-seq:
@@ -2061,7 +2082,7 @@ class REXML::Element < ::REXML::Parent
2061
2082
  # <d> ... </>
2062
2083
  # <e/>
2063
2084
  #
2064
- # source://rexml//lib/rexml/element.rb#930
2085
+ # source://rexml//lib/rexml/element.rb#923
2065
2086
  def each_element(xpath = T.unsafe(nil), &block); end
2066
2087
 
2067
2088
  # :call-seq:
@@ -2113,7 +2134,7 @@ class REXML::Element < ::REXML::Parent
2113
2134
  #
2114
2135
  # <d id='1'/>
2115
2136
  #
2116
- # source://rexml//lib/rexml/element.rb#847
2137
+ # source://rexml//lib/rexml/element.rb#840
2117
2138
  def each_element_with_attribute(key, value = T.unsafe(nil), max = T.unsafe(nil), name = T.unsafe(nil), &block); end
2118
2139
 
2119
2140
  # :call-seq:
@@ -2163,7 +2184,7 @@ class REXML::Element < ::REXML::Parent
2163
2184
  #
2164
2185
  # <c> ... </>
2165
2186
  #
2166
- # source://rexml//lib/rexml/element.rb#904
2187
+ # source://rexml//lib/rexml/element.rb#897
2167
2188
  def each_element_with_text(text = T.unsafe(nil), max = T.unsafe(nil), name = T.unsafe(nil), &block); end
2168
2189
 
2169
2190
  # Mechanisms for accessing attributes and child elements of this
@@ -2187,7 +2208,7 @@ class REXML::Element < ::REXML::Parent
2187
2208
  # d = REXML::Document.new(xml_string)
2188
2209
  # d.root.get_elements('//a') # => [<a level='1'> ... </>, <a level='2'/>]
2189
2210
  #
2190
- # source://rexml//lib/rexml/element.rb#949
2211
+ # source://rexml//lib/rexml/element.rb#942
2191
2212
  def get_elements(xpath); end
2192
2213
 
2193
2214
  # :call-seq:
@@ -2207,7 +2228,7 @@ class REXML::Element < ::REXML::Parent
2207
2228
  #
2208
2229
  # d.root.get_text(1) # => "this is bold!"
2209
2230
  #
2210
- # source://rexml//lib/rexml/element.rb#1053
2231
+ # source://rexml//lib/rexml/element.rb#1045
2211
2232
  def get_text(path = T.unsafe(nil)); end
2212
2233
 
2213
2234
  # :call-seq:
@@ -2222,7 +2243,7 @@ class REXML::Element < ::REXML::Parent
2222
2243
  #
2223
2244
  # @return [Boolean]
2224
2245
  #
2225
- # source://rexml//lib/rexml/element.rb#1315
2246
+ # source://rexml//lib/rexml/element.rb#1306
2226
2247
  def has_attributes?; end
2227
2248
 
2228
2249
  # :call-seq:
@@ -2239,7 +2260,7 @@ class REXML::Element < ::REXML::Parent
2239
2260
  #
2240
2261
  # @return [Boolean]
2241
2262
  #
2242
- # source://rexml//lib/rexml/element.rb#794
2263
+ # source://rexml//lib/rexml/element.rb#787
2243
2264
  def has_elements?; end
2244
2265
 
2245
2266
  # :call-seq:
@@ -2256,7 +2277,7 @@ class REXML::Element < ::REXML::Parent
2256
2277
  #
2257
2278
  # @return [Boolean]
2258
2279
  #
2259
- # source://rexml//lib/rexml/element.rb#1002
2280
+ # source://rexml//lib/rexml/element.rb#995
2260
2281
  def has_text?; end
2261
2282
 
2262
2283
  # :call-seq:
@@ -2266,7 +2287,7 @@ class REXML::Element < ::REXML::Parent
2266
2287
  #
2267
2288
  # See {Element Context}[../doc/rexml/context_rdoc.html].
2268
2289
  #
2269
- # source://rexml//lib/rexml/element.rb#513
2290
+ # source://rexml//lib/rexml/element.rb#512
2270
2291
  def ignore_whitespace_nodes; end
2271
2292
 
2272
2293
  # :call-seq:
@@ -2310,7 +2331,7 @@ class REXML::Element < ::REXML::Parent
2310
2331
  # is.map {|i| i.class } # => [REXML::Instruction, REXML::Instruction]
2311
2332
  # is.map {|i| i.to_s } # => ["<?target0 foo?>", "<?target1 bar?>"]
2312
2333
  #
2313
- # source://rexml//lib/rexml/element.rb#1462
2334
+ # source://rexml//lib/rexml/element.rb#1453
2314
2335
  def instructions; end
2315
2336
 
2316
2337
  # :call-seq:
@@ -2333,7 +2354,7 @@ class REXML::Element < ::REXML::Parent
2333
2354
  # b.namespace('y') # => "2"
2334
2355
  # b.namespace('nosuch') # => nil
2335
2356
  #
2336
- # source://rexml//lib/rexml/element.rb#618
2357
+ # source://rexml//lib/rexml/element.rb#619
2337
2358
  def namespace(prefix = T.unsafe(nil)); end
2338
2359
 
2339
2360
  # :call-seq:
@@ -2355,7 +2376,7 @@ class REXML::Element < ::REXML::Parent
2355
2376
  # d.elements['//b'].namespaces # => {"x"=>"1", "y"=>"2"}
2356
2377
  # d.elements['//c'].namespaces # => {"x"=>"1", "y"=>"2", "z"=>"3"}
2357
2378
  #
2358
- # source://rexml//lib/rexml/element.rb#591
2379
+ # source://rexml//lib/rexml/element.rb#590
2359
2380
  def namespaces; end
2360
2381
 
2361
2382
  # :call-seq:
@@ -2368,7 +2389,7 @@ class REXML::Element < ::REXML::Parent
2368
2389
  # d.root.elements['b'].next_element #-> <c/>
2369
2390
  # d.root.elements['c'].next_element #-> nil
2370
2391
  #
2371
- # source://rexml//lib/rexml/element.rb#963
2392
+ # source://rexml//lib/rexml/element.rb#956
2372
2393
  def next_element; end
2373
2394
 
2374
2395
  # :call-seq:
@@ -2380,7 +2401,7 @@ class REXML::Element < ::REXML::Parent
2380
2401
  # a = d.root # => <a/>
2381
2402
  # a.node_type # => :element
2382
2403
  #
2383
- # source://rexml//lib/rexml/element.rb#1168
2404
+ # source://rexml//lib/rexml/element.rb#1160
2384
2405
  def node_type; end
2385
2406
 
2386
2407
  # :call-seq:
@@ -2402,7 +2423,7 @@ class REXML::Element < ::REXML::Parent
2402
2423
  # d.elements['//b'].prefixes # => ["x", "y"]
2403
2424
  # d.elements['//c'].prefixes # => ["x", "y", "z"]
2404
2425
  #
2405
- # source://rexml//lib/rexml/element.rb#565
2426
+ # source://rexml//lib/rexml/element.rb#564
2406
2427
  def prefixes; end
2407
2428
 
2408
2429
  # :call-seq:
@@ -2415,7 +2436,7 @@ class REXML::Element < ::REXML::Parent
2415
2436
  # d.root.elements['c'].previous_element #-> <b/>
2416
2437
  # d.root.elements['b'].previous_element #-> nil
2417
2438
  #
2418
- # source://rexml//lib/rexml/element.rb#979
2439
+ # source://rexml//lib/rexml/element.rb#972
2419
2440
  def previous_element; end
2420
2441
 
2421
2442
  # :call-seq:
@@ -2428,7 +2449,7 @@ class REXML::Element < ::REXML::Parent
2428
2449
  # The evaluation is tested against +expanded_name+, and so is namespace
2429
2450
  # sensitive.
2430
2451
  #
2431
- # source://rexml//lib/rexml/element.rb#533
2452
+ # source://rexml//lib/rexml/element.rb#532
2432
2453
  def raw; end
2433
2454
 
2434
2455
  # :call-seq:
@@ -2513,7 +2534,7 @@ class REXML::Element < ::REXML::Parent
2513
2534
  # Note also that the text note is retrieved by method get_text,
2514
2535
  # and so is always normalized text.
2515
2536
  #
2516
- # source://rexml//lib/rexml/element.rb#1030
2537
+ # source://rexml//lib/rexml/element.rb#1023
2517
2538
  def text(path = T.unsafe(nil)); end
2518
2539
 
2519
2540
  # :call-seq:
@@ -2541,7 +2562,7 @@ class REXML::Element < ::REXML::Parent
2541
2562
  #
2542
2563
  # d.root.text = nil #-> '<a><b/><c/></a>'
2543
2564
  #
2544
- # source://rexml//lib/rexml/element.rb#1089
2565
+ # source://rexml//lib/rexml/element.rb#1081
2545
2566
  def text=(text); end
2546
2567
 
2547
2568
  # :call-seq:
@@ -2556,7 +2577,7 @@ class REXML::Element < ::REXML::Parent
2556
2577
  # ts.map {|t| t.class } # => [REXML::Text, REXML::Text]
2557
2578
  # ts.map {|t| t.to_s } # => ["text", "more"]
2558
2579
  #
2559
- # source://rexml//lib/rexml/element.rb#1478
2580
+ # source://rexml//lib/rexml/element.rb#1469
2560
2581
  def texts; end
2561
2582
 
2562
2583
  # :call-seq:
@@ -2570,7 +2591,7 @@ class REXML::Element < ::REXML::Parent
2570
2591
  # The evaluation is tested against the element's +expanded_name+,
2571
2592
  # and so is namespace-sensitive.
2572
2593
  #
2573
- # source://rexml//lib/rexml/element.rb#490
2594
+ # source://rexml//lib/rexml/element.rb#489
2574
2595
  def whitespace; end
2575
2596
 
2576
2597
  # == DEPRECATED
@@ -2596,7 +2617,7 @@ class REXML::Element < ::REXML::Parent
2596
2617
  # doc.write( out ) #-> doc is written to the string 'out'
2597
2618
  # doc.write( $stdout ) #-> doc written to the console
2598
2619
  #
2599
- # source://rexml//lib/rexml/element.rb#1504
2620
+ # source://rexml//lib/rexml/element.rb#1495
2600
2621
  def write(output = T.unsafe(nil), indent = T.unsafe(nil), transitive = T.unsafe(nil), ie_hack = T.unsafe(nil)); end
2601
2622
 
2602
2623
  # :call-seq:
@@ -2619,25 +2640,28 @@ class REXML::Element < ::REXML::Parent
2619
2640
  # e = REXML::Element.new('foo')
2620
2641
  # e.xpath # => "foo"
2621
2642
  #
2622
- # source://rexml//lib/rexml/element.rb#1192
2643
+ # source://rexml//lib/rexml/element.rb#1184
2623
2644
  def xpath; end
2624
2645
 
2625
2646
  private
2626
2647
 
2627
- # source://rexml//lib/rexml/element.rb#1521
2648
+ # source://rexml//lib/rexml/element.rb#1519
2628
2649
  def __to_xpath_helper(node); end
2629
2650
 
2651
+ # source://rexml//lib/rexml/element.rb#1511
2652
+ def calculate_namespaces; end
2653
+
2630
2654
  # A private helper method
2631
2655
  #
2632
- # source://rexml//lib/rexml/element.rb#1536
2656
+ # source://rexml//lib/rexml/element.rb#1534
2633
2657
  def each_with_something(test, max = T.unsafe(nil), name = T.unsafe(nil)); end
2634
2658
  end
2635
2659
 
2636
- # source://rexml//lib/rexml/doctype.rb#261
2660
+ # source://rexml//lib/rexml/doctype.rb#257
2637
2661
  class REXML::ElementDecl < ::REXML::Declaration
2638
2662
  # @return [ElementDecl] a new instance of ElementDecl
2639
2663
  #
2640
- # source://rexml//lib/rexml/doctype.rb#262
2664
+ # source://rexml//lib/rexml/doctype.rb#258
2641
2665
  def initialize(src); end
2642
2666
  end
2643
2667
 
@@ -2683,7 +2707,7 @@ end
2683
2707
  # elements = d.root.elements
2684
2708
  # elements # => #<REXML::Elements @element=<bookstore> ... </>>
2685
2709
  #
2686
- # source://rexml//lib/rexml/element.rb#1591
2710
+ # source://rexml//lib/rexml/element.rb#1589
2687
2711
  class REXML::Elements
2688
2712
  include ::Enumerable
2689
2713
 
@@ -2700,7 +2724,7 @@ class REXML::Elements
2700
2724
  #
2701
2725
  # @return [Elements] a new instance of Elements
2702
2726
  #
2703
- # source://rexml//lib/rexml/element.rb#1604
2727
+ # source://rexml//lib/rexml/element.rb#1602
2704
2728
  def initialize(parent); end
2705
2729
 
2706
2730
  # :call-seq:
@@ -2765,7 +2789,7 @@ class REXML::Elements
2765
2789
  # element.parent # => <bookstore> ... </>
2766
2790
  # element.context # => {:raw=>:all}
2767
2791
  #
2768
- # source://rexml//lib/rexml/element.rb#1921
2792
+ # source://rexml//lib/rexml/element.rb#1915
2769
2793
  def <<(element = T.unsafe(nil)); end
2770
2794
 
2771
2795
  # :call-seq:
@@ -2821,7 +2845,7 @@ class REXML::Elements
2821
2845
  # eles[4, 'book'] # => <book category='web' cover='paperback'> ... </>
2822
2846
  # eles[5, 'book'] # => nil
2823
2847
  #
2824
- # source://rexml//lib/rexml/element.rb#1676
2848
+ # source://rexml//lib/rexml/element.rb#1674
2825
2849
  def [](index, name = T.unsafe(nil)); end
2826
2850
 
2827
2851
  # :call-seq:
@@ -2860,7 +2884,7 @@ class REXML::Elements
2860
2884
  # eles[50] = REXML::Text.new('bar') # => "bar"
2861
2885
  # eles.size # => 5
2862
2886
  #
2863
- # source://rexml//lib/rexml/element.rb#1731
2887
+ # source://rexml//lib/rexml/element.rb#1725
2864
2888
  def []=(index, element); end
2865
2889
 
2866
2890
  # :call-seq:
@@ -2925,7 +2949,7 @@ class REXML::Elements
2925
2949
  # element.parent # => <bookstore> ... </>
2926
2950
  # element.context # => {:raw=>:all}
2927
2951
  #
2928
- # source://rexml//lib/rexml/element.rb#1921
2952
+ # source://rexml//lib/rexml/element.rb#1915
2929
2953
  def add(element = T.unsafe(nil)); end
2930
2954
 
2931
2955
  # :call-seq:
@@ -2945,7 +2969,7 @@ class REXML::Elements
2945
2969
  # xpath = '//book [@category="web"]'
2946
2970
  # elements.collect(xpath) {|element| element.size } # => [17, 9]
2947
2971
  #
2948
- # source://rexml//lib/rexml/element.rb#1984
2972
+ # source://rexml//lib/rexml/element.rb#1978
2949
2973
  def collect(xpath = T.unsafe(nil)); end
2950
2974
 
2951
2975
  # :call-seq:
@@ -2989,7 +3013,7 @@ class REXML::Elements
2989
3013
  # elements.delete('//book [@category="children"]') # => <book category='children'> ... </>
2990
3014
  # elements.delete('//nosuch') # => nil
2991
3015
  #
2992
- # source://rexml//lib/rexml/element.rb#1821
3016
+ # source://rexml//lib/rexml/element.rb#1815
2993
3017
  def delete(element); end
2994
3018
 
2995
3019
  # :call-seq:
@@ -3009,7 +3033,7 @@ class REXML::Elements
3009
3033
  # elements.size # => 0
3010
3034
  # elements.delete_all('//book') # => []
3011
3035
  #
3012
- # source://rexml//lib/rexml/element.rb#1847
3036
+ # source://rexml//lib/rexml/element.rb#1841
3013
3037
  def delete_all(xpath); end
3014
3038
 
3015
3039
  # :call-seq:
@@ -3040,7 +3064,7 @@ class REXML::Elements
3040
3064
  # <book category='web'> ... </>
3041
3065
  # <book category='web' cover='paperback'> ... </>
3042
3066
  #
3043
- # source://rexml//lib/rexml/element.rb#1963
3067
+ # source://rexml//lib/rexml/element.rb#1957
3044
3068
  def each(xpath = T.unsafe(nil)); end
3045
3069
 
3046
3070
  # :call-seq:
@@ -3055,7 +3079,7 @@ class REXML::Elements
3055
3079
  #
3056
3080
  # @return [Boolean]
3057
3081
  #
3058
- # source://rexml//lib/rexml/element.rb#1751
3082
+ # source://rexml//lib/rexml/element.rb#1745
3059
3083
  def empty?; end
3060
3084
 
3061
3085
  # :call-seq:
@@ -3072,7 +3096,7 @@ class REXML::Elements
3072
3096
  # elements.index(ele_4) # => 3
3073
3097
  # elements.index(ele_3) # => -1
3074
3098
  #
3075
- # source://rexml//lib/rexml/element.rb#1769
3099
+ # source://rexml//lib/rexml/element.rb#1763
3076
3100
  def index(element); end
3077
3101
 
3078
3102
  # :call-seq:
@@ -3152,7 +3176,7 @@ class REXML::Elements
3152
3176
  # total += element.size
3153
3177
  # end # => 26
3154
3178
  #
3155
- # source://rexml//lib/rexml/element.rb#2069
3179
+ # source://rexml//lib/rexml/element.rb#2063
3156
3180
  def inject(xpath = T.unsafe(nil), initial = T.unsafe(nil)); end
3157
3181
 
3158
3182
  # :call-seq:
@@ -3166,7 +3190,7 @@ class REXML::Elements
3166
3190
  # elements = REXML::Elements.new(d.root)
3167
3191
  # elements.parent == d.root # => true
3168
3192
  #
3169
- # source://rexml//lib/rexml/element.rb#1619
3193
+ # source://rexml//lib/rexml/element.rb#1617
3170
3194
  def parent; end
3171
3195
 
3172
3196
  # :call-seq:
@@ -3178,7 +3202,7 @@ class REXML::Elements
3178
3202
  # d.root.elements.size # => 3 # Three elements.
3179
3203
  # d.root.size # => 6 # Three elements plus three text nodes..
3180
3204
  #
3181
- # source://rexml//lib/rexml/element.rb#2093
3205
+ # source://rexml//lib/rexml/element.rb#2087
3182
3206
  def size; end
3183
3207
 
3184
3208
  # :call-seq:
@@ -3199,23 +3223,23 @@ class REXML::Elements
3199
3223
  #
3200
3224
  # elements.to_a('//c') # => [<c/>]
3201
3225
  #
3202
- # source://rexml//lib/rexml/element.rb#2117
3226
+ # source://rexml//lib/rexml/element.rb#2111
3203
3227
  def to_a(xpath = T.unsafe(nil)); end
3204
3228
 
3205
3229
  private
3206
3230
 
3207
3231
  # Private helper class. Removes quotes from quoted strings
3208
3232
  #
3209
- # source://rexml//lib/rexml/element.rb#2125
3233
+ # source://rexml//lib/rexml/element.rb#2119
3210
3234
  def literalize(name); end
3211
3235
  end
3212
3236
 
3213
3237
  # source://rexml//lib/rexml/encoding.rb#4
3214
3238
  module REXML::Encoding
3215
- # source://rexml//lib/rexml/encoding.rb#29
3239
+ # source://rexml//lib/rexml/encoding.rb#26
3216
3240
  def decode(string); end
3217
3241
 
3218
- # source://rexml//lib/rexml/encoding.rb#25
3242
+ # source://rexml//lib/rexml/encoding.rb#22
3219
3243
  def encode(string); end
3220
3244
 
3221
3245
  # ID ---> Encoding name
@@ -3228,7 +3252,7 @@ module REXML::Encoding
3228
3252
 
3229
3253
  private
3230
3254
 
3231
- # source://rexml//lib/rexml/encoding.rb#34
3255
+ # source://rexml//lib/rexml/encoding.rb#31
3232
3256
  def find_encoding(name); end
3233
3257
  end
3234
3258
 
@@ -3321,17 +3345,17 @@ class REXML::Entity < ::REXML::Child
3321
3345
  end
3322
3346
  end
3323
3347
 
3324
- # source://rexml//lib/rexml/doctype.rb#267
3348
+ # source://rexml//lib/rexml/doctype.rb#263
3325
3349
  class REXML::ExternalEntity < ::REXML::Child
3326
3350
  # @return [ExternalEntity] a new instance of ExternalEntity
3327
3351
  #
3328
- # source://rexml//lib/rexml/doctype.rb#268
3352
+ # source://rexml//lib/rexml/doctype.rb#264
3329
3353
  def initialize(src); end
3330
3354
 
3331
- # source://rexml//lib/rexml/doctype.rb#272
3355
+ # source://rexml//lib/rexml/doctype.rb#268
3332
3356
  def to_s; end
3333
3357
 
3334
- # source://rexml//lib/rexml/doctype.rb#275
3358
+ # source://rexml//lib/rexml/doctype.rb#271
3335
3359
  def write(output, indent); end
3336
3360
  end
3337
3361
 
@@ -3675,48 +3699,48 @@ end
3675
3699
  # A Source that wraps an IO. See the Source class for method
3676
3700
  # documentation
3677
3701
  #
3678
- # source://rexml//lib/rexml/source.rb#215
3702
+ # source://rexml//lib/rexml/source.rb#220
3679
3703
  class REXML::IOSource < ::REXML::Source
3680
3704
  # block_size has been deprecated
3681
3705
  #
3682
3706
  # @return [IOSource] a new instance of IOSource
3683
3707
  #
3684
- # source://rexml//lib/rexml/source.rb#219
3708
+ # source://rexml//lib/rexml/source.rb#224
3685
3709
  def initialize(arg, block_size = T.unsafe(nil), encoding = T.unsafe(nil)); end
3686
3710
 
3687
3711
  # @return the current line in the source
3688
3712
  #
3689
- # source://rexml//lib/rexml/source.rb#324
3713
+ # source://rexml//lib/rexml/source.rb#329
3690
3714
  def current_line; end
3691
3715
 
3692
3716
  # @return [Boolean]
3693
3717
  #
3694
- # source://rexml//lib/rexml/source.rb#319
3718
+ # source://rexml//lib/rexml/source.rb#324
3695
3719
  def empty?; end
3696
3720
 
3697
- # source://rexml//lib/rexml/source.rb#279
3721
+ # source://rexml//lib/rexml/source.rb#284
3698
3722
  def ensure_buffer; end
3699
3723
 
3700
- # source://rexml//lib/rexml/source.rb#283
3724
+ # source://rexml//lib/rexml/source.rb#288
3701
3725
  def match(pattern, cons = T.unsafe(nil)); end
3702
3726
 
3703
3727
  # @return [Boolean]
3704
3728
  #
3705
- # source://rexml//lib/rexml/source.rb#302
3729
+ # source://rexml//lib/rexml/source.rb#307
3706
3730
  def match?(pattern, cons = T.unsafe(nil)); end
3707
3731
 
3708
- # source://rexml//lib/rexml/source.rb#240
3732
+ # source://rexml//lib/rexml/source.rb#245
3709
3733
  def read(term = T.unsafe(nil), min_bytes = T.unsafe(nil)); end
3710
3734
 
3711
- # source://rexml//lib/rexml/source.rb#261
3735
+ # source://rexml//lib/rexml/source.rb#266
3712
3736
  def read_until(term); end
3713
3737
 
3714
3738
  private
3715
3739
 
3716
- # source://rexml//lib/rexml/source.rb#371
3740
+ # source://rexml//lib/rexml/source.rb#376
3717
3741
  def encoding_updated; end
3718
3742
 
3719
- # source://rexml//lib/rexml/source.rb#346
3743
+ # source://rexml//lib/rexml/source.rb#351
3720
3744
  def readline(term = T.unsafe(nil)); end
3721
3745
  end
3722
3746
 
@@ -3988,48 +4012,48 @@ module REXML::Node
3988
4012
  def to_s(indent = T.unsafe(nil)); end
3989
4013
  end
3990
4014
 
3991
- # source://rexml//lib/rexml/doctype.rb#280
4015
+ # source://rexml//lib/rexml/doctype.rb#276
3992
4016
  class REXML::NotationDecl < ::REXML::Child
3993
4017
  # @return [NotationDecl] a new instance of NotationDecl
3994
4018
  #
3995
- # source://rexml//lib/rexml/doctype.rb#282
4019
+ # source://rexml//lib/rexml/doctype.rb#278
3996
4020
  def initialize(name, middle, pub, sys); end
3997
4021
 
3998
4022
  # This method retrieves the name of the notation.
3999
4023
  #
4000
4024
  # Method contributed by Henrik Martensson
4001
4025
  #
4002
- # source://rexml//lib/rexml/doctype.rb#307
4026
+ # source://rexml//lib/rexml/doctype.rb#302
4003
4027
  def name; end
4004
4028
 
4005
4029
  # Returns the value of attribute public.
4006
4030
  #
4007
- # source://rexml//lib/rexml/doctype.rb#281
4031
+ # source://rexml//lib/rexml/doctype.rb#277
4008
4032
  def public; end
4009
4033
 
4010
4034
  # Sets the attribute public
4011
4035
  #
4012
4036
  # @param value the value to set the attribute public to.
4013
4037
  #
4014
- # source://rexml//lib/rexml/doctype.rb#281
4038
+ # source://rexml//lib/rexml/doctype.rb#277
4015
4039
  def public=(_arg0); end
4016
4040
 
4017
4041
  # Returns the value of attribute system.
4018
4042
  #
4019
- # source://rexml//lib/rexml/doctype.rb#281
4043
+ # source://rexml//lib/rexml/doctype.rb#277
4020
4044
  def system; end
4021
4045
 
4022
4046
  # Sets the attribute system
4023
4047
  #
4024
4048
  # @param value the value to set the attribute system to.
4025
4049
  #
4026
- # source://rexml//lib/rexml/doctype.rb#281
4050
+ # source://rexml//lib/rexml/doctype.rb#277
4027
4051
  def system=(_arg0); end
4028
4052
 
4029
- # source://rexml//lib/rexml/doctype.rb#290
4053
+ # source://rexml//lib/rexml/doctype.rb#286
4030
4054
  def to_s; end
4031
4055
 
4032
- # source://rexml//lib/rexml/doctype.rb#300
4056
+ # source://rexml//lib/rexml/doctype.rb#295
4033
4057
  def write(output, indent = T.unsafe(nil)); end
4034
4058
  end
4035
4059
 
@@ -4267,51 +4291,51 @@ end
4267
4291
  class REXML::Parsers::BaseParser
4268
4292
  # @return [BaseParser] a new instance of BaseParser
4269
4293
  #
4270
- # source://rexml//lib/rexml/parsers/baseparser.rb#163
4294
+ # source://rexml//lib/rexml/parsers/baseparser.rb#164
4271
4295
  def initialize(source); end
4272
4296
 
4273
- # source://rexml//lib/rexml/parsers/baseparser.rb#173
4297
+ # source://rexml//lib/rexml/parsers/baseparser.rb#175
4274
4298
  def add_listener(listener); end
4275
4299
 
4276
4300
  # Returns true if there are no more events
4277
4301
  #
4278
4302
  # @return [Boolean]
4279
4303
  #
4280
- # source://rexml//lib/rexml/parsers/baseparser.rb#208
4304
+ # source://rexml//lib/rexml/parsers/baseparser.rb#210
4281
4305
  def empty?; end
4282
4306
 
4283
- # source://rexml//lib/rexml/parsers/baseparser.rb#543
4307
+ # source://rexml//lib/rexml/parsers/baseparser.rb#532
4284
4308
  def entity(reference, entities); end
4285
4309
 
4286
4310
  # Returns the value of attribute entity_expansion_count.
4287
4311
  #
4288
- # source://rexml//lib/rexml/parsers/baseparser.rb#178
4312
+ # source://rexml//lib/rexml/parsers/baseparser.rb#180
4289
4313
  def entity_expansion_count; end
4290
4314
 
4291
4315
  # Sets the attribute entity_expansion_limit
4292
4316
  #
4293
4317
  # @param value the value to set the attribute entity_expansion_limit to.
4294
4318
  #
4295
- # source://rexml//lib/rexml/parsers/baseparser.rb#179
4319
+ # source://rexml//lib/rexml/parsers/baseparser.rb#181
4296
4320
  def entity_expansion_limit=(_arg0); end
4297
4321
 
4298
4322
  # Sets the attribute entity_expansion_text_limit
4299
4323
  #
4300
4324
  # @param value the value to set the attribute entity_expansion_text_limit to.
4301
4325
  #
4302
- # source://rexml//lib/rexml/parsers/baseparser.rb#180
4326
+ # source://rexml//lib/rexml/parsers/baseparser.rb#182
4303
4327
  def entity_expansion_text_limit=(_arg0); end
4304
4328
 
4305
4329
  # Returns true if there are more events. Synonymous with !empty?
4306
4330
  #
4307
4331
  # @return [Boolean]
4308
4332
  #
4309
- # source://rexml//lib/rexml/parsers/baseparser.rb#213
4333
+ # source://rexml//lib/rexml/parsers/baseparser.rb#215
4310
4334
  def has_next?; end
4311
4335
 
4312
4336
  # Escapes all possible entities
4313
4337
  #
4314
- # source://rexml//lib/rexml/parsers/baseparser.rb#554
4338
+ # source://rexml//lib/rexml/parsers/baseparser.rb#543
4315
4339
  def normalize(input, entities = T.unsafe(nil), entity_filter = T.unsafe(nil)); end
4316
4340
 
4317
4341
  # Peek at the +depth+ event in the stack. The first element on the stack
@@ -4321,78 +4345,90 @@ class REXML::Parsers::BaseParser
4321
4345
  # event, so you can effectively pre-parse the entire document (pull the
4322
4346
  # entire thing into memory) using this method.
4323
4347
  #
4324
- # source://rexml//lib/rexml/parsers/baseparser.rb#229
4348
+ # source://rexml//lib/rexml/parsers/baseparser.rb#231
4325
4349
  def peek(depth = T.unsafe(nil)); end
4326
4350
 
4327
- # source://rexml//lib/rexml/parsers/baseparser.rb#198
4351
+ # source://rexml//lib/rexml/parsers/baseparser.rb#200
4328
4352
  def position; end
4329
4353
 
4330
4354
  # Returns the next event. This is a +PullEvent+ object.
4331
4355
  #
4332
- # source://rexml//lib/rexml/parsers/baseparser.rb#244
4356
+ # source://rexml//lib/rexml/parsers/baseparser.rb#246
4333
4357
  def pull; end
4334
4358
 
4335
- # source://rexml//lib/rexml/parsers/baseparser.rb#187
4359
+ # source://rexml//lib/rexml/parsers/baseparser.rb#189
4336
4360
  def reset; end
4337
4361
 
4338
4362
  # Returns the value of attribute source.
4339
4363
  #
4340
- # source://rexml//lib/rexml/parsers/baseparser.rb#177
4364
+ # source://rexml//lib/rexml/parsers/baseparser.rb#179
4341
4365
  def source; end
4342
4366
 
4343
- # source://rexml//lib/rexml/parsers/baseparser.rb#182
4367
+ # source://rexml//lib/rexml/parsers/baseparser.rb#184
4344
4368
  def stream=(source); end
4345
4369
 
4346
4370
  # Unescapes all possible entities
4347
4371
  #
4348
- # source://rexml//lib/rexml/parsers/baseparser.rb#570
4372
+ # source://rexml//lib/rexml/parsers/baseparser.rb#559
4349
4373
  def unnormalize(string, entities = T.unsafe(nil), filter = T.unsafe(nil)); end
4350
4374
 
4351
4375
  # Push an event back on the head of the stream. This method
4352
4376
  # has (theoretically) infinite depth.
4353
4377
  #
4354
- # source://rexml//lib/rexml/parsers/baseparser.rb#219
4378
+ # source://rexml//lib/rexml/parsers/baseparser.rb#221
4355
4379
  def unshift(token); end
4356
4380
 
4357
4381
  private
4358
4382
 
4359
- # source://rexml//lib/rexml/parsers/baseparser.rb#619
4383
+ # source://rexml//lib/rexml/parsers/baseparser.rb#608
4360
4384
  def add_namespace(prefix, uri); end
4361
4385
 
4362
4386
  # @return [Boolean]
4363
4387
  #
4364
- # source://rexml//lib/rexml/parsers/baseparser.rb#652
4388
+ # source://rexml//lib/rexml/parsers/baseparser.rb#641
4365
4389
  def need_source_encoding_update?(xml_declaration_encoding); end
4366
4390
 
4367
- # source://rexml//lib/rexml/parsers/baseparser.rb#791
4391
+ # source://rexml//lib/rexml/parsers/baseparser.rb#647
4392
+ def normalize_xml_declaration_encoding(xml_declaration_encoding); end
4393
+
4394
+ # source://rexml//lib/rexml/parsers/baseparser.rb#844
4395
+ def parse_attribute_value_with_equal(name); end
4396
+
4397
+ # source://rexml//lib/rexml/parsers/baseparser.rb#863
4368
4398
  def parse_attributes(prefixes); end
4369
4399
 
4370
- # source://rexml//lib/rexml/parsers/baseparser.rb#671
4400
+ # source://rexml//lib/rexml/parsers/baseparser.rb#664
4371
4401
  def parse_id(base_error_message, accept_external_id:, accept_public_id:); end
4372
4402
 
4373
- # source://rexml//lib/rexml/parsers/baseparser.rb#699
4403
+ # source://rexml//lib/rexml/parsers/baseparser.rb#692
4374
4404
  def parse_id_invalid_details(accept_external_id:, accept_public_id:); end
4375
4405
 
4376
- # source://rexml//lib/rexml/parsers/baseparser.rb#658
4406
+ # source://rexml//lib/rexml/parsers/baseparser.rb#651
4377
4407
  def parse_name(base_error_message); end
4378
4408
 
4379
- # source://rexml//lib/rexml/parsers/baseparser.rb#634
4409
+ # source://rexml//lib/rexml/parsers/baseparser.rb#623
4380
4410
  def pop_namespaces_restore; end
4381
4411
 
4382
- # source://rexml//lib/rexml/parsers/baseparser.rb#737
4412
+ # source://rexml//lib/rexml/parsers/baseparser.rb#730
4413
+ def process_comment; end
4414
+
4415
+ # source://rexml//lib/rexml/parsers/baseparser.rb#742
4383
4416
  def process_instruction; end
4384
4417
 
4385
- # source://rexml//lib/rexml/parsers/baseparser.rb#254
4418
+ # source://rexml//lib/rexml/parsers/baseparser.rb#256
4386
4419
  def pull_event; end
4387
4420
 
4388
- # source://rexml//lib/rexml/parsers/baseparser.rb#628
4421
+ # source://rexml//lib/rexml/parsers/baseparser.rb#617
4389
4422
  def push_namespaces_restore; end
4390
4423
 
4391
- # source://rexml//lib/rexml/parsers/baseparser.rb#645
4424
+ # source://rexml//lib/rexml/parsers/baseparser.rb#634
4392
4425
  def record_entity_expansion(delta = T.unsafe(nil)); end
4393
4426
 
4394
- # source://rexml//lib/rexml/parsers/baseparser.rb#777
4427
+ # source://rexml//lib/rexml/parsers/baseparser.rb#830
4395
4428
  def scan_quote; end
4429
+
4430
+ # source://rexml//lib/rexml/parsers/baseparser.rb#764
4431
+ def xml_declaration; end
4396
4432
  end
4397
4433
 
4398
4434
  # source://rexml//lib/rexml/parsers/baseparser.rb#130
@@ -4407,31 +4443,34 @@ REXML::Parsers::BaseParser::PUBLIC_ID = T.let(T.unsafe(nil), Regexp)
4407
4443
  # source://rexml//lib/rexml/parsers/baseparser.rb#143
4408
4444
  module REXML::Parsers::BaseParser::Private; end
4409
4445
 
4410
- # source://rexml//lib/rexml/parsers/baseparser.rb#147
4446
+ # source://rexml//lib/rexml/parsers/baseparser.rb#148
4411
4447
  REXML::Parsers::BaseParser::Private::ATTLISTDECL_END = T.let(T.unsafe(nil), Regexp)
4412
4448
 
4413
- # source://rexml//lib/rexml/parsers/baseparser.rb#152
4449
+ # source://rexml//lib/rexml/parsers/baseparser.rb#153
4414
4450
  REXML::Parsers::BaseParser::Private::CARRIAGE_RETURN_NEWLINE_PATTERN = T.let(T.unsafe(nil), Regexp)
4415
4451
 
4416
- # source://rexml//lib/rexml/parsers/baseparser.rb#153
4452
+ # source://rexml//lib/rexml/parsers/baseparser.rb#154
4417
4453
  REXML::Parsers::BaseParser::Private::CHARACTER_REFERENCES = T.let(T.unsafe(nil), Regexp)
4418
4454
 
4419
4455
  # source://rexml//lib/rexml/parsers/baseparser.rb#146
4420
4456
  REXML::Parsers::BaseParser::Private::CLOSE_PATTERN = T.let(T.unsafe(nil), Regexp)
4421
4457
 
4422
- # source://rexml//lib/rexml/parsers/baseparser.rb#154
4458
+ # source://rexml//lib/rexml/parsers/baseparser.rb#155
4423
4459
  REXML::Parsers::BaseParser::Private::DEFAULT_ENTITIES_PATTERNS = T.let(T.unsafe(nil), Hash)
4424
4460
 
4425
- # source://rexml//lib/rexml/parsers/baseparser.rb#151
4461
+ # source://rexml//lib/rexml/parsers/baseparser.rb#152
4426
4462
  REXML::Parsers::BaseParser::Private::ENTITYDECL_PATTERN = T.let(T.unsafe(nil), Regexp)
4427
4463
 
4428
- # source://rexml//lib/rexml/parsers/baseparser.rb#149
4464
+ # source://rexml//lib/rexml/parsers/baseparser.rb#147
4465
+ REXML::Parsers::BaseParser::Private::EQUAL_PATTERN = T.let(T.unsafe(nil), Regexp)
4466
+
4467
+ # source://rexml//lib/rexml/parsers/baseparser.rb#150
4429
4468
  REXML::Parsers::BaseParser::Private::GEDECL_PATTERN = T.let(T.unsafe(nil), String)
4430
4469
 
4431
- # source://rexml//lib/rexml/parsers/baseparser.rb#148
4470
+ # source://rexml//lib/rexml/parsers/baseparser.rb#149
4432
4471
  REXML::Parsers::BaseParser::Private::NAME_PATTERN = T.let(T.unsafe(nil), Regexp)
4433
4472
 
4434
- # source://rexml//lib/rexml/parsers/baseparser.rb#150
4473
+ # source://rexml//lib/rexml/parsers/baseparser.rb#151
4435
4474
  REXML::Parsers::BaseParser::Private::PEDECL_PATTERN = T.let(T.unsafe(nil), String)
4436
4475
 
4437
4476
  # source://rexml//lib/rexml/parsers/baseparser.rb#144
@@ -4440,7 +4479,7 @@ REXML::Parsers::BaseParser::Private::PEREFERENCE_PATTERN = T.let(T.unsafe(nil),
4440
4479
  # source://rexml//lib/rexml/parsers/baseparser.rb#145
4441
4480
  REXML::Parsers::BaseParser::Private::TAG_PATTERN = T.let(T.unsafe(nil), Regexp)
4442
4481
 
4443
- # source://rexml//lib/rexml/parsers/baseparser.rb#159
4482
+ # source://rexml//lib/rexml/parsers/baseparser.rb#160
4444
4483
  REXML::Parsers::BaseParser::Private::XML_PREFIXED_NAMESPACE = T.let(T.unsafe(nil), String)
4445
4484
 
4446
4485
  # source://rexml//lib/rexml/parsers/baseparser.rb#66
@@ -4686,28 +4725,28 @@ class REXML::Source
4686
4725
  # @param encoding if non-null, sets the encoding of the source to this
4687
4726
  # @return [Source] a new instance of Source
4688
4727
  #
4689
- # source://rexml//lib/rexml/source.rb#87
4728
+ # source://rexml//lib/rexml/source.rb#88
4690
4729
  def initialize(arg, encoding = T.unsafe(nil)); end
4691
4730
 
4692
4731
  # The current buffer (what we're going to read next)
4693
4732
  #
4694
- # source://rexml//lib/rexml/source.rb#100
4733
+ # source://rexml//lib/rexml/source.rb#101
4695
4734
  def buffer; end
4696
4735
 
4697
- # source://rexml//lib/rexml/source.rb#110
4736
+ # source://rexml//lib/rexml/source.rb#111
4698
4737
  def buffer_encoding=(encoding); end
4699
4738
 
4700
4739
  # @return the current line in the source
4701
4740
  #
4702
- # source://rexml//lib/rexml/source.rb#175
4741
+ # source://rexml//lib/rexml/source.rb#180
4703
4742
  def current_line; end
4704
4743
 
4705
- # source://rexml//lib/rexml/source.rb#104
4744
+ # source://rexml//lib/rexml/source.rb#105
4706
4745
  def drop_parsed_content; end
4707
4746
 
4708
4747
  # @return [Boolean] true if the Source is exhausted
4709
4748
  #
4710
- # source://rexml//lib/rexml/source.rb#170
4749
+ # source://rexml//lib/rexml/source.rb#175
4711
4750
  def empty?; end
4712
4751
 
4713
4752
  # Returns the value of attribute encoding.
@@ -4718,10 +4757,10 @@ class REXML::Source
4718
4757
  # Inherited from Encoding
4719
4758
  # Overridden to support optimized en/decoding
4720
4759
  #
4721
- # source://rexml//lib/rexml/source.rb#116
4760
+ # source://rexml//lib/rexml/source.rb#117
4722
4761
  def encoding=(enc); end
4723
4762
 
4724
- # source://rexml//lib/rexml/source.rb#134
4763
+ # source://rexml//lib/rexml/source.rb#135
4725
4764
  def ensure_buffer; end
4726
4765
 
4727
4766
  # The line number of the last consumed text
@@ -4729,50 +4768,56 @@ class REXML::Source
4729
4768
  # source://rexml//lib/rexml/source.rb#64
4730
4769
  def line; end
4731
4770
 
4732
- # source://rexml//lib/rexml/source.rb#137
4771
+ # source://rexml//lib/rexml/source.rb#138
4733
4772
  def match(pattern, cons = T.unsafe(nil)); end
4734
4773
 
4735
4774
  # @return [Boolean]
4736
4775
  #
4737
- # source://rexml//lib/rexml/source.rb#145
4776
+ # source://rexml//lib/rexml/source.rb#146
4738
4777
  def match?(pattern, cons = T.unsafe(nil)); end
4739
4778
 
4740
- # source://rexml//lib/rexml/source.rb#161
4779
+ # source://rexml//lib/rexml/source.rb#166
4741
4780
  def peek_byte; end
4742
4781
 
4743
- # source://rexml//lib/rexml/source.rb#153
4782
+ # source://rexml//lib/rexml/source.rb#158
4744
4783
  def position; end
4745
4784
 
4746
- # source://rexml//lib/rexml/source.rb#157
4785
+ # source://rexml//lib/rexml/source.rb#162
4747
4786
  def position=(pos); end
4748
4787
 
4749
- # source://rexml//lib/rexml/source.rb#121
4788
+ # source://rexml//lib/rexml/source.rb#122
4750
4789
  def read(term = T.unsafe(nil)); end
4751
4790
 
4752
- # source://rexml//lib/rexml/source.rb#124
4791
+ # source://rexml//lib/rexml/source.rb#125
4753
4792
  def read_until(term); end
4754
4793
 
4755
- # source://rexml//lib/rexml/source.rb#165
4794
+ # source://rexml//lib/rexml/source.rb#170
4756
4795
  def scan_byte; end
4757
4796
 
4797
+ # source://rexml//lib/rexml/source.rb#154
4798
+ def skip_spaces; end
4799
+
4758
4800
  private
4759
4801
 
4760
- # source://rexml//lib/rexml/source.rb#184
4802
+ # source://rexml//lib/rexml/source.rb#189
4761
4803
  def detect_encoding; end
4762
4804
 
4763
- # source://rexml//lib/rexml/source.rb#202
4805
+ # source://rexml//lib/rexml/source.rb#207
4764
4806
  def encoding_updated; end
4765
4807
  end
4766
4808
 
4767
4809
  # source://rexml//lib/rexml/source.rb#67
4768
4810
  module REXML::Source::Private; end
4769
4811
 
4770
- # source://rexml//lib/rexml/source.rb#69
4812
+ # source://rexml//lib/rexml/source.rb#70
4771
4813
  REXML::Source::Private::PRE_DEFINED_TERM_PATTERNS = T.let(T.unsafe(nil), Hash)
4772
4814
 
4773
- # source://rexml//lib/rexml/source.rb#68
4815
+ # source://rexml//lib/rexml/source.rb#69
4774
4816
  REXML::Source::Private::SCANNER_RESET_SIZE = T.let(T.unsafe(nil), Integer)
4775
4817
 
4818
+ # source://rexml//lib/rexml/source.rb#68
4819
+ REXML::Source::Private::SPACES_PATTERN = T.let(T.unsafe(nil), Regexp)
4820
+
4776
4821
  # Generates Source-s. USE THIS CLASS.
4777
4822
  #
4778
4823
  # source://rexml//lib/rexml/source.rb#38
@@ -4862,10 +4907,10 @@ class REXML::Text < ::REXML::Child
4862
4907
  # source://rexml//lib/rexml/text.rb#174
4863
4908
  def empty?; end
4864
4909
 
4865
- # source://rexml//lib/rexml/text.rb#274
4910
+ # source://rexml//lib/rexml/text.rb#271
4866
4911
  def indent_text(string, level = T.unsafe(nil), style = T.unsafe(nil), indentfirstline = T.unsafe(nil)); end
4867
4912
 
4868
- # source://rexml//lib/rexml/text.rb#228
4913
+ # source://rexml//lib/rexml/text.rb#225
4869
4914
  def inspect; end
4870
4915
 
4871
4916
  # source://rexml//lib/rexml/text.rb#170
@@ -4898,7 +4943,7 @@ class REXML::Text < ::REXML::Child
4898
4943
  # u = Text.new( "sean russell", false, nil, true )
4899
4944
  # u.to_s #-> "sean russell"
4900
4945
  #
4901
- # source://rexml//lib/rexml/text.rb#223
4946
+ # source://rexml//lib/rexml/text.rb#220
4902
4947
  def to_s; end
4903
4948
 
4904
4949
  # Returns the string value of this text. This is the text without
@@ -4915,7 +4960,7 @@ class REXML::Text < ::REXML::Child
4915
4960
  # u = Text.new( "sean russell", false, nil, true )
4916
4961
  # u.value #-> "sean russell"
4917
4962
  #
4918
- # source://rexml//lib/rexml/text.rb#245
4963
+ # source://rexml//lib/rexml/text.rb#242
4919
4964
  def value; end
4920
4965
 
4921
4966
  # Sets the contents of this text node. This expects the text to be
@@ -4926,16 +4971,16 @@ class REXML::Text < ::REXML::Child
4926
4971
  # e[0].value = "bar" # <a>bar</a>
4927
4972
  # e[0].value = "<a>" # <a>&lt;a&gt;</a>
4928
4973
  #
4929
- # source://rexml//lib/rexml/text.rb#257
4974
+ # source://rexml//lib/rexml/text.rb#254
4930
4975
  def value=(val); end
4931
4976
 
4932
- # source://rexml//lib/rexml/text.rb#263
4977
+ # source://rexml//lib/rexml/text.rb#260
4933
4978
  def wrap(string, width, addnewline = T.unsafe(nil)); end
4934
4979
 
4935
4980
  # == DEPRECATED
4936
4981
  # See REXML::Formatters
4937
4982
  #
4938
- # source://rexml//lib/rexml/text.rb#289
4983
+ # source://rexml//lib/rexml/text.rb#288
4939
4984
  def write(writer, indent = T.unsafe(nil), transitive = T.unsafe(nil), ie_hack = T.unsafe(nil)); end
4940
4985
 
4941
4986
  # Writes out text, substituting special characters beforehand.
@@ -4953,42 +4998,42 @@ class REXML::Text < ::REXML::Child
4953
4998
  # }
4954
4999
  # puts ascOut
4955
5000
  #
4956
- # source://rexml//lib/rexml/text.rb#321
5001
+ # source://rexml//lib/rexml/text.rb#318
4957
5002
  def write_with_substitution(out, input); end
4958
5003
 
4959
5004
  # FIXME
4960
5005
  # This probably won't work properly
4961
5006
  #
4962
- # source://rexml//lib/rexml/text.rb#301
5007
+ # source://rexml//lib/rexml/text.rb#300
4963
5008
  def xpath; end
4964
5009
 
4965
5010
  private
4966
5011
 
4967
- # source://rexml//lib/rexml/text.rb#334
5012
+ # source://rexml//lib/rexml/text.rb#331
4968
5013
  def clear_cache; end
4969
5014
 
4970
5015
  class << self
4971
5016
  # check for illegal characters
4972
5017
  #
4973
5018
  # source://rexml//lib/rexml/text.rb#116
4974
- def check(string, pattern, doctype); end
5019
+ def check(string, pattern, doctype = T.unsafe(nil)); end
4975
5020
 
4976
- # source://rexml//lib/rexml/text.rb#404
5021
+ # source://rexml//lib/rexml/text.rb#401
4977
5022
  def expand(ref, doctype, filter); end
4978
5023
 
4979
5024
  # Escapes all possible entities
4980
5025
  #
4981
- # source://rexml//lib/rexml/text.rb#366
5026
+ # source://rexml//lib/rexml/text.rb#363
4982
5027
  def normalize(input, doctype = T.unsafe(nil), entity_filter = T.unsafe(nil)); end
4983
5028
 
4984
5029
  # Reads text, substituting entities
4985
5030
  #
4986
- # source://rexml//lib/rexml/text.rb#340
5031
+ # source://rexml//lib/rexml/text.rb#337
4987
5032
  def read_with_substitution(input, illegal = T.unsafe(nil)); end
4988
5033
 
4989
5034
  # Unescapes all possible entities
4990
5035
  #
4991
- # source://rexml//lib/rexml/text.rb#390
5036
+ # source://rexml//lib/rexml/text.rb#387
4992
5037
  def unnormalize(string, doctype = T.unsafe(nil), filter = T.unsafe(nil), illegal = T.unsafe(nil), entity_expansion_text_limit: T.unsafe(nil)); end
4993
5038
  end
4994
5039
  end
@@ -5139,7 +5184,7 @@ class REXML::XPath
5139
5184
  # XPath.each( node, '/book/publisher/text()=$publisher', {}, {"publisher"=>"O'Reilly"}) \
5140
5185
  # {|el| ... }
5141
5186
  #
5142
- # source://rexml//lib/rexml/xpath.rb#60
5187
+ # source://rexml//lib/rexml/xpath.rb#55
5143
5188
  def each(element, path = T.unsafe(nil), namespaces = T.unsafe(nil), variables = T.unsafe(nil), options = T.unsafe(nil), &block); end
5144
5189
 
5145
5190
  # Finds and returns the first node that matches the supplied xpath.
@@ -5165,31 +5210,31 @@ class REXML::XPath
5165
5210
 
5166
5211
  # Returns an array of nodes matching a given XPath.
5167
5212
  #
5168
- # source://rexml//lib/rexml/xpath.rb#72
5213
+ # source://rexml//lib/rexml/xpath.rb#62
5169
5214
  def match(element, path = T.unsafe(nil), namespaces = T.unsafe(nil), variables = T.unsafe(nil), options = T.unsafe(nil)); end
5170
5215
  end
5171
5216
  end
5172
5217
 
5173
5218
  # @private
5174
5219
  #
5175
- # source://rexml//lib/rexml/xpath_parser.rb#963
5220
+ # source://rexml//lib/rexml/xpath_parser.rb#965
5176
5221
  class REXML::XPathNode
5177
5222
  # @return [XPathNode] a new instance of XPathNode
5178
5223
  #
5179
- # source://rexml//lib/rexml/xpath_parser.rb#965
5224
+ # source://rexml//lib/rexml/xpath_parser.rb#967
5180
5225
  def initialize(node, context = T.unsafe(nil)); end
5181
5226
 
5182
5227
  # Returns the value of attribute context.
5183
5228
  #
5184
- # source://rexml//lib/rexml/xpath_parser.rb#964
5229
+ # source://rexml//lib/rexml/xpath_parser.rb#966
5185
5230
  def context; end
5186
5231
 
5187
- # source://rexml//lib/rexml/xpath_parser.rb#974
5232
+ # source://rexml//lib/rexml/xpath_parser.rb#976
5188
5233
  def position; end
5189
5234
 
5190
5235
  # Returns the value of attribute raw_node.
5191
5236
  #
5192
- # source://rexml//lib/rexml/xpath_parser.rb#964
5237
+ # source://rexml//lib/rexml/xpath_parser.rb#966
5193
5238
  def raw_node; end
5194
5239
  end
5195
5240
 
@@ -5207,7 +5252,7 @@ class REXML::XPathParser
5207
5252
  # source://rexml//lib/rexml/xpath_parser.rb#60
5208
5253
  def initialize(strict: T.unsafe(nil)); end
5209
5254
 
5210
- # source://rexml//lib/rexml/xpath_parser.rb#94
5255
+ # source://rexml//lib/rexml/xpath_parser.rb#107
5211
5256
  def []=(variable_name, value); end
5212
5257
 
5213
5258
  # Performs a depth-first (document order) XPath search, and returns the
@@ -5215,66 +5260,66 @@ class REXML::XPathParser
5215
5260
  #
5216
5261
  # FIXME: This method is incomplete!
5217
5262
  #
5218
- # source://rexml//lib/rexml/xpath_parser.rb#103
5263
+ # source://rexml//lib/rexml/xpath_parser.rb#116
5219
5264
  def first(path_stack, node); end
5220
5265
 
5221
- # source://rexml//lib/rexml/xpath_parser.rb#84
5222
- def get_first(path, nodeset); end
5266
+ # source://rexml//lib/rexml/xpath_parser.rb#97
5267
+ def get_first(path, node); end
5223
5268
 
5224
- # source://rexml//lib/rexml/xpath_parser.rb#139
5225
- def match(path_stack, nodeset); end
5269
+ # source://rexml//lib/rexml/xpath_parser.rb#153
5270
+ def match(path_stack, node); end
5226
5271
 
5227
5272
  # source://rexml//lib/rexml/xpath_parser.rb#69
5228
5273
  def namespaces=(namespaces = T.unsafe(nil)); end
5229
5274
 
5230
5275
  # source://rexml//lib/rexml/xpath_parser.rb#79
5231
- def parse(path, nodeset); end
5276
+ def parse(path, node); end
5232
5277
 
5233
- # source://rexml//lib/rexml/xpath_parser.rb#89
5234
- def predicate(path, nodeset); end
5278
+ # source://rexml//lib/rexml/xpath_parser.rb#102
5279
+ def predicate(path, node); end
5235
5280
 
5236
5281
  # source://rexml//lib/rexml/xpath_parser.rb#74
5237
5282
  def variables=(vars = T.unsafe(nil)); end
5238
5283
 
5239
5284
  private
5240
5285
 
5241
- # source://rexml//lib/rexml/xpath_parser.rb#779
5286
+ # source://rexml//lib/rexml/xpath_parser.rb#781
5242
5287
  def child(nodeset); end
5243
5288
 
5244
- # source://rexml//lib/rexml/xpath_parser.rb#920
5289
+ # source://rexml//lib/rexml/xpath_parser.rb#922
5245
5290
  def compare(a, operator, b); end
5246
5291
 
5247
- # source://rexml//lib/rexml/xpath_parser.rb#682
5292
+ # source://rexml//lib/rexml/xpath_parser.rb#687
5248
5293
  def descendant(nodeset, include_self); end
5249
5294
 
5250
- # source://rexml//lib/rexml/xpath_parser.rb#693
5295
+ # source://rexml//lib/rexml/xpath_parser.rb#698
5251
5296
  def descendant_recursive(raw_node, new_nodeset, new_nodes, include_self); end
5252
5297
 
5253
- # source://rexml//lib/rexml/xpath_parser.rb#942
5298
+ # source://rexml//lib/rexml/xpath_parser.rb#944
5254
5299
  def each_unnode(nodeset); end
5255
5300
 
5256
- # source://rexml//lib/rexml/xpath_parser.rb#641
5301
+ # source://rexml//lib/rexml/xpath_parser.rb#646
5257
5302
  def enter(tag, *args); end
5258
5303
 
5259
- # source://rexml//lib/rexml/xpath_parser.rb#819
5304
+ # source://rexml//lib/rexml/xpath_parser.rb#821
5260
5305
  def equality_relational_compare(set1, op, set2); end
5261
5306
 
5262
- # source://rexml//lib/rexml/xpath_parser.rb#591
5307
+ # source://rexml//lib/rexml/xpath_parser.rb#596
5263
5308
  def evaluate_predicate(expression, nodesets); end
5264
5309
 
5265
5310
  # Expr takes a stack of path elements and a set of nodes (either a Parent
5266
5311
  # or an Array and returns an Array of matching nodes
5267
5312
  #
5268
- # source://rexml//lib/rexml/xpath_parser.rb#175
5313
+ # source://rexml//lib/rexml/xpath_parser.rb#186
5269
5314
  def expr(path_stack, nodeset, context = T.unsafe(nil)); end
5270
5315
 
5271
- # source://rexml//lib/rexml/xpath_parser.rb#582
5316
+ # source://rexml//lib/rexml/xpath_parser.rb#587
5272
5317
  def filter_nodeset(nodeset); end
5273
5318
 
5274
- # source://rexml//lib/rexml/xpath_parser.rb#749
5319
+ # source://rexml//lib/rexml/xpath_parser.rb#754
5275
5320
  def following(node); end
5276
5321
 
5277
- # source://rexml//lib/rexml/xpath_parser.rb#760
5322
+ # source://rexml//lib/rexml/xpath_parser.rb#765
5278
5323
  def following_node_of(node); end
5279
5324
 
5280
5325
  # Returns a String namespace for a node, given a prefix
@@ -5283,22 +5328,22 @@ class REXML::XPathParser
5283
5328
  # 1. Use the supplied namespace mapping first.
5284
5329
  # 2. If no mapping was supplied, use the context node to look up the namespace
5285
5330
  #
5286
- # source://rexml//lib/rexml/xpath_parser.rb#163
5331
+ # source://rexml//lib/rexml/xpath_parser.rb#174
5287
5332
  def get_namespace(node, prefix); end
5288
5333
 
5289
- # source://rexml//lib/rexml/xpath_parser.rb#646
5334
+ # source://rexml//lib/rexml/xpath_parser.rb#651
5290
5335
  def leave(tag, *args); end
5291
5336
 
5292
- # source://rexml//lib/rexml/xpath_parser.rb#767
5337
+ # source://rexml//lib/rexml/xpath_parser.rb#771
5293
5338
  def next_sibling_node(node); end
5294
5339
 
5295
- # source://rexml//lib/rexml/xpath_parser.rb#477
5340
+ # source://rexml//lib/rexml/xpath_parser.rb#488
5296
5341
  def node_test(path_stack, nodesets, any_type: T.unsafe(nil)); end
5297
5342
 
5298
- # source://rexml//lib/rexml/xpath_parser.rb#806
5343
+ # source://rexml//lib/rexml/xpath_parser.rb#808
5299
5344
  def norm(b); end
5300
5345
 
5301
- # source://rexml//lib/rexml/xpath_parser.rb#894
5346
+ # source://rexml//lib/rexml/xpath_parser.rb#896
5302
5347
  def normalize_compare_values(a, operator, b); end
5303
5348
 
5304
5349
  # Builds a nodeset of all of the preceding nodes of the supplied node,
@@ -5306,10 +5351,10 @@ class REXML::XPathParser
5306
5351
  # preceding:: includes every element in the document that precedes this node,
5307
5352
  # except for ancestors
5308
5353
  #
5309
- # source://rexml//lib/rexml/xpath_parser.rb#712
5354
+ # source://rexml//lib/rexml/xpath_parser.rb#717
5310
5355
  def preceding(node); end
5311
5356
 
5312
- # source://rexml//lib/rexml/xpath_parser.rb#734
5357
+ # source://rexml//lib/rexml/xpath_parser.rb#739
5313
5358
  def preceding_node_of(node); end
5314
5359
 
5315
5360
  # Reorders an array of nodes so that they are in document order
@@ -5321,24 +5366,24 @@ class REXML::XPathParser
5321
5366
  # I wouldn't have to do this. Maybe add a document IDX for each node?
5322
5367
  # Problems with mutable documents. Or, rewrite everything.
5323
5368
  #
5324
- # source://rexml//lib/rexml/xpath_parser.rb#659
5369
+ # source://rexml//lib/rexml/xpath_parser.rb#664
5325
5370
  def sort(array_of_nodes, order); end
5326
5371
 
5327
- # source://rexml//lib/rexml/xpath_parser.rb#441
5372
+ # source://rexml//lib/rexml/xpath_parser.rb#452
5328
5373
  def step(path_stack, any_type: T.unsafe(nil), order: T.unsafe(nil)); end
5329
5374
 
5330
5375
  # @return [Boolean]
5331
5376
  #
5332
- # source://rexml//lib/rexml/xpath_parser.rb#154
5377
+ # source://rexml//lib/rexml/xpath_parser.rb#165
5333
5378
  def strict?; end
5334
5379
 
5335
- # source://rexml//lib/rexml/xpath_parser.rb#634
5380
+ # source://rexml//lib/rexml/xpath_parser.rb#639
5336
5381
  def trace(*args); end
5337
5382
 
5338
- # source://rexml//lib/rexml/xpath_parser.rb#954
5383
+ # source://rexml//lib/rexml/xpath_parser.rb#956
5339
5384
  def unnode(nodeset); end
5340
5385
 
5341
- # source://rexml//lib/rexml/xpath_parser.rb#881
5386
+ # source://rexml//lib/rexml/xpath_parser.rb#883
5342
5387
  def value_type(value); end
5343
5388
  end
5344
5389