lunchmoney 1.3.0 → 1.4.1

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 (78) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +7 -0
  3. data/.github/workflows/build_and_publish_yard_docs.yml +2 -2
  4. data/.github/workflows/ci.yml +1 -1
  5. data/.ruby-version +1 -1
  6. data/.simplecov +2 -2
  7. data/Gemfile +2 -3
  8. data/Gemfile.lock +90 -84
  9. data/lib/lunchmoney/api.rb +1 -0
  10. data/lib/lunchmoney/calls/categories.rb +0 -2
  11. data/lib/lunchmoney/calls/transactions.rb +0 -1
  12. data/lib/lunchmoney/deprecate.rb +35 -0
  13. data/lib/lunchmoney/objects/asset.rb +6 -1
  14. data/lib/lunchmoney/objects/plaid_account.rb +6 -1
  15. data/lib/lunchmoney/objects/transaction.rb +9 -1
  16. data/lib/lunchmoney/version.rb +1 -1
  17. data/sorbet/rbi/annotations/activesupport.rbi +36 -0
  18. data/sorbet/rbi/annotations/minitest.rbi +119 -0
  19. data/sorbet/rbi/gems/{activesupport@7.1.3.2.rbi → activesupport@7.2.2.1.rbi} +1407 -1292
  20. data/sorbet/rbi/gems/{addressable@2.8.6.rbi → addressable@2.8.7.rbi} +2 -1
  21. data/sorbet/rbi/gems/benchmark@0.4.0.rbi +618 -0
  22. data/sorbet/rbi/gems/{bigdecimal@3.1.7.rbi → bigdecimal@3.1.9.rbi} +1 -0
  23. data/sorbet/rbi/gems/{chef-utils@18.4.2.rbi → chef-utils@18.5.0.rbi} +1 -0
  24. data/sorbet/rbi/gems/{concurrent-ruby@1.2.3.rbi → concurrent-ruby@1.3.5.rbi} +108 -41
  25. data/sorbet/rbi/gems/{connection_pool@2.4.1.rbi → connection_pool@2.5.0.rbi} +1 -0
  26. data/sorbet/rbi/gems/{docile@1.4.0.rbi → docile@1.4.1.rbi} +1 -0
  27. data/sorbet/rbi/gems/{dotenv@3.1.2.rbi → dotenv@3.1.7.rbi} +21 -29
  28. data/sorbet/rbi/gems/{erubi@1.12.0.rbi → erubi@1.13.1.rbi} +25 -15
  29. data/sorbet/rbi/gems/{faraday-net_http@3.1.0.rbi → faraday-net_http@3.4.0.rbi} +30 -29
  30. data/sorbet/rbi/gems/{faraday@2.9.0.rbi → faraday@2.12.2.rbi} +104 -49
  31. data/sorbet/rbi/gems/{hashdiff@1.1.0.rbi → hashdiff@1.1.2.rbi} +3 -2
  32. data/sorbet/rbi/gems/{i18n@1.14.4.rbi → i18n@1.14.7.rbi} +109 -80
  33. data/sorbet/rbi/gems/{json@2.7.2.rbi → json@2.10.2.rbi} +697 -146
  34. data/sorbet/rbi/gems/language_server-protocol@3.17.0.4.rbi +9 -0
  35. data/sorbet/rbi/gems/logger@1.6.6.rbi +940 -0
  36. data/sorbet/rbi/gems/{minitest@5.22.3.rbi → minitest@5.25.5.rbi} +319 -302
  37. data/sorbet/rbi/gems/{mixlib-shellout@3.2.7.rbi → mixlib-shellout@3.2.8.rbi} +1 -0
  38. data/sorbet/rbi/gems/{mocha@2.2.0.rbi → mocha@2.7.1.rbi} +174 -149
  39. data/sorbet/rbi/gems/{net-http@0.4.1.rbi → net-http@0.6.0.rbi} +360 -181
  40. data/sorbet/rbi/gems/{parallel@1.24.0.rbi → parallel@1.26.3.rbi} +32 -21
  41. data/sorbet/rbi/gems/{parser@3.3.1.0.rbi → parser@3.3.7.1.rbi} +256 -203
  42. data/sorbet/rbi/gems/{prism@0.29.0.rbi → prism@1.4.0.rbi} +15882 -12137
  43. data/sorbet/rbi/gems/{public_suffix@5.0.4.rbi → public_suffix@6.0.1.rbi} +1 -0
  44. data/sorbet/rbi/gems/{racc@1.7.3.rbi → racc@1.8.1.rbi} +34 -33
  45. data/sorbet/rbi/gems/{rack@3.0.10.rbi → rack@3.1.9.rbi} +704 -989
  46. data/sorbet/rbi/gems/{rake@13.1.0.rbi → rake@13.2.1.rbi} +56 -55
  47. data/sorbet/rbi/gems/rbi@0.3.1.rbi +6599 -0
  48. data/sorbet/rbi/gems/rbs@3.9.0.rbi +6978 -0
  49. data/sorbet/rbi/gems/{regexp_parser@2.9.1.rbi → regexp_parser@2.10.0.rbi} +195 -172
  50. data/sorbet/rbi/gems/{rexml@3.2.6.rbi → rexml@3.4.1.rbi} +844 -279
  51. data/sorbet/rbi/gems/{rubocop-ast@1.31.3.rbi → rubocop-ast@1.38.0.rbi} +1380 -732
  52. data/sorbet/rbi/gems/{rubocop-minitest@0.35.0.rbi → rubocop-minitest@0.36.0.rbi} +13 -10
  53. data/sorbet/rbi/gems/{rubocop-rails@2.24.1.rbi → rubocop-rails@2.29.1.rbi} +9604 -6343
  54. data/sorbet/rbi/gems/{rubocop-sorbet@0.8.3.rbi → rubocop-sorbet@0.8.7.rbi} +168 -67
  55. data/sorbet/rbi/gems/{rubocop@1.63.5.rbi → rubocop@1.71.2.rbi} +6831 -4378
  56. data/sorbet/rbi/gems/securerandom@0.4.1.rbi +75 -0
  57. data/sorbet/rbi/gems/spoom@1.6.1.rbi +7274 -0
  58. data/sorbet/rbi/gems/{tapioca@0.14.1.rbi → tapioca@0.16.11.rbi} +471 -384
  59. data/sorbet/rbi/gems/{thor@1.3.1.rbi → thor@1.3.2.rbi} +58 -31
  60. data/sorbet/rbi/gems/{toys-core@0.15.5.rbi → toys-core@0.15.6.rbi} +1 -0
  61. data/sorbet/rbi/gems/{toys@0.15.5.rbi → toys@0.15.6.rbi} +4 -3
  62. data/sorbet/rbi/gems/unicode-display_width@3.1.4.rbi +132 -0
  63. data/sorbet/rbi/gems/unicode-emoji@4.0.4.rbi +251 -0
  64. data/sorbet/rbi/gems/{uri@0.13.0.rbi → uri@1.0.3.rbi} +278 -256
  65. data/sorbet/rbi/gems/{vcr@6.2.0.rbi → vcr@6.3.1.rbi} +72 -68
  66. data/sorbet/rbi/gems/{webmock@3.23.0.rbi → webmock@3.25.1.rbi} +102 -78
  67. data/sorbet/rbi/gems/{yard-sorbet@0.8.1.rbi → yard-sorbet@0.9.0.rbi} +36 -29
  68. data/sorbet/rbi/gems/{yard@0.9.36.rbi → yard@0.9.37.rbi} +394 -235
  69. metadata +55 -58
  70. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -3426
  71. data/sorbet/rbi/gems/language_server-protocol@3.17.0.3.rbi +0 -14237
  72. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -272
  73. data/sorbet/rbi/gems/mutex_m@0.2.0.rbi +0 -93
  74. data/sorbet/rbi/gems/pry-sorbet@0.2.1.rbi +0 -966
  75. data/sorbet/rbi/gems/pry@0.14.2.rbi +0 -10077
  76. data/sorbet/rbi/gems/rbi@0.1.13.rbi +0 -3078
  77. data/sorbet/rbi/gems/spoom@1.3.2.rbi +0 -4421
  78. data/sorbet/rbi/gems/unicode-display_width@2.5.0.rbi +0 -65
@@ -1,9 +1,10 @@
1
- # typed: true
1
+ # typed: false
2
2
 
3
3
  # DO NOT EDIT MANUALLY
4
4
  # This is an autogenerated file for types exported from the `rexml` gem.
5
5
  # Please instead update this file by running `bin/tapioca gem rexml`.
6
6
 
7
+
7
8
  # This class needs:
8
9
  # * Documentation
9
10
  # * Work! Not all types of attlists are intelligently parsed, so we just
@@ -112,7 +113,7 @@ class REXML::Attribute
112
113
 
113
114
  # Returns a copy of this attribute
114
115
  #
115
- # source://rexml//lib/rexml/attribute.rb#163
116
+ # source://rexml//lib/rexml/attribute.rb#164
116
117
  def clone; end
117
118
 
118
119
  # source://rexml//lib/rexml/attribute.rb#132
@@ -128,7 +129,7 @@ class REXML::Attribute
128
129
  #
129
130
  # Returns this attribute
130
131
  #
131
- # source://rexml//lib/rexml/attribute.rb#171
132
+ # source://rexml//lib/rexml/attribute.rb#172
132
133
  def element=(element); end
133
134
 
134
135
  # Creates (and returns) a hash from both the name and value
@@ -136,7 +137,7 @@ class REXML::Attribute
136
137
  # source://rexml//lib/rexml/attribute.rb#111
137
138
  def hash; end
138
139
 
139
- # source://rexml//lib/rexml/attribute.rb#197
140
+ # source://rexml//lib/rexml/attribute.rb#198
140
141
  def inspect; end
141
142
 
142
143
  # Returns the namespace URL, if defined, or nil otherwise
@@ -164,13 +165,13 @@ class REXML::Attribute
164
165
  # source://rexml//lib/rexml/attribute.rb#95
165
166
  def namespace(arg = T.unsafe(nil)); end
166
167
 
167
- # source://rexml//lib/rexml/attribute.rb#193
168
+ # source://rexml//lib/rexml/attribute.rb#194
168
169
  def node_type; end
169
170
 
170
171
  # The normalized value of this attribute. That is, the attribute with
171
172
  # entities intact.
172
173
  #
173
- # source://rexml//lib/rexml/attribute.rb#157
174
+ # source://rexml//lib/rexml/attribute.rb#158
174
175
  def normalized=(new_normalized); end
175
176
 
176
177
  # Returns the namespace of the attribute.
@@ -190,7 +191,7 @@ class REXML::Attribute
190
191
  #
191
192
  # This method is usually not called directly.
192
193
  #
193
- # source://rexml//lib/rexml/attribute.rb#184
194
+ # source://rexml//lib/rexml/attribute.rb#185
194
195
  def remove; end
195
196
 
196
197
  # Returns the attribute value, with entities replaced
@@ -216,17 +217,17 @@ class REXML::Attribute
216
217
 
217
218
  # Writes this attribute (EG, puts 'key="value"' to the output)
218
219
  #
219
- # source://rexml//lib/rexml/attribute.rb#189
220
+ # source://rexml//lib/rexml/attribute.rb#190
220
221
  def write(output, indent = T.unsafe(nil)); end
221
222
 
222
- # source://rexml//lib/rexml/attribute.rb#203
223
+ # source://rexml//lib/rexml/attribute.rb#204
223
224
  def xpath; end
224
225
  end
225
226
 
226
227
  # A class that defines the set of Attributes of an Element and provides
227
228
  # operations for accessing elements in that set.
228
229
  #
229
- # source://rexml//lib/rexml/element.rb#2141
230
+ # source://rexml//lib/rexml/element.rb#2137
230
231
  class REXML::Attributes < ::Hash
231
232
  # :call-seq:
232
233
  # new(element)
@@ -247,7 +248,7 @@ class REXML::Attributes < ::Hash
247
248
  #
248
249
  # @return [Attributes] a new instance of Attributes
249
250
  #
250
- # source://rexml//lib/rexml/element.rb#2160
251
+ # source://rexml//lib/rexml/element.rb#2156
251
252
  def initialize(element); end
252
253
 
253
254
  # :call-seq:
@@ -270,7 +271,7 @@ class REXML::Attributes < ::Hash
270
271
  # attrs.add(REXML::Attribute.new('baz', '3')) # => baz='3'
271
272
  # attrs.include?('baz') # => true
272
273
  #
273
- # source://rexml//lib/rexml/element.rb#2537
274
+ # source://rexml//lib/rexml/element.rb#2522
274
275
  def <<(attribute); end
275
276
 
276
277
  # :call-seq:
@@ -294,7 +295,7 @@ class REXML::Attributes < ::Hash
294
295
  #
295
296
  # Related: get_attribute (returns an \Attribute object).
296
297
  #
297
- # source://rexml//lib/rexml/element.rb#2185
298
+ # source://rexml//lib/rexml/element.rb#2181
298
299
  def [](name); end
299
300
 
300
301
  # :call-seq:
@@ -320,7 +321,7 @@ class REXML::Attributes < ::Hash
320
321
  # attrs['baz:att'] = nil
321
322
  # attrs.include?('baz:att') # => false
322
323
  #
323
- # source://rexml//lib/rexml/element.rb#2369
324
+ # source://rexml//lib/rexml/element.rb#2365
324
325
  def []=(name, value); end
325
326
 
326
327
  # :call-seq:
@@ -343,7 +344,7 @@ class REXML::Attributes < ::Hash
343
344
  # attrs.add(REXML::Attribute.new('baz', '3')) # => baz='3'
344
345
  # attrs.include?('baz') # => true
345
346
  #
346
- # source://rexml//lib/rexml/element.rb#2537
347
+ # source://rexml//lib/rexml/element.rb#2522
347
348
  def add(attribute); end
348
349
 
349
350
  # :call-seq:
@@ -374,7 +375,7 @@ class REXML::Attributes < ::Hash
374
375
  # attrs.delete(attr) # => <ele att='&lt;'/> # => <ele att='&lt;'/>
375
376
  # attrs.delete(attr) # => <ele att='&lt;'/> # => <ele/>
376
377
  #
377
- # source://rexml//lib/rexml/element.rb#2490
378
+ # source://rexml//lib/rexml/element.rb#2475
378
379
  def delete(attribute); end
379
380
 
380
381
  # :call-seq:
@@ -393,7 +394,7 @@ class REXML::Attributes < ::Hash
393
394
  # attrs = ele.attributes
394
395
  # attrs.delete_all('att') # => [att='&lt;']
395
396
  #
396
- # source://rexml//lib/rexml/element.rb#2559
397
+ # source://rexml//lib/rexml/element.rb#2544
397
398
  def delete_all(name); end
398
399
 
399
400
  # :call-seq:
@@ -418,7 +419,7 @@ class REXML::Attributes < ::Hash
418
419
  # ["bar:att", "2"]
419
420
  # ["att", "<"]
420
421
  #
421
- # source://rexml//lib/rexml/element.rb#2287
422
+ # source://rexml//lib/rexml/element.rb#2283
422
423
  def each; end
423
424
 
424
425
  # :call-seq:
@@ -443,7 +444,7 @@ class REXML::Attributes < ::Hash
443
444
  # [REXML::Attribute, bar:att='2']
444
445
  # [REXML::Attribute, att='&lt;']
445
446
  #
446
- # source://rexml//lib/rexml/element.rb#2254
447
+ # source://rexml//lib/rexml/element.rb#2250
447
448
  def each_attribute; end
448
449
 
449
450
  # :call-seq:
@@ -465,7 +466,7 @@ class REXML::Attributes < ::Hash
465
466
  # attrs.get_attribute('att') # => att='&lt;'
466
467
  # attrs.get_attribute('nosuch') # => nil
467
468
  #
468
- # source://rexml//lib/rexml/element.rb#2313
469
+ # source://rexml//lib/rexml/element.rb#2309
469
470
  def get_attribute(name); end
470
471
 
471
472
  # :call-seq:
@@ -485,7 +486,7 @@ class REXML::Attributes < ::Hash
485
486
  # attrs.get_attribute_ns('http://foo', 'att') # => foo:att='1'
486
487
  # attrs.get_attribute_ns('http://foo', 'nosuch') # => nil
487
488
  #
488
- # source://rexml//lib/rexml/element.rb#2585
489
+ # source://rexml//lib/rexml/element.rb#2570
489
490
  def get_attribute_ns(namespace, name); end
490
491
 
491
492
  # :call-seq:
@@ -502,7 +503,7 @@ class REXML::Attributes < ::Hash
502
503
  # ele = d.root.elements['//ele'] # => <a foo:att='1' bar:att='2' att='&lt;'/>
503
504
  # ele.attributes.length # => 3
504
505
  #
505
- # source://rexml//lib/rexml/element.rb#2225
506
+ # source://rexml//lib/rexml/element.rb#2221
506
507
  def length; end
507
508
 
508
509
  # :call-seq:
@@ -514,7 +515,7 @@ class REXML::Attributes < ::Hash
514
515
  # d = REXML::Document.new(xml_string)
515
516
  # d.root.attributes.namespaces # => {"xmlns"=>"foo", "x"=>"bar", "y"=>"twee"}
516
517
  #
517
- # source://rexml//lib/rexml/element.rb#2446
518
+ # source://rexml//lib/rexml/element.rb#2431
518
519
  def namespaces; end
519
520
 
520
521
  # :call-seq:
@@ -528,7 +529,7 @@ class REXML::Attributes < ::Hash
528
529
  # d = REXML::Document.new(xml_string)
529
530
  # d.root.attributes.prefixes # => ["x", "y"]
530
531
  #
531
- # source://rexml//lib/rexml/element.rb#2421
532
+ # source://rexml//lib/rexml/element.rb#2406
532
533
  def prefixes; end
533
534
 
534
535
  # :call-seq:
@@ -545,7 +546,7 @@ class REXML::Attributes < ::Hash
545
546
  # ele = d.root.elements['//ele'] # => <a foo:att='1' bar:att='2' att='&lt;'/>
546
547
  # ele.attributes.length # => 3
547
548
  #
548
- # source://rexml//lib/rexml/element.rb#2225
549
+ # source://rexml//lib/rexml/element.rb#2221
549
550
  def size; end
550
551
 
551
552
  # :call-seq:
@@ -564,7 +565,7 @@ class REXML::Attributes < ::Hash
564
565
  # attrs = ele.attributes.to_a # => [foo:att='1', bar:att='2', att='&lt;']
565
566
  # attrs.first.class # => REXML::Attribute
566
567
  #
567
- # source://rexml//lib/rexml/element.rb#2207
568
+ # source://rexml//lib/rexml/element.rb#2203
568
569
  def to_a; end
569
570
  end
570
571
 
@@ -1037,7 +1038,7 @@ class REXML::Document < ::REXML::Element
1037
1038
  # d.add(REXML::Element.new('foo'))
1038
1039
  # d.to_s # => "<foo/>"
1039
1040
  #
1040
- # source://rexml//lib/rexml/document.rb#170
1041
+ # source://rexml//lib/rexml/document.rb#172
1041
1042
  def <<(child); end
1042
1043
 
1043
1044
  # :call-seq:
@@ -1074,7 +1075,7 @@ class REXML::Document < ::REXML::Element
1074
1075
  # d.add(REXML::Element.new('foo'))
1075
1076
  # d.to_s # => "<foo/>"
1076
1077
  #
1077
- # source://rexml//lib/rexml/document.rb#170
1078
+ # source://rexml//lib/rexml/document.rb#172
1078
1079
  def add(child); end
1079
1080
 
1080
1081
  # :call-seq:
@@ -1084,7 +1085,7 @@ class REXML::Document < ::REXML::Element
1084
1085
  #
1085
1086
  # REXML::Element.add_element(name_or_element, attributes)
1086
1087
  #
1087
- # source://rexml//lib/rexml/document.rb#209
1088
+ # source://rexml//lib/rexml/document.rb#211
1088
1089
  def add_element(arg = T.unsafe(nil), arg2 = T.unsafe(nil)); end
1089
1090
 
1090
1091
  # :call-seq:
@@ -1093,7 +1094,7 @@ class REXML::Document < ::REXML::Element
1093
1094
  # Returns the new document resulting from executing
1094
1095
  # <tt>Document.new(self)</tt>. See Document.new.
1095
1096
  #
1096
- # source://rexml//lib/rexml/document.rb#120
1097
+ # source://rexml//lib/rexml/document.rb#122
1097
1098
  def clone; end
1098
1099
 
1099
1100
  # :call-seq:
@@ -1106,10 +1107,10 @@ class REXML::Document < ::REXML::Element
1106
1107
  # d = REXML::Document.new('')
1107
1108
  # d.doctype.class # => nil
1108
1109
  #
1109
- # source://rexml//lib/rexml/document.rb#241
1110
+ # source://rexml//lib/rexml/document.rb#243
1110
1111
  def doctype; end
1111
1112
 
1112
- # source://rexml//lib/rexml/document.rb#442
1113
+ # source://rexml//lib/rexml/document.rb#446
1113
1114
  def document; end
1114
1115
 
1115
1116
  # :call-seq:
@@ -1122,20 +1123,39 @@ class REXML::Document < ::REXML::Element
1122
1123
  # d = REXML::Document.new('')
1123
1124
  # d.encoding # => "UTF-8"
1124
1125
  #
1125
- # source://rexml//lib/rexml/document.rb#290
1126
+ # source://rexml//lib/rexml/document.rb#292
1126
1127
  def encoding; end
1127
1128
 
1128
1129
  # Returns the value of attribute entity_expansion_count.
1129
1130
  #
1130
- # source://rexml//lib/rexml/document.rb#433
1131
+ # source://rexml//lib/rexml/document.rb#435
1131
1132
  def entity_expansion_count; end
1132
1133
 
1134
+ # Sets the attribute entity_expansion_limit
1135
+ #
1136
+ # @param value the value to set the attribute entity_expansion_limit to.
1137
+ #
1138
+ # source://rexml//lib/rexml/document.rb#436
1139
+ def entity_expansion_limit=(_arg0); end
1140
+
1141
+ # Returns the value of attribute entity_expansion_text_limit.
1142
+ #
1143
+ # source://rexml//lib/rexml/document.rb#437
1144
+ def entity_expansion_text_limit; end
1145
+
1146
+ # Sets the attribute entity_expansion_text_limit
1147
+ #
1148
+ # @param value the value to set the attribute entity_expansion_text_limit to.
1149
+ #
1150
+ # source://rexml//lib/rexml/document.rb#437
1151
+ def entity_expansion_text_limit=(_arg0); end
1152
+
1133
1153
  # :call-seq:
1134
1154
  # expanded_name -> empty_string
1135
1155
  #
1136
1156
  # Returns an empty string.
1137
1157
  #
1138
- # source://rexml//lib/rexml/document.rb#129
1158
+ # source://rexml//lib/rexml/document.rb#131
1139
1159
  def expanded_name; end
1140
1160
 
1141
1161
  # :call-seq:
@@ -1145,7 +1165,7 @@ class REXML::Document < ::REXML::Element
1145
1165
  # d = doc_type
1146
1166
  # d ? d.name : "UNDEFINED"
1147
1167
  #
1148
- # source://rexml//lib/rexml/document.rb#129
1168
+ # source://rexml//lib/rexml/document.rb#131
1149
1169
  def name; end
1150
1170
 
1151
1171
  # :call-seq:
@@ -1153,10 +1173,10 @@ class REXML::Document < ::REXML::Element
1153
1173
  #
1154
1174
  # Returns the symbol +:document+.
1155
1175
  #
1156
- # source://rexml//lib/rexml/document.rb#110
1176
+ # source://rexml//lib/rexml/document.rb#112
1157
1177
  def node_type; end
1158
1178
 
1159
- # source://rexml//lib/rexml/document.rb#435
1179
+ # source://rexml//lib/rexml/document.rb#439
1160
1180
  def record_entity_expansion; end
1161
1181
 
1162
1182
  # :call-seq:
@@ -1169,7 +1189,7 @@ class REXML::Document < ::REXML::Element
1169
1189
  # d = REXML::Document.new('')
1170
1190
  # d.root # => nil
1171
1191
  #
1172
- # source://rexml//lib/rexml/document.rb#225
1192
+ # source://rexml//lib/rexml/document.rb#227
1173
1193
  def root; end
1174
1194
 
1175
1195
  # :call-seq:
@@ -1185,7 +1205,7 @@ class REXML::Document < ::REXML::Element
1185
1205
  #
1186
1206
  # @return [Boolean]
1187
1207
  #
1188
- # source://rexml//lib/rexml/document.rb#305
1208
+ # source://rexml//lib/rexml/document.rb#307
1189
1209
  def stand_alone?; end
1190
1210
 
1191
1211
  # :call-seq:
@@ -1199,7 +1219,7 @@ class REXML::Document < ::REXML::Element
1199
1219
  # d = REXML::Document.new('')
1200
1220
  # d.version # => "1.0"
1201
1221
  #
1202
- # source://rexml//lib/rexml/document.rb#275
1222
+ # source://rexml//lib/rexml/document.rb#277
1203
1223
  def version; end
1204
1224
 
1205
1225
  # :call-seq:
@@ -1258,7 +1278,7 @@ class REXML::Document < ::REXML::Element
1258
1278
  # instead of encoding in XML declaration.
1259
1279
  # Defaults to nil. It means encoding in XML declaration is used.
1260
1280
  #
1261
- # source://rexml//lib/rexml/document.rb#365
1281
+ # source://rexml//lib/rexml/document.rb#367
1262
1282
  def write(*arguments); end
1263
1283
 
1264
1284
  # :call-seq:
@@ -1274,12 +1294,12 @@ class REXML::Document < ::REXML::Element
1274
1294
  # d.xml_decl.class # => REXML::XMLDecl
1275
1295
  # d.xml_decl.to_s # => ""
1276
1296
  #
1277
- # source://rexml//lib/rexml/document.rb#258
1297
+ # source://rexml//lib/rexml/document.rb#260
1278
1298
  def xml_decl; end
1279
1299
 
1280
1300
  private
1281
1301
 
1282
- # source://rexml//lib/rexml/document.rb#447
1302
+ # source://rexml//lib/rexml/document.rb#451
1283
1303
  def build(source); end
1284
1304
 
1285
1305
  class << self
@@ -1287,31 +1307,31 @@ class REXML::Document < ::REXML::Element
1287
1307
  #
1288
1308
  # Deprecated. Use REXML::Security.entity_expansion_limit= instead.
1289
1309
  #
1290
- # source://rexml//lib/rexml/document.rb#415
1310
+ # source://rexml//lib/rexml/document.rb#417
1291
1311
  def entity_expansion_limit; end
1292
1312
 
1293
1313
  # Set the entity expansion limit. By default the limit is set to 10000.
1294
1314
  #
1295
1315
  # Deprecated. Use REXML::Security.entity_expansion_limit= instead.
1296
1316
  #
1297
- # source://rexml//lib/rexml/document.rb#408
1317
+ # source://rexml//lib/rexml/document.rb#410
1298
1318
  def entity_expansion_limit=(val); end
1299
1319
 
1300
1320
  # Get the entity expansion limit. By default the limit is set to 10240.
1301
1321
  #
1302
1322
  # Deprecated. Use REXML::Security.entity_expansion_text_limit instead.
1303
1323
  #
1304
- # source://rexml//lib/rexml/document.rb#429
1324
+ # source://rexml//lib/rexml/document.rb#431
1305
1325
  def entity_expansion_text_limit; end
1306
1326
 
1307
1327
  # Set the entity expansion limit. By default the limit is set to 10240.
1308
1328
  #
1309
1329
  # Deprecated. Use REXML::Security.entity_expansion_text_limit= instead.
1310
1330
  #
1311
- # source://rexml//lib/rexml/document.rb#422
1331
+ # source://rexml//lib/rexml/document.rb#424
1312
1332
  def entity_expansion_text_limit=(val); end
1313
1333
 
1314
- # source://rexml//lib/rexml/document.rb#401
1334
+ # source://rexml//lib/rexml/document.rb#403
1315
1335
  def parse_stream(source, listener); end
1316
1336
  end
1317
1337
  end
@@ -1577,7 +1597,7 @@ end
1577
1597
  # #attributes:: Returns the REXML::Attributes object for the element.
1578
1598
  # #context:: Returns or sets the context hash for the element.
1579
1599
  #
1580
- # source://rexml//lib/rexml/element.rb#279
1600
+ # source://rexml//lib/rexml/element.rb#271
1581
1601
  class REXML::Element < ::REXML::Parent
1582
1602
  include ::REXML::XMLTokens
1583
1603
  include ::REXML::Namespace
@@ -1620,7 +1640,7 @@ class REXML::Element < ::REXML::Parent
1620
1640
  #
1621
1641
  # @return [Element] a new instance of Element
1622
1642
  #
1623
- # source://rexml//lib/rexml/element.rb#327
1643
+ # source://rexml//lib/rexml/element.rb#319
1624
1644
  def initialize(arg = T.unsafe(nil), parent = T.unsafe(nil), context = T.unsafe(nil)); end
1625
1645
 
1626
1646
  # :call-seq:
@@ -1662,7 +1682,7 @@ class REXML::Element < ::REXML::Parent
1662
1682
  # root[:attr] # => "value"
1663
1683
  # root[:nosuch] # => nil
1664
1684
  #
1665
- # source://rexml//lib/rexml/element.rb#1245
1685
+ # source://rexml//lib/rexml/element.rb#1246
1666
1686
  def [](name_or_index); end
1667
1687
 
1668
1688
  # :call-seq:
@@ -1691,7 +1711,7 @@ class REXML::Element < ::REXML::Parent
1691
1711
  # e.add_attribute(a) # => attr='VALUE'
1692
1712
  # e['attr'] # => "VALUE"
1693
1713
  #
1694
- # source://rexml//lib/rexml/element.rb#1349
1714
+ # source://rexml//lib/rexml/element.rb#1345
1695
1715
  def add_attribute(key, value = T.unsafe(nil)); end
1696
1716
 
1697
1717
  # :call-seq:
@@ -1717,7 +1737,7 @@ class REXML::Element < ::REXML::Parent
1717
1737
  # a = [['foo' => 'bar'], ['baz' => 'bat']]
1718
1738
  # e.add_attributes(a)
1719
1739
  #
1720
- # source://rexml//lib/rexml/element.rb#1380
1740
+ # source://rexml//lib/rexml/element.rb#1376
1721
1741
  def add_attributes(hash); end
1722
1742
 
1723
1743
  # :call-seq:
@@ -1754,7 +1774,7 @@ class REXML::Element < ::REXML::Parent
1754
1774
  # e0.add_element(e1, {'bat' => '0', 'bam' => '1'})
1755
1775
  # e0[1] # => <bar bat='0' bam='1'/>
1756
1776
  #
1757
- # source://rexml//lib/rexml/element.rb#731
1777
+ # source://rexml//lib/rexml/element.rb#732
1758
1778
  def add_element(element, attrs = T.unsafe(nil)); end
1759
1779
 
1760
1780
  # :call-seq:
@@ -1775,7 +1795,7 @@ class REXML::Element < ::REXML::Parent
1775
1795
  # e.add_namespace('baz', 'bat')
1776
1796
  # e.namespaces # => {"xmlns"=>"bar", "baz"=>"bat"}
1777
1797
  #
1778
- # source://rexml//lib/rexml/element.rb#654
1798
+ # source://rexml//lib/rexml/element.rb#655
1779
1799
  def add_namespace(prefix, uri = T.unsafe(nil)); end
1780
1800
 
1781
1801
  # :call-seq:
@@ -1817,7 +1837,7 @@ class REXML::Element < ::REXML::Parent
1817
1837
  # a.add_text(REXML::Text.new('baz'))
1818
1838
  # a.to_a # => ["foo", <b/>, "bar", "baz", "baz"]
1819
1839
  #
1820
- # source://rexml//lib/rexml/element.rb#1146
1840
+ # source://rexml//lib/rexml/element.rb#1147
1821
1841
  def add_text(text); end
1822
1842
 
1823
1843
  # :call-seq:
@@ -1849,13 +1869,13 @@ class REXML::Element < ::REXML::Parent
1849
1869
  # document.root.attribute("x") # => x='x'
1850
1870
  # document.root.attribute("x", "a") # => a:x='a:x'
1851
1871
  #
1852
- # source://rexml//lib/rexml/element.rb#1286
1872
+ # source://rexml//lib/rexml/element.rb#1287
1853
1873
  def attribute(name, namespace = T.unsafe(nil)); end
1854
1874
 
1855
1875
  # Mechanisms for accessing attributes and child elements of this
1856
1876
  # element.
1857
1877
  #
1858
- # source://rexml//lib/rexml/element.rb#286
1878
+ # source://rexml//lib/rexml/element.rb#278
1859
1879
  def attributes; end
1860
1880
 
1861
1881
  # :call-seq:
@@ -1874,7 +1894,7 @@ class REXML::Element < ::REXML::Parent
1874
1894
  # cds.frozen? # => true
1875
1895
  # cds.map {|cd| cd.class } # => [REXML::CData, REXML::CData]
1876
1896
  #
1877
- # source://rexml//lib/rexml/element.rb#1424
1897
+ # source://rexml//lib/rexml/element.rb#1420
1878
1898
  def cdatas; end
1879
1899
 
1880
1900
  # :call-seq:
@@ -1887,7 +1907,7 @@ class REXML::Element < ::REXML::Parent
1887
1907
  # e.add_attributes({'bar' => 0, 'baz' => 1})
1888
1908
  # e.clone # => <foo bar='0' baz='1'/>
1889
1909
  #
1890
- # source://rexml//lib/rexml/element.rb#391
1910
+ # source://rexml//lib/rexml/element.rb#383
1891
1911
  def clone; end
1892
1912
 
1893
1913
  # :call-seq:
@@ -1907,19 +1927,19 @@ class REXML::Element < ::REXML::Parent
1907
1927
  # cs.map {|c| c.class } # => [REXML::Comment, REXML::Comment]
1908
1928
  # cs.map {|c| c.to_s } # => ["foo", "bar"]
1909
1929
  #
1910
- # source://rexml//lib/rexml/element.rb#1445
1930
+ # source://rexml//lib/rexml/element.rb#1441
1911
1931
  def comments; end
1912
1932
 
1913
1933
  # The context holds information about the processing environment, such as
1914
1934
  # whitespace handling.
1915
1935
  #
1916
- # source://rexml//lib/rexml/element.rb#289
1936
+ # source://rexml//lib/rexml/element.rb#281
1917
1937
  def context; end
1918
1938
 
1919
1939
  # The context holds information about the processing environment, such as
1920
1940
  # whitespace handling.
1921
1941
  #
1922
- # source://rexml//lib/rexml/element.rb#289
1942
+ # source://rexml//lib/rexml/element.rb#281
1923
1943
  def context=(_arg0); end
1924
1944
 
1925
1945
  # :call-seq:
@@ -1933,7 +1953,7 @@ class REXML::Element < ::REXML::Parent
1933
1953
  # e.delete_attribute('bar') # => <bar/>
1934
1954
  # e.delete_attribute('bar') # => nil
1935
1955
  #
1936
- # source://rexml//lib/rexml/element.rb#1399
1956
+ # source://rexml//lib/rexml/element.rb#1395
1937
1957
  def delete_attribute(key); end
1938
1958
 
1939
1959
  # :call-seq:
@@ -1973,7 +1993,7 @@ class REXML::Element < ::REXML::Parent
1973
1993
  # a.delete_element('//c') # => <c/>
1974
1994
  # a.delete_element('//c') # => nil
1975
1995
  #
1976
- # source://rexml//lib/rexml/element.rb#777
1996
+ # source://rexml//lib/rexml/element.rb#778
1977
1997
  def delete_element(element); end
1978
1998
 
1979
1999
  # :call-seq:
@@ -1998,7 +2018,7 @@ class REXML::Element < ::REXML::Parent
1998
2018
  # d.root.delete_namespace('nosuch')
1999
2019
  # d.to_s # => "<a/>"
2000
2020
  #
2001
- # source://rexml//lib/rexml/element.rb#686
2021
+ # source://rexml//lib/rexml/element.rb#687
2002
2022
  def delete_namespace(namespace = T.unsafe(nil)); end
2003
2023
 
2004
2024
  # :call-seq:
@@ -2022,7 +2042,7 @@ class REXML::Element < ::REXML::Parent
2022
2042
  #
2023
2043
  # Related: #root, #root_node.
2024
2044
  #
2025
- # source://rexml//lib/rexml/element.rb#478
2045
+ # source://rexml//lib/rexml/element.rb#475
2026
2046
  def document; end
2027
2047
 
2028
2048
  # :call-seq:
@@ -2041,7 +2061,7 @@ class REXML::Element < ::REXML::Parent
2041
2061
  # <d> ... </>
2042
2062
  # <e/>
2043
2063
  #
2044
- # source://rexml//lib/rexml/element.rb#929
2064
+ # source://rexml//lib/rexml/element.rb#930
2045
2065
  def each_element(xpath = T.unsafe(nil), &block); end
2046
2066
 
2047
2067
  # :call-seq:
@@ -2093,7 +2113,7 @@ class REXML::Element < ::REXML::Parent
2093
2113
  #
2094
2114
  # <d id='1'/>
2095
2115
  #
2096
- # source://rexml//lib/rexml/element.rb#846
2116
+ # source://rexml//lib/rexml/element.rb#847
2097
2117
  def each_element_with_attribute(key, value = T.unsafe(nil), max = T.unsafe(nil), name = T.unsafe(nil), &block); end
2098
2118
 
2099
2119
  # :call-seq:
@@ -2143,13 +2163,13 @@ class REXML::Element < ::REXML::Parent
2143
2163
  #
2144
2164
  # <c> ... </>
2145
2165
  #
2146
- # source://rexml//lib/rexml/element.rb#903
2166
+ # source://rexml//lib/rexml/element.rb#904
2147
2167
  def each_element_with_text(text = T.unsafe(nil), max = T.unsafe(nil), name = T.unsafe(nil), &block); end
2148
2168
 
2149
2169
  # Mechanisms for accessing attributes and child elements of this
2150
2170
  # element.
2151
2171
  #
2152
- # source://rexml//lib/rexml/element.rb#286
2172
+ # source://rexml//lib/rexml/element.rb#278
2153
2173
  def elements; end
2154
2174
 
2155
2175
  # :call-seq:
@@ -2167,7 +2187,7 @@ class REXML::Element < ::REXML::Parent
2167
2187
  # d = REXML::Document.new(xml_string)
2168
2188
  # d.root.get_elements('//a') # => [<a level='1'> ... </>, <a level='2'/>]
2169
2189
  #
2170
- # source://rexml//lib/rexml/element.rb#948
2190
+ # source://rexml//lib/rexml/element.rb#949
2171
2191
  def get_elements(xpath); end
2172
2192
 
2173
2193
  # :call-seq:
@@ -2187,7 +2207,7 @@ class REXML::Element < ::REXML::Parent
2187
2207
  #
2188
2208
  # d.root.get_text(1) # => "this is bold!"
2189
2209
  #
2190
- # source://rexml//lib/rexml/element.rb#1052
2210
+ # source://rexml//lib/rexml/element.rb#1053
2191
2211
  def get_text(path = T.unsafe(nil)); end
2192
2212
 
2193
2213
  # :call-seq:
@@ -2202,7 +2222,7 @@ class REXML::Element < ::REXML::Parent
2202
2222
  #
2203
2223
  # @return [Boolean]
2204
2224
  #
2205
- # source://rexml//lib/rexml/element.rb#1319
2225
+ # source://rexml//lib/rexml/element.rb#1315
2206
2226
  def has_attributes?; end
2207
2227
 
2208
2228
  # :call-seq:
@@ -2219,7 +2239,7 @@ class REXML::Element < ::REXML::Parent
2219
2239
  #
2220
2240
  # @return [Boolean]
2221
2241
  #
2222
- # source://rexml//lib/rexml/element.rb#793
2242
+ # source://rexml//lib/rexml/element.rb#794
2223
2243
  def has_elements?; end
2224
2244
 
2225
2245
  # :call-seq:
@@ -2236,7 +2256,7 @@ class REXML::Element < ::REXML::Parent
2236
2256
  #
2237
2257
  # @return [Boolean]
2238
2258
  #
2239
- # source://rexml//lib/rexml/element.rb#1001
2259
+ # source://rexml//lib/rexml/element.rb#1002
2240
2260
  def has_text?; end
2241
2261
 
2242
2262
  # :call-seq:
@@ -2246,7 +2266,7 @@ class REXML::Element < ::REXML::Parent
2246
2266
  #
2247
2267
  # See {Element Context}[../doc/rexml/context_rdoc.html].
2248
2268
  #
2249
- # source://rexml//lib/rexml/element.rb#516
2269
+ # source://rexml//lib/rexml/element.rb#513
2250
2270
  def ignore_whitespace_nodes; end
2251
2271
 
2252
2272
  # :call-seq:
@@ -2270,7 +2290,7 @@ class REXML::Element < ::REXML::Parent
2270
2290
  # e.add_element(REXML::Element.new('baz'))
2271
2291
  # e.inspect # => "<foo bar='0' baz='1'> ... </>"
2272
2292
  #
2273
- # source://rexml//lib/rexml/element.rb#366
2293
+ # source://rexml//lib/rexml/element.rb#358
2274
2294
  def inspect; end
2275
2295
 
2276
2296
  # :call-seq:
@@ -2290,7 +2310,7 @@ class REXML::Element < ::REXML::Parent
2290
2310
  # is.map {|i| i.class } # => [REXML::Instruction, REXML::Instruction]
2291
2311
  # is.map {|i| i.to_s } # => ["<?target0 foo?>", "<?target1 bar?>"]
2292
2312
  #
2293
- # source://rexml//lib/rexml/element.rb#1466
2313
+ # source://rexml//lib/rexml/element.rb#1462
2294
2314
  def instructions; end
2295
2315
 
2296
2316
  # :call-seq:
@@ -2313,7 +2333,7 @@ class REXML::Element < ::REXML::Parent
2313
2333
  # b.namespace('y') # => "2"
2314
2334
  # b.namespace('nosuch') # => nil
2315
2335
  #
2316
- # source://rexml//lib/rexml/element.rb#621
2336
+ # source://rexml//lib/rexml/element.rb#618
2317
2337
  def namespace(prefix = T.unsafe(nil)); end
2318
2338
 
2319
2339
  # :call-seq:
@@ -2335,7 +2355,7 @@ class REXML::Element < ::REXML::Parent
2335
2355
  # d.elements['//b'].namespaces # => {"x"=>"1", "y"=>"2"}
2336
2356
  # d.elements['//c'].namespaces # => {"x"=>"1", "y"=>"2", "z"=>"3"}
2337
2357
  #
2338
- # source://rexml//lib/rexml/element.rb#594
2358
+ # source://rexml//lib/rexml/element.rb#591
2339
2359
  def namespaces; end
2340
2360
 
2341
2361
  # :call-seq:
@@ -2348,7 +2368,7 @@ class REXML::Element < ::REXML::Parent
2348
2368
  # d.root.elements['b'].next_element #-> <c/>
2349
2369
  # d.root.elements['c'].next_element #-> nil
2350
2370
  #
2351
- # source://rexml//lib/rexml/element.rb#962
2371
+ # source://rexml//lib/rexml/element.rb#963
2352
2372
  def next_element; end
2353
2373
 
2354
2374
  # :call-seq:
@@ -2360,7 +2380,7 @@ class REXML::Element < ::REXML::Parent
2360
2380
  # a = d.root # => <a/>
2361
2381
  # a.node_type # => :element
2362
2382
  #
2363
- # source://rexml//lib/rexml/element.rb#1167
2383
+ # source://rexml//lib/rexml/element.rb#1168
2364
2384
  def node_type; end
2365
2385
 
2366
2386
  # :call-seq:
@@ -2382,7 +2402,7 @@ class REXML::Element < ::REXML::Parent
2382
2402
  # d.elements['//b'].prefixes # => ["x", "y"]
2383
2403
  # d.elements['//c'].prefixes # => ["x", "y", "z"]
2384
2404
  #
2385
- # source://rexml//lib/rexml/element.rb#568
2405
+ # source://rexml//lib/rexml/element.rb#565
2386
2406
  def prefixes; end
2387
2407
 
2388
2408
  # :call-seq:
@@ -2395,7 +2415,7 @@ class REXML::Element < ::REXML::Parent
2395
2415
  # d.root.elements['c'].previous_element #-> <b/>
2396
2416
  # d.root.elements['b'].previous_element #-> nil
2397
2417
  #
2398
- # source://rexml//lib/rexml/element.rb#978
2418
+ # source://rexml//lib/rexml/element.rb#979
2399
2419
  def previous_element; end
2400
2420
 
2401
2421
  # :call-seq:
@@ -2408,7 +2428,7 @@ class REXML::Element < ::REXML::Parent
2408
2428
  # The evaluation is tested against +expanded_name+, and so is namespace
2409
2429
  # sensitive.
2410
2430
  #
2411
- # source://rexml//lib/rexml/element.rb#536
2431
+ # source://rexml//lib/rexml/element.rb#533
2412
2432
  def raw; end
2413
2433
 
2414
2434
  # :call-seq:
@@ -2428,7 +2448,7 @@ class REXML::Element < ::REXML::Parent
2428
2448
  #
2429
2449
  # Related: #root_node, #document.
2430
2450
  #
2431
- # source://rexml//lib/rexml/element.rb#451
2451
+ # source://rexml//lib/rexml/element.rb#443
2432
2452
  def root; end
2433
2453
 
2434
2454
  # :call-seq:
@@ -2466,7 +2486,7 @@ class REXML::Element < ::REXML::Parent
2466
2486
  #
2467
2487
  # Related: #root, #document.
2468
2488
  #
2469
- # source://rexml//lib/rexml/element.rb#430
2489
+ # source://rexml//lib/rexml/element.rb#422
2470
2490
  def root_node; end
2471
2491
 
2472
2492
  # :call-seq:
@@ -2493,7 +2513,7 @@ class REXML::Element < ::REXML::Parent
2493
2513
  # Note also that the text note is retrieved by method get_text,
2494
2514
  # and so is always normalized text.
2495
2515
  #
2496
- # source://rexml//lib/rexml/element.rb#1029
2516
+ # source://rexml//lib/rexml/element.rb#1030
2497
2517
  def text(path = T.unsafe(nil)); end
2498
2518
 
2499
2519
  # :call-seq:
@@ -2521,7 +2541,7 @@ class REXML::Element < ::REXML::Parent
2521
2541
  #
2522
2542
  # d.root.text = nil #-> '<a><b/><c/></a>'
2523
2543
  #
2524
- # source://rexml//lib/rexml/element.rb#1088
2544
+ # source://rexml//lib/rexml/element.rb#1089
2525
2545
  def text=(text); end
2526
2546
 
2527
2547
  # :call-seq:
@@ -2536,7 +2556,7 @@ class REXML::Element < ::REXML::Parent
2536
2556
  # ts.map {|t| t.class } # => [REXML::Text, REXML::Text]
2537
2557
  # ts.map {|t| t.to_s } # => ["text", "more"]
2538
2558
  #
2539
- # source://rexml//lib/rexml/element.rb#1482
2559
+ # source://rexml//lib/rexml/element.rb#1478
2540
2560
  def texts; end
2541
2561
 
2542
2562
  # :call-seq:
@@ -2550,7 +2570,7 @@ class REXML::Element < ::REXML::Parent
2550
2570
  # The evaluation is tested against the element's +expanded_name+,
2551
2571
  # and so is namespace-sensitive.
2552
2572
  #
2553
- # source://rexml//lib/rexml/element.rb#493
2573
+ # source://rexml//lib/rexml/element.rb#490
2554
2574
  def whitespace; end
2555
2575
 
2556
2576
  # == DEPRECATED
@@ -2576,7 +2596,7 @@ class REXML::Element < ::REXML::Parent
2576
2596
  # doc.write( out ) #-> doc is written to the string 'out'
2577
2597
  # doc.write( $stdout ) #-> doc written to the console
2578
2598
  #
2579
- # source://rexml//lib/rexml/element.rb#1508
2599
+ # source://rexml//lib/rexml/element.rb#1504
2580
2600
  def write(output = T.unsafe(nil), indent = T.unsafe(nil), transitive = T.unsafe(nil), ie_hack = T.unsafe(nil)); end
2581
2601
 
2582
2602
  # :call-seq:
@@ -2599,17 +2619,17 @@ class REXML::Element < ::REXML::Parent
2599
2619
  # e = REXML::Element.new('foo')
2600
2620
  # e.xpath # => "foo"
2601
2621
  #
2602
- # source://rexml//lib/rexml/element.rb#1191
2622
+ # source://rexml//lib/rexml/element.rb#1192
2603
2623
  def xpath; end
2604
2624
 
2605
2625
  private
2606
2626
 
2607
- # source://rexml//lib/rexml/element.rb#1525
2627
+ # source://rexml//lib/rexml/element.rb#1521
2608
2628
  def __to_xpath_helper(node); end
2609
2629
 
2610
2630
  # A private helper method
2611
2631
  #
2612
- # source://rexml//lib/rexml/element.rb#1540
2632
+ # source://rexml//lib/rexml/element.rb#1536
2613
2633
  def each_with_something(test, max = T.unsafe(nil), name = T.unsafe(nil)); end
2614
2634
  end
2615
2635
 
@@ -2663,7 +2683,7 @@ end
2663
2683
  # elements = d.root.elements
2664
2684
  # elements # => #<REXML::Elements @element=<bookstore> ... </>>
2665
2685
  #
2666
- # source://rexml//lib/rexml/element.rb#1595
2686
+ # source://rexml//lib/rexml/element.rb#1591
2667
2687
  class REXML::Elements
2668
2688
  include ::Enumerable
2669
2689
 
@@ -2680,7 +2700,7 @@ class REXML::Elements
2680
2700
  #
2681
2701
  # @return [Elements] a new instance of Elements
2682
2702
  #
2683
- # source://rexml//lib/rexml/element.rb#1608
2703
+ # source://rexml//lib/rexml/element.rb#1604
2684
2704
  def initialize(parent); end
2685
2705
 
2686
2706
  # :call-seq:
@@ -2745,7 +2765,7 @@ class REXML::Elements
2745
2765
  # element.parent # => <bookstore> ... </>
2746
2766
  # element.context # => {:raw=>:all}
2747
2767
  #
2748
- # source://rexml//lib/rexml/element.rb#1925
2768
+ # source://rexml//lib/rexml/element.rb#1921
2749
2769
  def <<(element = T.unsafe(nil)); end
2750
2770
 
2751
2771
  # :call-seq:
@@ -2801,7 +2821,7 @@ class REXML::Elements
2801
2821
  # eles[4, 'book'] # => <book category='web' cover='paperback'> ... </>
2802
2822
  # eles[5, 'book'] # => nil
2803
2823
  #
2804
- # source://rexml//lib/rexml/element.rb#1680
2824
+ # source://rexml//lib/rexml/element.rb#1676
2805
2825
  def [](index, name = T.unsafe(nil)); end
2806
2826
 
2807
2827
  # :call-seq:
@@ -2840,7 +2860,7 @@ class REXML::Elements
2840
2860
  # eles[50] = REXML::Text.new('bar') # => "bar"
2841
2861
  # eles.size # => 5
2842
2862
  #
2843
- # source://rexml//lib/rexml/element.rb#1735
2863
+ # source://rexml//lib/rexml/element.rb#1731
2844
2864
  def []=(index, element); end
2845
2865
 
2846
2866
  # :call-seq:
@@ -2905,7 +2925,7 @@ class REXML::Elements
2905
2925
  # element.parent # => <bookstore> ... </>
2906
2926
  # element.context # => {:raw=>:all}
2907
2927
  #
2908
- # source://rexml//lib/rexml/element.rb#1925
2928
+ # source://rexml//lib/rexml/element.rb#1921
2909
2929
  def add(element = T.unsafe(nil)); end
2910
2930
 
2911
2931
  # :call-seq:
@@ -2925,7 +2945,7 @@ class REXML::Elements
2925
2945
  # xpath = '//book [@category="web"]'
2926
2946
  # elements.collect(xpath) {|element| element.size } # => [17, 9]
2927
2947
  #
2928
- # source://rexml//lib/rexml/element.rb#1988
2948
+ # source://rexml//lib/rexml/element.rb#1984
2929
2949
  def collect(xpath = T.unsafe(nil)); end
2930
2950
 
2931
2951
  # :call-seq:
@@ -2969,7 +2989,7 @@ class REXML::Elements
2969
2989
  # elements.delete('//book [@category="children"]') # => <book category='children'> ... </>
2970
2990
  # elements.delete('//nosuch') # => nil
2971
2991
  #
2972
- # source://rexml//lib/rexml/element.rb#1825
2992
+ # source://rexml//lib/rexml/element.rb#1821
2973
2993
  def delete(element); end
2974
2994
 
2975
2995
  # :call-seq:
@@ -2989,7 +3009,7 @@ class REXML::Elements
2989
3009
  # elements.size # => 0
2990
3010
  # elements.delete_all('//book') # => []
2991
3011
  #
2992
- # source://rexml//lib/rexml/element.rb#1851
3012
+ # source://rexml//lib/rexml/element.rb#1847
2993
3013
  def delete_all(xpath); end
2994
3014
 
2995
3015
  # :call-seq:
@@ -3020,7 +3040,7 @@ class REXML::Elements
3020
3040
  # <book category='web'> ... </>
3021
3041
  # <book category='web' cover='paperback'> ... </>
3022
3042
  #
3023
- # source://rexml//lib/rexml/element.rb#1967
3043
+ # source://rexml//lib/rexml/element.rb#1963
3024
3044
  def each(xpath = T.unsafe(nil)); end
3025
3045
 
3026
3046
  # :call-seq:
@@ -3035,7 +3055,7 @@ class REXML::Elements
3035
3055
  #
3036
3056
  # @return [Boolean]
3037
3057
  #
3038
- # source://rexml//lib/rexml/element.rb#1755
3058
+ # source://rexml//lib/rexml/element.rb#1751
3039
3059
  def empty?; end
3040
3060
 
3041
3061
  # :call-seq:
@@ -3052,7 +3072,7 @@ class REXML::Elements
3052
3072
  # elements.index(ele_4) # => 3
3053
3073
  # elements.index(ele_3) # => -1
3054
3074
  #
3055
- # source://rexml//lib/rexml/element.rb#1773
3075
+ # source://rexml//lib/rexml/element.rb#1769
3056
3076
  def index(element); end
3057
3077
 
3058
3078
  # :call-seq:
@@ -3132,7 +3152,7 @@ class REXML::Elements
3132
3152
  # total += element.size
3133
3153
  # end # => 26
3134
3154
  #
3135
- # source://rexml//lib/rexml/element.rb#2073
3155
+ # source://rexml//lib/rexml/element.rb#2069
3136
3156
  def inject(xpath = T.unsafe(nil), initial = T.unsafe(nil)); end
3137
3157
 
3138
3158
  # :call-seq:
@@ -3146,7 +3166,7 @@ class REXML::Elements
3146
3166
  # elements = REXML::Elements.new(d.root)
3147
3167
  # elements.parent == d.root # => true
3148
3168
  #
3149
- # source://rexml//lib/rexml/element.rb#1623
3169
+ # source://rexml//lib/rexml/element.rb#1619
3150
3170
  def parent; end
3151
3171
 
3152
3172
  # :call-seq:
@@ -3158,7 +3178,7 @@ class REXML::Elements
3158
3178
  # d.root.elements.size # => 3 # Three elements.
3159
3179
  # d.root.size # => 6 # Three elements plus three text nodes..
3160
3180
  #
3161
- # source://rexml//lib/rexml/element.rb#2097
3181
+ # source://rexml//lib/rexml/element.rb#2093
3162
3182
  def size; end
3163
3183
 
3164
3184
  # :call-seq:
@@ -3179,14 +3199,14 @@ class REXML::Elements
3179
3199
  #
3180
3200
  # elements.to_a('//c') # => [<c/>]
3181
3201
  #
3182
- # source://rexml//lib/rexml/element.rb#2121
3202
+ # source://rexml//lib/rexml/element.rb#2117
3183
3203
  def to_a(xpath = T.unsafe(nil)); end
3184
3204
 
3185
3205
  private
3186
3206
 
3187
3207
  # Private helper class. Removes quotes from quoted strings
3188
3208
  #
3189
- # source://rexml//lib/rexml/element.rb#2129
3209
+ # source://rexml//lib/rexml/element.rb#2125
3190
3210
  def literalize(name); end
3191
3211
  end
3192
3212
 
@@ -3228,65 +3248,54 @@ class REXML::Entity < ::REXML::Child
3228
3248
  #
3229
3249
  # @return [Entity] a new instance of Entity
3230
3250
  #
3231
- # source://rexml//lib/rexml/entity.rb#33
3251
+ # source://rexml//lib/rexml/entity.rb#34
3232
3252
  def initialize(stream, value = T.unsafe(nil), parent = T.unsafe(nil), reference = T.unsafe(nil)); end
3233
3253
 
3234
3254
  # Returns the value of attribute external.
3235
3255
  #
3236
- # source://rexml//lib/rexml/entity.rb#22
3256
+ # source://rexml//lib/rexml/entity.rb#23
3237
3257
  def external; end
3238
3258
 
3239
3259
  # Returns the value of attribute name.
3240
3260
  #
3241
- # source://rexml//lib/rexml/entity.rb#22
3261
+ # source://rexml//lib/rexml/entity.rb#23
3242
3262
  def name; end
3243
3263
 
3244
3264
  # Returns the value of attribute ndata.
3245
3265
  #
3246
- # source://rexml//lib/rexml/entity.rb#22
3266
+ # source://rexml//lib/rexml/entity.rb#23
3247
3267
  def ndata; end
3248
3268
 
3249
3269
  # Returns the value of this entity unprocessed -- raw. This is the
3250
3270
  # normalized value; that is, with all %ent; and &ent; entities intact
3251
3271
  #
3252
- # source://rexml//lib/rexml/entity.rb#85
3272
+ # source://rexml//lib/rexml/entity.rb#86
3253
3273
  def normalized; end
3254
3274
 
3255
- # source://rexml//lib/rexml/entity.rb#138
3256
- def parent=(other); end
3257
-
3258
3275
  # Returns the value of attribute pubid.
3259
3276
  #
3260
- # source://rexml//lib/rexml/entity.rb#22
3277
+ # source://rexml//lib/rexml/entity.rb#23
3261
3278
  def pubid; end
3262
3279
 
3263
3280
  # Returns the value of attribute ref.
3264
3281
  #
3265
- # source://rexml//lib/rexml/entity.rb#22
3282
+ # source://rexml//lib/rexml/entity.rb#23
3266
3283
  def ref; end
3267
3284
 
3268
3285
  # Returns this entity as a string. See write().
3269
3286
  #
3270
- # source://rexml//lib/rexml/entity.rb#119
3287
+ # source://rexml//lib/rexml/entity.rb#120
3271
3288
  def to_s; end
3272
3289
 
3273
3290
  # Evaluates to the unnormalized value of this entity; that is, replacing
3274
- # all entities -- both %ent; and &ent; entities. This differs from
3275
- # +value()+ in that +value+ only replaces %ent; entities.
3291
+ # &ent; entities.
3276
3292
  #
3277
3293
  # source://rexml//lib/rexml/entity.rb#73
3278
3294
  def unnormalized; end
3279
3295
 
3280
- # Returns the value of this entity. At the moment, only internal entities
3281
- # are processed. If the value contains internal references (IE,
3282
- # %blah;), those are replaced with their values. IE, if the doctype
3283
- # contains:
3284
- # <!ENTITY % foo "bar">
3285
- # <!ENTITY yada "nanoo %foo; nanoo>
3286
- # then:
3287
- # doctype.entity('yada').value #-> "nanoo bar nanoo"
3296
+ # Returns the value of attribute value.
3288
3297
  #
3289
- # source://rexml//lib/rexml/entity.rb#134
3298
+ # source://rexml//lib/rexml/entity.rb#23
3290
3299
  def value; end
3291
3300
 
3292
3301
  # Write out a fully formed, correct entity definition (assuming the Entity
@@ -3298,21 +3307,16 @@ class REXML::Entity < ::REXML::Child
3298
3307
  # indent::
3299
3308
  # *DEPRECATED* and ignored
3300
3309
  #
3301
- # source://rexml//lib/rexml/entity.rb#97
3310
+ # source://rexml//lib/rexml/entity.rb#98
3302
3311
  def write(out, indent = T.unsafe(nil)); end
3303
3312
 
3304
- private
3305
-
3306
- # source://rexml//lib/rexml/entity.rb#144
3307
- def resolve_value; end
3308
-
3309
3313
  class << self
3310
3314
  # Evaluates whether the given string matches an entity definition,
3311
3315
  # returning true if so, and false otherwise.
3312
3316
  #
3313
3317
  # @return [Boolean]
3314
3318
  #
3315
- # source://rexml//lib/rexml/entity.rb#66
3319
+ # source://rexml//lib/rexml/entity.rb#67
3316
3320
  def matches?(string); end
3317
3321
  end
3318
3322
  end
@@ -3450,50 +3454,270 @@ class REXML::Formatters::Pretty < ::REXML::Formatters::Default
3450
3454
  def wrap(string, width); end
3451
3455
  end
3452
3456
 
3457
+ # If you add a method, keep in mind two things:
3458
+ # (1) the first argument will always be a list of nodes from which to
3459
+ # filter. In the case of context methods (such as position), the function
3460
+ # should return an array with a value for each child in the array.
3461
+ # (2) all method calls from XML will have "-" replaced with "_".
3462
+ # Therefore, in XML, "local-name()" is identical (and actually becomes)
3463
+ # "local_name()"
3464
+ #
3465
+ # source://rexml//lib/rexml/functions.rb#10
3466
+ module REXML::Functions
3467
+ class << self
3468
+ # source://rexml//lib/rexml/functions.rb#317
3469
+ def boolean(object = T.unsafe(nil)); end
3470
+
3471
+ # source://rexml//lib/rexml/functions.rb#417
3472
+ def ceiling(number); end
3473
+
3474
+ # source://rexml//lib/rexml/functions.rb#370
3475
+ def compare_language(lang1, lang2); end
3476
+
3477
+ # source://rexml//lib/rexml/functions.rb#190
3478
+ def concat(*objects); end
3479
+
3480
+ # Fixed by Mike Stok
3481
+ #
3482
+ # source://rexml//lib/rexml/functions.rb#204
3483
+ def contains(string, test); end
3484
+
3485
+ # source://rexml//lib/rexml/functions.rb#38
3486
+ def context=(value); end
3487
+
3488
+ # Returns the size of the given list of nodes.
3489
+ #
3490
+ # source://rexml//lib/rexml/functions.rb#60
3491
+ def count(node_set); end
3492
+
3493
+ # UNTESTED
3494
+ #
3495
+ # source://rexml//lib/rexml/functions.rb#347
3496
+ def false; end
3497
+
3498
+ # source://rexml//lib/rexml/functions.rb#413
3499
+ def floor(number); end
3500
+
3501
+ # Helper method.
3502
+ #
3503
+ # source://rexml//lib/rexml/functions.rb#87
3504
+ def get_namespace(node_set = T.unsafe(nil)); end
3505
+
3506
+ # Since REXML is non-validating, this method is not implemented as it
3507
+ # requires a DTD
3508
+ #
3509
+ # source://rexml//lib/rexml/functions.rb#66
3510
+ def id(object); end
3511
+
3512
+ # UNTESTED
3513
+ #
3514
+ # source://rexml//lib/rexml/functions.rb#352
3515
+ def lang(language); end
3516
+
3517
+ # Returns the last node of the given list of nodes.
3518
+ #
3519
+ # source://rexml//lib/rexml/functions.rb#51
3520
+ def last; end
3521
+
3522
+ # source://rexml//lib/rexml/functions.rb#69
3523
+ def local_name(node_set = T.unsafe(nil)); end
3524
+
3525
+ # source://rexml//lib/rexml/functions.rb#80
3526
+ def name(node_set = T.unsafe(nil)); end
3527
+
3528
+ # source://rexml//lib/rexml/functions.rb#35
3529
+ def namespace_context; end
3530
+
3531
+ # source://rexml//lib/rexml/functions.rb#33
3532
+ def namespace_context=(x); end
3533
+
3534
+ # source://rexml//lib/rexml/functions.rb#76
3535
+ def namespace_uri(node_set = T.unsafe(nil)); end
3536
+
3537
+ # source://rexml//lib/rexml/functions.rb#265
3538
+ def normalize_space(string = T.unsafe(nil)); end
3539
+
3540
+ # UNTESTED
3541
+ #
3542
+ # source://rexml//lib/rexml/functions.rb#337
3543
+ def not(object); end
3544
+
3545
+ # a string that consists of optional whitespace followed by an optional
3546
+ # minus sign followed by a Number followed by whitespace is converted to
3547
+ # the IEEE 754 number that is nearest (according to the IEEE 754
3548
+ # round-to-nearest rule) to the mathematical value represented by the
3549
+ # string; any other string is converted to NaN
3550
+ #
3551
+ # boolean true is converted to 1; boolean false is converted to 0
3552
+ #
3553
+ # a node-set is first converted to a string as if by a call to the string
3554
+ # function and then converted in the same way as a string argument
3555
+ #
3556
+ # an object of a type other than the four basic types is converted to a
3557
+ # number in a way that is dependent on that type
3558
+ #
3559
+ # source://rexml//lib/rexml/functions.rb#387
3560
+ def number(object = T.unsafe(nil)); end
3561
+
3562
+ # source://rexml//lib/rexml/functions.rb#55
3563
+ def position; end
3564
+
3565
+ # source://rexml//lib/rexml/functions.rb#432
3566
+ def processing_instruction(node); end
3567
+
3568
+ # source://rexml//lib/rexml/functions.rb#421
3569
+ def round(number); end
3570
+
3571
+ # source://rexml//lib/rexml/functions.rb#436
3572
+ def send(name, *args); end
3573
+
3574
+ # source://rexml//lib/rexml/functions.rb#26
3575
+ def singleton_method_added(name); end
3576
+
3577
+ # Fixed by Mike Stok
3578
+ #
3579
+ # source://rexml//lib/rexml/functions.rb#199
3580
+ def starts_with(string, test); end
3581
+
3582
+ # A node-set is converted to a string by returning the string-value of the
3583
+ # node in the node-set that is first in document order. If the node-set is
3584
+ # empty, an empty string is returned.
3585
+ #
3586
+ # A number is converted to a string as follows
3587
+ #
3588
+ # NaN is converted to the string NaN
3589
+ #
3590
+ # positive zero is converted to the string 0
3591
+ #
3592
+ # negative zero is converted to the string 0
3593
+ #
3594
+ # positive infinity is converted to the string Infinity
3595
+ #
3596
+ # negative infinity is converted to the string -Infinity
3597
+ #
3598
+ # if the number is an integer, the number is represented in decimal form
3599
+ # as a Number with no decimal point and no leading zeros, preceded by a
3600
+ # minus sign (-) if the number is negative
3601
+ #
3602
+ # otherwise, the number is represented in decimal form as a Number
3603
+ # including a decimal point with at least one digit before the decimal
3604
+ # point and at least one digit after the decimal point, preceded by a
3605
+ # minus sign (-) if the number is negative; there must be no leading zeros
3606
+ # before the decimal point apart possibly from the one required digit
3607
+ # immediately before the decimal point; beyond the one required digit
3608
+ # after the decimal point there must be as many, but only as many, more
3609
+ # digits as are needed to uniquely distinguish the number from all other
3610
+ # IEEE 754 numeric values.
3611
+ #
3612
+ # The boolean false value is converted to the string false. The boolean
3613
+ # true value is converted to the string true.
3614
+ #
3615
+ # An object of a type other than the four basic types is converted to a
3616
+ # string in a way that is dependent on that type.
3617
+ #
3618
+ # source://rexml//lib/rexml/functions.rb#138
3619
+ def string(object = T.unsafe(nil)); end
3620
+
3621
+ # UNTESTED
3622
+ #
3623
+ # source://rexml//lib/rexml/functions.rb#261
3624
+ def string_length(string); end
3625
+
3626
+ # A node-set is converted to a string by
3627
+ # returning the concatenation of the string-value
3628
+ # of each of the children of the node in the
3629
+ # node-set that is first in document order.
3630
+ # If the node-set is empty, an empty string is returned.
3631
+ #
3632
+ # source://rexml//lib/rexml/functions.rb#178
3633
+ def string_value(o); end
3634
+
3635
+ # Take equal portions of Mike Stok and Sean Russell; mix
3636
+ # vigorously, and pour into a tall, chilled glass. Serves 10,000.
3637
+ #
3638
+ # source://rexml//lib/rexml/functions.rb#228
3639
+ def substring(string, start, length = T.unsafe(nil)); end
3640
+
3641
+ # Kouhei fixed this too
3642
+ #
3643
+ # source://rexml//lib/rexml/functions.rb#220
3644
+ def substring_after(string, test); end
3645
+
3646
+ # Kouhei fixed this
3647
+ #
3648
+ # source://rexml//lib/rexml/functions.rb#209
3649
+ def substring_before(string, test); end
3650
+
3651
+ # source://rexml//lib/rexml/functions.rb#408
3652
+ def sum(nodes); end
3653
+
3654
+ # source://rexml//lib/rexml/functions.rb#40
3655
+ def text; end
3656
+
3657
+ # This is entirely Mike Stok's beast
3658
+ #
3659
+ # source://rexml//lib/rexml/functions.rb#275
3660
+ def translate(string, tr1, tr2); end
3661
+
3662
+ # UNTESTED
3663
+ #
3664
+ # source://rexml//lib/rexml/functions.rb#342
3665
+ def true; end
3666
+
3667
+ # source://rexml//lib/rexml/functions.rb#36
3668
+ def variables; end
3669
+
3670
+ # source://rexml//lib/rexml/functions.rb#34
3671
+ def variables=(x); end
3672
+ end
3673
+ end
3674
+
3453
3675
  # A Source that wraps an IO. See the Source class for method
3454
3676
  # documentation
3455
3677
  #
3456
- # source://rexml//lib/rexml/source.rb#159
3678
+ # source://rexml//lib/rexml/source.rb#215
3457
3679
  class REXML::IOSource < ::REXML::Source
3458
3680
  # block_size has been deprecated
3459
3681
  #
3460
3682
  # @return [IOSource] a new instance of IOSource
3461
3683
  #
3462
- # source://rexml//lib/rexml/source.rb#163
3684
+ # source://rexml//lib/rexml/source.rb#219
3463
3685
  def initialize(arg, block_size = T.unsafe(nil), encoding = T.unsafe(nil)); end
3464
3686
 
3465
- # source://rexml//lib/rexml/source.rb#215
3466
- def consume(pattern); end
3467
-
3468
3687
  # @return the current line in the source
3469
3688
  #
3470
- # source://rexml//lib/rexml/source.rb#244
3689
+ # source://rexml//lib/rexml/source.rb#324
3471
3690
  def current_line; end
3472
3691
 
3473
3692
  # @return [Boolean]
3474
3693
  #
3475
- # source://rexml//lib/rexml/source.rb#235
3694
+ # source://rexml//lib/rexml/source.rb#319
3476
3695
  def empty?; end
3477
3696
 
3478
- # source://rexml//lib/rexml/source.rb#219
3697
+ # source://rexml//lib/rexml/source.rb#279
3698
+ def ensure_buffer; end
3699
+
3700
+ # source://rexml//lib/rexml/source.rb#283
3479
3701
  def match(pattern, cons = T.unsafe(nil)); end
3480
3702
 
3481
- # source://rexml//lib/rexml/source.rb#239
3482
- def position; end
3703
+ # @return [Boolean]
3704
+ #
3705
+ # source://rexml//lib/rexml/source.rb#302
3706
+ def match?(pattern, cons = T.unsafe(nil)); end
3483
3707
 
3484
- # source://rexml//lib/rexml/source.rb#207
3485
- def read; end
3708
+ # source://rexml//lib/rexml/source.rb#240
3709
+ def read(term = T.unsafe(nil), min_bytes = T.unsafe(nil)); end
3486
3710
 
3487
- # source://rexml//lib/rexml/source.rb#184
3488
- def scan(pattern, cons = T.unsafe(nil)); end
3711
+ # source://rexml//lib/rexml/source.rb#261
3712
+ def read_until(term); end
3489
3713
 
3490
3714
  private
3491
3715
 
3492
- # source://rexml//lib/rexml/source.rb#286
3716
+ # source://rexml//lib/rexml/source.rb#371
3493
3717
  def encoding_updated; end
3494
3718
 
3495
- # source://rexml//lib/rexml/source.rb#266
3496
- def readline; end
3719
+ # source://rexml//lib/rexml/source.rb#346
3720
+ def readline(term = T.unsafe(nil)); end
3497
3721
  end
3498
3722
 
3499
3723
  # Represents an XML Instruction; IE, <? ... ?>
@@ -3562,6 +3786,112 @@ class REXML::Instruction < ::REXML::Child
3562
3786
  def write(writer, indent = T.unsafe(nil), transitive = T.unsafe(nil), ie_hack = T.unsafe(nil)); end
3563
3787
  end
3564
3788
 
3789
+ # source://rexml//lib/rexml/light/node.rb#5
3790
+ module REXML::Light; end
3791
+
3792
+ # Represents a tagged XML element. Elements are characterized by
3793
+ # having children, attributes, and names, and can themselves be
3794
+ # children.
3795
+ #
3796
+ # source://rexml//lib/rexml/light/node.rb#9
3797
+ class REXML::Light::Node
3798
+ # Create a new element.
3799
+ #
3800
+ # @return [Node] a new instance of Node
3801
+ #
3802
+ # source://rexml//lib/rexml/light/node.rb#13
3803
+ def initialize(node = T.unsafe(nil)); end
3804
+
3805
+ # Append a child to this element, optionally under a provided namespace.
3806
+ # The namespace argument is ignored if the element argument is an Element
3807
+ # object. Otherwise, the element argument is a string, the namespace (if
3808
+ # provided) is the namespace the element is created in.
3809
+ #
3810
+ # source://rexml//lib/rexml/light/node.rb#114
3811
+ def <<(element); end
3812
+
3813
+ # source://rexml//lib/rexml/light/node.rb#90
3814
+ def =~(path); end
3815
+
3816
+ # source://rexml//lib/rexml/light/node.rb#78
3817
+ def [](reference, ns = T.unsafe(nil)); end
3818
+
3819
+ # Doesn't handle namespaces yet
3820
+ #
3821
+ # source://rexml//lib/rexml/light/node.rb#95
3822
+ def []=(reference, ns, value = T.unsafe(nil)); end
3823
+
3824
+ # source://rexml//lib/rexml/light/node.rb#143
3825
+ def children; end
3826
+
3827
+ # source://rexml//lib/rexml/light/node.rb#36
3828
+ def each; end
3829
+
3830
+ # @return [Boolean]
3831
+ #
3832
+ # source://rexml//lib/rexml/light/node.rb#139
3833
+ def has_name?(name, namespace = T.unsafe(nil)); end
3834
+
3835
+ # source://rexml//lib/rexml/light/node.rb#54
3836
+ def local_name; end
3837
+
3838
+ # source://rexml//lib/rexml/light/node.rb#59
3839
+ def local_name=(name_str); end
3840
+
3841
+ # source://rexml//lib/rexml/light/node.rb#40
3842
+ def name; end
3843
+
3844
+ # source://rexml//lib/rexml/light/node.rb#44
3845
+ def name=(name_str, ns = T.unsafe(nil)); end
3846
+
3847
+ # source://rexml//lib/rexml/light/node.rb#67
3848
+ def namespace(prefix = T.unsafe(nil)); end
3849
+
3850
+ # source://rexml//lib/rexml/light/node.rb#71
3851
+ def namespace=(namespace); end
3852
+
3853
+ # source://rexml//lib/rexml/light/node.rb#125
3854
+ def node_type; end
3855
+
3856
+ # source://rexml//lib/rexml/light/node.rb#147
3857
+ def parent; end
3858
+
3859
+ # source://rexml//lib/rexml/light/node.rb#50
3860
+ def parent=(node); end
3861
+
3862
+ # source://rexml//lib/rexml/light/node.rb#63
3863
+ def prefix(namespace = T.unsafe(nil)); end
3864
+
3865
+ # source://rexml//lib/rexml/light/node.rb#134
3866
+ def root; end
3867
+
3868
+ # source://rexml//lib/rexml/light/node.rb#28
3869
+ def size; end
3870
+
3871
+ # source://rexml//lib/rexml/light/node.rb#129
3872
+ def text=(foo); end
3873
+
3874
+ # source://rexml//lib/rexml/light/node.rb#151
3875
+ def to_s; end
3876
+
3877
+ private
3878
+
3879
+ # source://rexml//lib/rexml/light/node.rb#164
3880
+ def namespace_of(node, prefix = T.unsafe(nil)); end
3881
+
3882
+ # source://rexml//lib/rexml/light/node.rb#157
3883
+ def namesplit; end
3884
+
3885
+ # source://rexml//lib/rexml/light/node.rb#176
3886
+ def prefix_of(node, namespace = T.unsafe(nil)); end
3887
+ end
3888
+
3889
+ # source://rexml//lib/rexml/light/node.rb#10
3890
+ REXML::Light::Node::NAMESPLIT = T.let(T.unsafe(nil), Regexp)
3891
+
3892
+ # source://rexml//lib/rexml/light/node.rb#11
3893
+ REXML::Light::Node::PARENTS = T.let(T.unsafe(nil), Array)
3894
+
3565
3895
  # Adds named attributes to an object.
3566
3896
  #
3567
3897
  # source://rexml//lib/rexml/namespace.rb#7
@@ -3610,6 +3940,54 @@ end
3610
3940
  # source://rexml//lib/rexml/namespace.rb#13
3611
3941
  REXML::Namespace::NAME_WITHOUT_NAMESPACE = T.let(T.unsafe(nil), Regexp)
3612
3942
 
3943
+ # Represents a node in the tree. Nodes are never encountered except as
3944
+ # superclasses of other objects. Nodes have siblings.
3945
+ #
3946
+ # source://rexml//lib/rexml/node.rb#9
3947
+ module REXML::Node
3948
+ # Visit all subnodes of +self+ recursively
3949
+ #
3950
+ # source://rexml//lib/rexml/node.rb#54
3951
+ def each_recursive(&block); end
3952
+
3953
+ # Find (and return) first subnode (recursively) for which the block
3954
+ # evaluates to true. Returns +nil+ if none was found.
3955
+ #
3956
+ # source://rexml//lib/rexml/node.rb#67
3957
+ def find_first_recursive(&block); end
3958
+
3959
+ # source://rexml//lib/rexml/node.rb#39
3960
+ def indent(to, ind); end
3961
+
3962
+ # Returns the position that +self+ holds in its parent's array, indexed
3963
+ # from 1.
3964
+ #
3965
+ # source://rexml//lib/rexml/node.rb#76
3966
+ def index_in_parent; end
3967
+
3968
+ # @return the next sibling (nil if unset)
3969
+ #
3970
+ # source://rexml//lib/rexml/node.rb#11
3971
+ def next_sibling_node; end
3972
+
3973
+ # @return [Boolean]
3974
+ #
3975
+ # source://rexml//lib/rexml/node.rb#48
3976
+ def parent?; end
3977
+
3978
+ # @return the previous sibling (nil if unset)
3979
+ #
3980
+ # source://rexml//lib/rexml/node.rb#17
3981
+ def previous_sibling_node; end
3982
+
3983
+ # indent::
3984
+ # *DEPRECATED* This parameter is now ignored. See the formatters in the
3985
+ # REXML::Formatters package for changing the output style.
3986
+ #
3987
+ # source://rexml//lib/rexml/node.rb#27
3988
+ def to_s(indent = T.unsafe(nil)); end
3989
+ end
3990
+
3613
3991
  # source://rexml//lib/rexml/doctype.rb#280
3614
3992
  class REXML::NotationDecl < ::REXML::Child
3615
3993
  # @return [NotationDecl] a new instance of NotationDecl
@@ -3816,7 +4194,7 @@ class REXML::ParseException < ::RuntimeError
3816
4194
  # source://rexml//lib/rexml/parseexception.rb#6
3817
4195
  def initialize(message, source = T.unsafe(nil), parser = T.unsafe(nil), exception = T.unsafe(nil)); end
3818
4196
 
3819
- # source://rexml//lib/rexml/parseexception.rb#48
4197
+ # source://rexml//lib/rexml/parseexception.rb#49
3820
4198
  def context; end
3821
4199
 
3822
4200
  # Returns the value of attribute continued_exception.
@@ -3831,7 +4209,7 @@ class REXML::ParseException < ::RuntimeError
3831
4209
  # source://rexml//lib/rexml/parseexception.rb#4
3832
4210
  def continued_exception=(_arg0); end
3833
4211
 
3834
- # source://rexml//lib/rexml/parseexception.rb#43
4212
+ # source://rexml//lib/rexml/parseexception.rb#44
3835
4213
  def line; end
3836
4214
 
3837
4215
  # Returns the value of attribute parser.
@@ -3846,7 +4224,7 @@ class REXML::ParseException < ::RuntimeError
3846
4224
  # source://rexml//lib/rexml/parseexception.rb#4
3847
4225
  def parser=(_arg0); end
3848
4226
 
3849
- # source://rexml//lib/rexml/parseexception.rb#38
4227
+ # source://rexml//lib/rexml/parseexception.rb#39
3850
4228
  def position; end
3851
4229
 
3852
4230
  # Returns the value of attribute source.
@@ -3885,36 +4263,55 @@ end
3885
4263
  #
3886
4264
  # Nat Price gave me some good ideas for the API.
3887
4265
  #
3888
- # source://rexml//lib/rexml/parsers/baseparser.rb#29
4266
+ # source://rexml//lib/rexml/parsers/baseparser.rb#57
3889
4267
  class REXML::Parsers::BaseParser
3890
4268
  # @return [BaseParser] a new instance of BaseParser
3891
4269
  #
3892
- # source://rexml//lib/rexml/parsers/baseparser.rb#115
4270
+ # source://rexml//lib/rexml/parsers/baseparser.rb#163
3893
4271
  def initialize(source); end
3894
4272
 
3895
- # source://rexml//lib/rexml/parsers/baseparser.rb#120
4273
+ # source://rexml//lib/rexml/parsers/baseparser.rb#173
3896
4274
  def add_listener(listener); end
3897
4275
 
3898
4276
  # Returns true if there are no more events
3899
4277
  #
3900
4278
  # @return [Boolean]
3901
4279
  #
3902
- # source://rexml//lib/rexml/parsers/baseparser.rb#146
4280
+ # source://rexml//lib/rexml/parsers/baseparser.rb#208
3903
4281
  def empty?; end
3904
4282
 
3905
- # source://rexml//lib/rexml/parsers/baseparser.rb#438
4283
+ # source://rexml//lib/rexml/parsers/baseparser.rb#543
3906
4284
  def entity(reference, entities); end
3907
4285
 
4286
+ # Returns the value of attribute entity_expansion_count.
4287
+ #
4288
+ # source://rexml//lib/rexml/parsers/baseparser.rb#178
4289
+ def entity_expansion_count; end
4290
+
4291
+ # Sets the attribute entity_expansion_limit
4292
+ #
4293
+ # @param value the value to set the attribute entity_expansion_limit to.
4294
+ #
4295
+ # source://rexml//lib/rexml/parsers/baseparser.rb#179
4296
+ def entity_expansion_limit=(_arg0); end
4297
+
4298
+ # Sets the attribute entity_expansion_text_limit
4299
+ #
4300
+ # @param value the value to set the attribute entity_expansion_text_limit to.
4301
+ #
4302
+ # source://rexml//lib/rexml/parsers/baseparser.rb#180
4303
+ def entity_expansion_text_limit=(_arg0); end
4304
+
3908
4305
  # Returns true if there are more events. Synonymous with !empty?
3909
4306
  #
3910
4307
  # @return [Boolean]
3911
4308
  #
3912
- # source://rexml//lib/rexml/parsers/baseparser.rb#151
4309
+ # source://rexml//lib/rexml/parsers/baseparser.rb#213
3913
4310
  def has_next?; end
3914
4311
 
3915
4312
  # Escapes all possible entities
3916
4313
  #
3917
- # source://rexml//lib/rexml/parsers/baseparser.rb#449
4314
+ # source://rexml//lib/rexml/parsers/baseparser.rb#554
3918
4315
  def normalize(input, entities = T.unsafe(nil), entity_filter = T.unsafe(nil)); end
3919
4316
 
3920
4317
  # Peek at the +depth+ event in the stack. The first element on the stack
@@ -3924,75 +4321,132 @@ class REXML::Parsers::BaseParser
3924
4321
  # event, so you can effectively pre-parse the entire document (pull the
3925
4322
  # entire thing into memory) using this method.
3926
4323
  #
3927
- # source://rexml//lib/rexml/parsers/baseparser.rb#167
4324
+ # source://rexml//lib/rexml/parsers/baseparser.rb#229
3928
4325
  def peek(depth = T.unsafe(nil)); end
3929
4326
 
3930
- # source://rexml//lib/rexml/parsers/baseparser.rb#136
4327
+ # source://rexml//lib/rexml/parsers/baseparser.rb#198
3931
4328
  def position; end
3932
4329
 
3933
4330
  # Returns the next event. This is a +PullEvent+ object.
3934
4331
  #
3935
- # source://rexml//lib/rexml/parsers/baseparser.rb#182
4332
+ # source://rexml//lib/rexml/parsers/baseparser.rb#244
3936
4333
  def pull; end
3937
4334
 
4335
+ # source://rexml//lib/rexml/parsers/baseparser.rb#187
4336
+ def reset; end
4337
+
3938
4338
  # Returns the value of attribute source.
3939
4339
  #
3940
- # source://rexml//lib/rexml/parsers/baseparser.rb#124
4340
+ # source://rexml//lib/rexml/parsers/baseparser.rb#177
3941
4341
  def source; end
3942
4342
 
3943
- # source://rexml//lib/rexml/parsers/baseparser.rb#126
4343
+ # source://rexml//lib/rexml/parsers/baseparser.rb#182
3944
4344
  def stream=(source); end
3945
4345
 
3946
4346
  # Unescapes all possible entities
3947
4347
  #
3948
- # source://rexml//lib/rexml/parsers/baseparser.rb#465
4348
+ # source://rexml//lib/rexml/parsers/baseparser.rb#570
3949
4349
  def unnormalize(string, entities = T.unsafe(nil), filter = T.unsafe(nil)); end
3950
4350
 
3951
4351
  # Push an event back on the head of the stream. This method
3952
4352
  # has (theoretically) infinite depth.
3953
4353
  #
3954
- # source://rexml//lib/rexml/parsers/baseparser.rb#157
4354
+ # source://rexml//lib/rexml/parsers/baseparser.rb#219
3955
4355
  def unshift(token); end
3956
4356
 
3957
4357
  private
3958
4358
 
4359
+ # source://rexml//lib/rexml/parsers/baseparser.rb#619
4360
+ def add_namespace(prefix, uri); end
4361
+
3959
4362
  # @return [Boolean]
3960
4363
  #
3961
- # source://rexml//lib/rexml/parsers/baseparser.rb#495
4364
+ # source://rexml//lib/rexml/parsers/baseparser.rb#652
3962
4365
  def need_source_encoding_update?(xml_declaration_encoding); end
3963
4366
 
3964
- # source://rexml//lib/rexml/parsers/baseparser.rb#589
3965
- def parse_attributes(prefixes, curr_ns); end
4367
+ # source://rexml//lib/rexml/parsers/baseparser.rb#791
4368
+ def parse_attributes(prefixes); end
3966
4369
 
3967
- # source://rexml//lib/rexml/parsers/baseparser.rb#514
4370
+ # source://rexml//lib/rexml/parsers/baseparser.rb#671
3968
4371
  def parse_id(base_error_message, accept_external_id:, accept_public_id:); end
3969
4372
 
3970
- # source://rexml//lib/rexml/parsers/baseparser.rb#542
4373
+ # source://rexml//lib/rexml/parsers/baseparser.rb#699
3971
4374
  def parse_id_invalid_details(accept_external_id:, accept_public_id:); end
3972
4375
 
3973
- # source://rexml//lib/rexml/parsers/baseparser.rb#501
4376
+ # source://rexml//lib/rexml/parsers/baseparser.rb#658
3974
4377
  def parse_name(base_error_message); end
3975
4378
 
3976
- # source://rexml//lib/rexml/parsers/baseparser.rb#580
4379
+ # source://rexml//lib/rexml/parsers/baseparser.rb#634
4380
+ def pop_namespaces_restore; end
4381
+
4382
+ # source://rexml//lib/rexml/parsers/baseparser.rb#737
3977
4383
  def process_instruction; end
3978
4384
 
3979
- # source://rexml//lib/rexml/parsers/baseparser.rb#190
4385
+ # source://rexml//lib/rexml/parsers/baseparser.rb#254
3980
4386
  def pull_event; end
4387
+
4388
+ # source://rexml//lib/rexml/parsers/baseparser.rb#628
4389
+ def push_namespaces_restore; end
4390
+
4391
+ # source://rexml//lib/rexml/parsers/baseparser.rb#645
4392
+ def record_entity_expansion(delta = T.unsafe(nil)); end
4393
+
4394
+ # source://rexml//lib/rexml/parsers/baseparser.rb#777
4395
+ def scan_quote; end
3981
4396
  end
3982
4397
 
3983
- # source://rexml//lib/rexml/parsers/baseparser.rb#102
4398
+ # source://rexml//lib/rexml/parsers/baseparser.rb#130
3984
4399
  REXML::Parsers::BaseParser::EXTERNAL_ID_PUBLIC = T.let(T.unsafe(nil), Regexp)
3985
4400
 
3986
- # source://rexml//lib/rexml/parsers/baseparser.rb#103
4401
+ # source://rexml//lib/rexml/parsers/baseparser.rb#131
3987
4402
  REXML::Parsers::BaseParser::EXTERNAL_ID_SYSTEM = T.let(T.unsafe(nil), Regexp)
3988
4403
 
3989
- # source://rexml//lib/rexml/parsers/baseparser.rb#104
4404
+ # source://rexml//lib/rexml/parsers/baseparser.rb#132
3990
4405
  REXML::Parsers::BaseParser::PUBLIC_ID = T.let(T.unsafe(nil), Regexp)
3991
4406
 
3992
- # source://rexml//lib/rexml/parsers/baseparser.rb#38
4407
+ # source://rexml//lib/rexml/parsers/baseparser.rb#143
4408
+ module REXML::Parsers::BaseParser::Private; end
4409
+
4410
+ # source://rexml//lib/rexml/parsers/baseparser.rb#147
4411
+ REXML::Parsers::BaseParser::Private::ATTLISTDECL_END = T.let(T.unsafe(nil), Regexp)
4412
+
4413
+ # source://rexml//lib/rexml/parsers/baseparser.rb#152
4414
+ REXML::Parsers::BaseParser::Private::CARRIAGE_RETURN_NEWLINE_PATTERN = T.let(T.unsafe(nil), Regexp)
4415
+
4416
+ # source://rexml//lib/rexml/parsers/baseparser.rb#153
4417
+ REXML::Parsers::BaseParser::Private::CHARACTER_REFERENCES = T.let(T.unsafe(nil), Regexp)
4418
+
4419
+ # source://rexml//lib/rexml/parsers/baseparser.rb#146
4420
+ REXML::Parsers::BaseParser::Private::CLOSE_PATTERN = T.let(T.unsafe(nil), Regexp)
4421
+
4422
+ # source://rexml//lib/rexml/parsers/baseparser.rb#154
4423
+ REXML::Parsers::BaseParser::Private::DEFAULT_ENTITIES_PATTERNS = T.let(T.unsafe(nil), Hash)
4424
+
4425
+ # source://rexml//lib/rexml/parsers/baseparser.rb#151
4426
+ REXML::Parsers::BaseParser::Private::ENTITYDECL_PATTERN = T.let(T.unsafe(nil), Regexp)
4427
+
4428
+ # source://rexml//lib/rexml/parsers/baseparser.rb#149
4429
+ REXML::Parsers::BaseParser::Private::GEDECL_PATTERN = T.let(T.unsafe(nil), String)
4430
+
4431
+ # source://rexml//lib/rexml/parsers/baseparser.rb#148
4432
+ REXML::Parsers::BaseParser::Private::NAME_PATTERN = T.let(T.unsafe(nil), Regexp)
4433
+
4434
+ # source://rexml//lib/rexml/parsers/baseparser.rb#150
4435
+ REXML::Parsers::BaseParser::Private::PEDECL_PATTERN = T.let(T.unsafe(nil), String)
4436
+
4437
+ # source://rexml//lib/rexml/parsers/baseparser.rb#144
4438
+ REXML::Parsers::BaseParser::Private::PEREFERENCE_PATTERN = T.let(T.unsafe(nil), Regexp)
4439
+
4440
+ # source://rexml//lib/rexml/parsers/baseparser.rb#145
4441
+ REXML::Parsers::BaseParser::Private::TAG_PATTERN = T.let(T.unsafe(nil), Regexp)
4442
+
4443
+ # source://rexml//lib/rexml/parsers/baseparser.rb#159
4444
+ REXML::Parsers::BaseParser::Private::XML_PREFIXED_NAMESPACE = T.let(T.unsafe(nil), String)
4445
+
4446
+ # source://rexml//lib/rexml/parsers/baseparser.rb#66
3993
4447
  REXML::Parsers::BaseParser::QNAME = T.let(T.unsafe(nil), Regexp)
3994
4448
 
3995
- # source://rexml//lib/rexml/parsers/baseparser.rb#37
4449
+ # source://rexml//lib/rexml/parsers/baseparser.rb#65
3996
4450
  REXML::Parsers::BaseParser::QNAME_STR = T.let(T.unsafe(nil), String)
3997
4451
 
3998
4452
  # source://rexml//lib/rexml/parsers/streamparser.rb#6
@@ -4006,6 +4460,15 @@ class REXML::Parsers::StreamParser
4006
4460
  def add_listener(listener); end
4007
4461
 
4008
4462
  # source://rexml//lib/rexml/parsers/streamparser.rb#17
4463
+ def entity_expansion_count; end
4464
+
4465
+ # source://rexml//lib/rexml/parsers/streamparser.rb#21
4466
+ def entity_expansion_limit=(limit); end
4467
+
4468
+ # source://rexml//lib/rexml/parsers/streamparser.rb#25
4469
+ def entity_expansion_text_limit=(limit); end
4470
+
4471
+ # source://rexml//lib/rexml/parsers/streamparser.rb#29
4009
4472
  def parse; end
4010
4473
  end
4011
4474
 
@@ -4184,10 +4647,35 @@ class REXML::ReferenceWriter
4184
4647
  def write(output); end
4185
4648
  end
4186
4649
 
4650
+ # source://rexml//lib/rexml/security.rb#3
4651
+ module REXML::Security
4652
+ class << self
4653
+ # Get the entity expansion limit. By default the limit is set to 10000.
4654
+ #
4655
+ # source://rexml//lib/rexml/security.rb#12
4656
+ def entity_expansion_limit; end
4657
+
4658
+ # Set the entity expansion limit. By default the limit is set to 10000.
4659
+ #
4660
+ # source://rexml//lib/rexml/security.rb#7
4661
+ def entity_expansion_limit=(val); end
4662
+
4663
+ # Get the entity expansion limit. By default the limit is set to 10240.
4664
+ #
4665
+ # source://rexml//lib/rexml/security.rb#24
4666
+ def entity_expansion_text_limit; end
4667
+
4668
+ # Set the entity expansion limit. By default the limit is set to 10240.
4669
+ #
4670
+ # source://rexml//lib/rexml/security.rb#19
4671
+ def entity_expansion_text_limit=(val); end
4672
+ end
4673
+ end
4674
+
4187
4675
  # A Source can be searched for patterns, and wraps buffers and other
4188
4676
  # objects and provides consumption of text
4189
4677
  #
4190
- # source://rexml//lib/rexml/source.rb#31
4678
+ # source://rexml//lib/rexml/source.rb#61
4191
4679
  class REXML::Source
4192
4680
  include ::REXML::Encoding
4193
4681
 
@@ -4198,88 +4686,108 @@ class REXML::Source
4198
4686
  # @param encoding if non-null, sets the encoding of the source to this
4199
4687
  # @return [Source] a new instance of Source
4200
4688
  #
4201
- # source://rexml//lib/rexml/source.rb#43
4689
+ # source://rexml//lib/rexml/source.rb#87
4202
4690
  def initialize(arg, encoding = T.unsafe(nil)); end
4203
4691
 
4204
4692
  # The current buffer (what we're going to read next)
4205
4693
  #
4206
- # source://rexml//lib/rexml/source.rb#34
4694
+ # source://rexml//lib/rexml/source.rb#100
4207
4695
  def buffer; end
4208
4696
 
4209
- # source://rexml//lib/rexml/source.rb#87
4210
- def consume(pattern); end
4697
+ # source://rexml//lib/rexml/source.rb#110
4698
+ def buffer_encoding=(encoding); end
4211
4699
 
4212
4700
  # @return the current line in the source
4213
4701
  #
4214
- # source://rexml//lib/rexml/source.rb#117
4702
+ # source://rexml//lib/rexml/source.rb#175
4215
4703
  def current_line; end
4216
4704
 
4705
+ # source://rexml//lib/rexml/source.rb#104
4706
+ def drop_parsed_content; end
4707
+
4217
4708
  # @return [Boolean] true if the Source is exhausted
4218
4709
  #
4219
- # source://rexml//lib/rexml/source.rb#108
4710
+ # source://rexml//lib/rexml/source.rb#170
4220
4711
  def empty?; end
4221
4712
 
4222
4713
  # Returns the value of attribute encoding.
4223
4714
  #
4224
- # source://rexml//lib/rexml/source.rb#37
4715
+ # source://rexml//lib/rexml/source.rb#65
4225
4716
  def encoding; end
4226
4717
 
4227
4718
  # Inherited from Encoding
4228
4719
  # Overridden to support optimized en/decoding
4229
4720
  #
4230
- # source://rexml//lib/rexml/source.rb#56
4721
+ # source://rexml//lib/rexml/source.rb#116
4231
4722
  def encoding=(enc); end
4232
4723
 
4724
+ # source://rexml//lib/rexml/source.rb#134
4725
+ def ensure_buffer; end
4726
+
4233
4727
  # The line number of the last consumed text
4234
4728
  #
4235
- # source://rexml//lib/rexml/source.rb#36
4729
+ # source://rexml//lib/rexml/source.rb#64
4236
4730
  def line; end
4237
4731
 
4238
- # source://rexml//lib/rexml/source.rb#101
4732
+ # source://rexml//lib/rexml/source.rb#137
4239
4733
  def match(pattern, cons = T.unsafe(nil)); end
4240
4734
 
4241
- # source://rexml//lib/rexml/source.rb#91
4242
- def match_to(char, pattern); end
4735
+ # @return [Boolean]
4736
+ #
4737
+ # source://rexml//lib/rexml/source.rb#145
4738
+ def match?(pattern, cons = T.unsafe(nil)); end
4243
4739
 
4244
- # source://rexml//lib/rexml/source.rb#95
4245
- def match_to_consume(char, pattern); end
4740
+ # source://rexml//lib/rexml/source.rb#161
4741
+ def peek_byte; end
4246
4742
 
4247
- # source://rexml//lib/rexml/source.rb#112
4743
+ # source://rexml//lib/rexml/source.rb#153
4248
4744
  def position; end
4249
4745
 
4250
- # source://rexml//lib/rexml/source.rb#84
4251
- def read; end
4252
-
4253
- # Scans the source for a given pattern. Note, that this is not your
4254
- # usual scan() method. For one thing, the pattern argument has some
4255
- # requirements; for another, the source can be consumed. You can easily
4256
- # confuse this method. Originally, the patterns were easier
4257
- # to construct and this method more robust, because this method
4258
- # generated search regexps on the fly; however, this was
4259
- # computationally expensive and slowed down the entire REXML package
4260
- # considerably, since this is by far the most commonly called method.
4261
- # /^\s*(#{your pattern, with no groups})(.*)/. The first group
4262
- # will be returned; the second group is used if the consume flag is
4263
- # set.
4264
- # everything after it in the Source.
4265
- # pattern is not found.
4266
- #
4267
- # @param pattern must be a Regexp, and must be in the form of
4268
- # @param consume if true, the pattern returned will be consumed, leaving
4269
- # @return the pattern, if found, or nil if the Source is empty or the
4270
- #
4271
- # source://rexml//lib/rexml/source.rb#77
4272
- def scan(pattern, cons = T.unsafe(nil)); end
4746
+ # source://rexml//lib/rexml/source.rb#157
4747
+ def position=(pos); end
4748
+
4749
+ # source://rexml//lib/rexml/source.rb#121
4750
+ def read(term = T.unsafe(nil)); end
4751
+
4752
+ # source://rexml//lib/rexml/source.rb#124
4753
+ def read_until(term); end
4754
+
4755
+ # source://rexml//lib/rexml/source.rb#165
4756
+ def scan_byte; end
4273
4757
 
4274
4758
  private
4275
4759
 
4276
- # source://rexml//lib/rexml/source.rb#125
4760
+ # source://rexml//lib/rexml/source.rb#184
4277
4761
  def detect_encoding; end
4278
4762
 
4279
- # source://rexml//lib/rexml/source.rb#146
4763
+ # source://rexml//lib/rexml/source.rb#202
4280
4764
  def encoding_updated; end
4281
4765
  end
4282
4766
 
4767
+ # source://rexml//lib/rexml/source.rb#67
4768
+ module REXML::Source::Private; end
4769
+
4770
+ # source://rexml//lib/rexml/source.rb#69
4771
+ REXML::Source::Private::PRE_DEFINED_TERM_PATTERNS = T.let(T.unsafe(nil), Hash)
4772
+
4773
+ # source://rexml//lib/rexml/source.rb#68
4774
+ REXML::Source::Private::SCANNER_RESET_SIZE = T.let(T.unsafe(nil), Integer)
4775
+
4776
+ # Generates Source-s. USE THIS CLASS.
4777
+ #
4778
+ # source://rexml//lib/rexml/source.rb#38
4779
+ class REXML::SourceFactory
4780
+ class << self
4781
+ # Generates a Source object
4782
+ #
4783
+ # @param arg Either a String, or an IO
4784
+ # @return a Source, or nil if a bad argument was given
4785
+ #
4786
+ # source://rexml//lib/rexml/source.rb#42
4787
+ def create_from(arg); end
4788
+ end
4789
+ end
4790
+
4283
4791
  # Represents text nodes in an XML document
4284
4792
  #
4285
4793
  # source://rexml//lib/rexml/text.rb#11
@@ -4325,7 +4833,7 @@ class REXML::Text < ::REXML::Child
4325
4833
  #
4326
4834
  # @return [Text] a new instance of Text
4327
4835
  #
4328
- # source://rexml//lib/rexml/text.rb#94
4836
+ # source://rexml//lib/rexml/text.rb#79
4329
4837
  def initialize(arg, respect_whitespace = T.unsafe(nil), parent = T.unsafe(nil), raw = T.unsafe(nil), entity_filter = T.unsafe(nil), illegal = T.unsafe(nil)); end
4330
4838
 
4331
4839
  # Appends text to this text node. The text is appended in the +raw+ mode
@@ -4334,36 +4842,36 @@ class REXML::Text < ::REXML::Child
4334
4842
  # +returns+ the text itself to enable method chain like
4335
4843
  # 'text << "XXX" << "YYY"'.
4336
4844
  #
4337
- # source://rexml//lib/rexml/text.rb#194
4845
+ # source://rexml//lib/rexml/text.rb#189
4338
4846
  def <<(to_append); end
4339
4847
 
4340
4848
  # +other+ a String or a Text
4341
4849
  # +returns+ the result of (to_s <=> arg.to_s)
4342
4850
  #
4343
- # source://rexml//lib/rexml/text.rb#203
4851
+ # source://rexml//lib/rexml/text.rb#198
4344
4852
  def <=>(other); end
4345
4853
 
4346
- # source://rexml//lib/rexml/text.rb#184
4854
+ # source://rexml//lib/rexml/text.rb#179
4347
4855
  def clone; end
4348
4856
 
4349
- # source://rexml//lib/rexml/text.rb#207
4857
+ # source://rexml//lib/rexml/text.rb#202
4350
4858
  def doctype; end
4351
4859
 
4352
4860
  # @return [Boolean]
4353
4861
  #
4354
- # source://rexml//lib/rexml/text.rb#179
4862
+ # source://rexml//lib/rexml/text.rb#174
4355
4863
  def empty?; end
4356
4864
 
4357
- # source://rexml//lib/rexml/text.rb#278
4865
+ # source://rexml//lib/rexml/text.rb#274
4358
4866
  def indent_text(string, level = T.unsafe(nil), style = T.unsafe(nil), indentfirstline = T.unsafe(nil)); end
4359
4867
 
4360
- # source://rexml//lib/rexml/text.rb#233
4868
+ # source://rexml//lib/rexml/text.rb#228
4361
4869
  def inspect; end
4362
4870
 
4363
- # source://rexml//lib/rexml/text.rb#175
4871
+ # source://rexml//lib/rexml/text.rb#170
4364
4872
  def node_type; end
4365
4873
 
4366
- # source://rexml//lib/rexml/text.rb#125
4874
+ # source://rexml//lib/rexml/text.rb#110
4367
4875
  def parent=(parent); end
4368
4876
 
4369
4877
  # If +raw+ is true, then REXML leaves the value alone
@@ -4390,7 +4898,7 @@ class REXML::Text < ::REXML::Child
4390
4898
  # u = Text.new( "sean russell", false, nil, true )
4391
4899
  # u.to_s #-> "sean russell"
4392
4900
  #
4393
- # source://rexml//lib/rexml/text.rb#228
4901
+ # source://rexml//lib/rexml/text.rb#223
4394
4902
  def to_s; end
4395
4903
 
4396
4904
  # Returns the string value of this text. This is the text without
@@ -4407,7 +4915,7 @@ class REXML::Text < ::REXML::Child
4407
4915
  # u = Text.new( "sean russell", false, nil, true )
4408
4916
  # u.value #-> "sean russell"
4409
4917
  #
4410
- # source://rexml//lib/rexml/text.rb#250
4918
+ # source://rexml//lib/rexml/text.rb#245
4411
4919
  def value; end
4412
4920
 
4413
4921
  # Sets the contents of this text node. This expects the text to be
@@ -4418,16 +4926,16 @@ class REXML::Text < ::REXML::Child
4418
4926
  # e[0].value = "bar" # <a>bar</a>
4419
4927
  # e[0].value = "<a>" # <a>&lt;a&gt;</a>
4420
4928
  #
4421
- # source://rexml//lib/rexml/text.rb#261
4929
+ # source://rexml//lib/rexml/text.rb#257
4422
4930
  def value=(val); end
4423
4931
 
4424
- # source://rexml//lib/rexml/text.rb#267
4932
+ # source://rexml//lib/rexml/text.rb#263
4425
4933
  def wrap(string, width, addnewline = T.unsafe(nil)); end
4426
4934
 
4427
4935
  # == DEPRECATED
4428
4936
  # See REXML::Formatters
4429
4937
  #
4430
- # source://rexml//lib/rexml/text.rb#293
4938
+ # source://rexml//lib/rexml/text.rb#289
4431
4939
  def write(writer, indent = T.unsafe(nil), transitive = T.unsafe(nil), ie_hack = T.unsafe(nil)); end
4432
4940
 
4433
4941
  # Writes out text, substituting special characters beforehand.
@@ -4445,43 +4953,43 @@ class REXML::Text < ::REXML::Child
4445
4953
  # }
4446
4954
  # puts ascOut
4447
4955
  #
4448
- # source://rexml//lib/rexml/text.rb#325
4956
+ # source://rexml//lib/rexml/text.rb#321
4449
4957
  def write_with_substitution(out, input); end
4450
4958
 
4451
4959
  # FIXME
4452
4960
  # This probably won't work properly
4453
4961
  #
4454
- # source://rexml//lib/rexml/text.rb#305
4962
+ # source://rexml//lib/rexml/text.rb#301
4455
4963
  def xpath; end
4456
4964
 
4457
4965
  private
4458
4966
 
4459
- # source://rexml//lib/rexml/text.rb#338
4967
+ # source://rexml//lib/rexml/text.rb#334
4460
4968
  def clear_cache; end
4461
4969
 
4462
4970
  class << self
4463
4971
  # check for illegal characters
4464
4972
  #
4465
- # source://rexml//lib/rexml/text.rb#131
4973
+ # source://rexml//lib/rexml/text.rb#116
4466
4974
  def check(string, pattern, doctype); end
4467
4975
 
4468
- # source://rexml//lib/rexml/text.rb#407
4976
+ # source://rexml//lib/rexml/text.rb#404
4469
4977
  def expand(ref, doctype, filter); end
4470
4978
 
4471
4979
  # Escapes all possible entities
4472
4980
  #
4473
- # source://rexml//lib/rexml/text.rb#370
4981
+ # source://rexml//lib/rexml/text.rb#366
4474
4982
  def normalize(input, doctype = T.unsafe(nil), entity_filter = T.unsafe(nil)); end
4475
4983
 
4476
4984
  # Reads text, substituting entities
4477
4985
  #
4478
- # source://rexml//lib/rexml/text.rb#344
4986
+ # source://rexml//lib/rexml/text.rb#340
4479
4987
  def read_with_substitution(input, illegal = T.unsafe(nil)); end
4480
4988
 
4481
4989
  # Unescapes all possible entities
4482
4990
  #
4483
- # source://rexml//lib/rexml/text.rb#394
4484
- def unnormalize(string, doctype = T.unsafe(nil), filter = T.unsafe(nil), illegal = T.unsafe(nil)); end
4991
+ # source://rexml//lib/rexml/text.rb#390
4992
+ def unnormalize(string, doctype = T.unsafe(nil), filter = T.unsafe(nil), illegal = T.unsafe(nil), entity_expansion_text_limit: T.unsafe(nil)); end
4485
4993
  end
4486
4994
  end
4487
4995
 
@@ -4605,26 +5113,83 @@ class REXML::XMLDecl < ::REXML::Child
4605
5113
  end
4606
5114
  end
4607
5115
 
5116
+ # Wrapper class. Use this class to access the XPath functions.
5117
+ #
5118
+ # source://rexml//lib/rexml/xpath.rb#7
5119
+ class REXML::XPath
5120
+ include ::REXML::Functions
5121
+
5122
+ class << self
5123
+ # Iterates over nodes that match the given path, calling the supplied
5124
+ # block with the match.
5125
+ # element::
5126
+ # The context element
5127
+ # path::
5128
+ # The xpath to search for. If not supplied or nil, defaults to '*'
5129
+ # namespaces::
5130
+ # If supplied, a Hash which defines a namespace mapping
5131
+ # variables::
5132
+ # If supplied, a Hash which maps $variables in the query
5133
+ # to values. This can be used to avoid XPath injection attacks
5134
+ # or to automatically handle escaping string values.
5135
+ #
5136
+ # XPath.each( node ) { |el| ... }
5137
+ # XPath.each( node, '/*[@attr='v']' ) { |el| ... }
5138
+ # XPath.each( node, 'ancestor::x' ) { |el| ... }
5139
+ # XPath.each( node, '/book/publisher/text()=$publisher', {}, {"publisher"=>"O'Reilly"}) \
5140
+ # {|el| ... }
5141
+ #
5142
+ # source://rexml//lib/rexml/xpath.rb#60
5143
+ def each(element, path = T.unsafe(nil), namespaces = T.unsafe(nil), variables = T.unsafe(nil), options = T.unsafe(nil), &block); end
5144
+
5145
+ # Finds and returns the first node that matches the supplied xpath.
5146
+ # element::
5147
+ # The context element
5148
+ # path::
5149
+ # The xpath to search for. If not supplied or nil, returns the first
5150
+ # node matching '*'.
5151
+ # namespaces::
5152
+ # If supplied, a Hash which defines a namespace mapping.
5153
+ # variables::
5154
+ # If supplied, a Hash which maps $variables in the query
5155
+ # to values. This can be used to avoid XPath injection attacks
5156
+ # or to automatically handle escaping string values.
5157
+ #
5158
+ # XPath.first( node )
5159
+ # XPath.first( doc, "//b"} )
5160
+ # XPath.first( node, "a/x:b", { "x"=>"http://doofus" } )
5161
+ # XPath.first( node, '/book/publisher/text()=$publisher', {}, {"publisher"=>"O'Reilly"})
5162
+ #
5163
+ # source://rexml//lib/rexml/xpath.rb#31
5164
+ def first(element, path = T.unsafe(nil), namespaces = T.unsafe(nil), variables = T.unsafe(nil), options = T.unsafe(nil)); end
5165
+
5166
+ # Returns an array of nodes matching a given XPath.
5167
+ #
5168
+ # source://rexml//lib/rexml/xpath.rb#72
5169
+ def match(element, path = T.unsafe(nil), namespaces = T.unsafe(nil), variables = T.unsafe(nil), options = T.unsafe(nil)); end
5170
+ end
5171
+ end
5172
+
4608
5173
  # @private
4609
5174
  #
4610
- # source://rexml//lib/rexml/xpath_parser.rb#959
5175
+ # source://rexml//lib/rexml/xpath_parser.rb#963
4611
5176
  class REXML::XPathNode
4612
5177
  # @return [XPathNode] a new instance of XPathNode
4613
5178
  #
4614
- # source://rexml//lib/rexml/xpath_parser.rb#961
5179
+ # source://rexml//lib/rexml/xpath_parser.rb#965
4615
5180
  def initialize(node, context = T.unsafe(nil)); end
4616
5181
 
4617
5182
  # Returns the value of attribute context.
4618
5183
  #
4619
- # source://rexml//lib/rexml/xpath_parser.rb#960
5184
+ # source://rexml//lib/rexml/xpath_parser.rb#964
4620
5185
  def context; end
4621
5186
 
4622
- # source://rexml//lib/rexml/xpath_parser.rb#970
5187
+ # source://rexml//lib/rexml/xpath_parser.rb#974
4623
5188
  def position; end
4624
5189
 
4625
5190
  # Returns the value of attribute raw_node.
4626
5191
  #
4627
- # source://rexml//lib/rexml/xpath_parser.rb#960
5192
+ # source://rexml//lib/rexml/xpath_parser.rb#964
4628
5193
  def raw_node; end
4629
5194
  end
4630
5195
 
@@ -4673,25 +5238,25 @@ class REXML::XPathParser
4673
5238
 
4674
5239
  private
4675
5240
 
4676
- # source://rexml//lib/rexml/xpath_parser.rb#775
5241
+ # source://rexml//lib/rexml/xpath_parser.rb#779
4677
5242
  def child(nodeset); end
4678
5243
 
4679
- # source://rexml//lib/rexml/xpath_parser.rb#916
5244
+ # source://rexml//lib/rexml/xpath_parser.rb#920
4680
5245
  def compare(a, operator, b); end
4681
5246
 
4682
- # source://rexml//lib/rexml/xpath_parser.rb#678
5247
+ # source://rexml//lib/rexml/xpath_parser.rb#682
4683
5248
  def descendant(nodeset, include_self); end
4684
5249
 
4685
- # source://rexml//lib/rexml/xpath_parser.rb#689
5250
+ # source://rexml//lib/rexml/xpath_parser.rb#693
4686
5251
  def descendant_recursive(raw_node, new_nodeset, new_nodes, include_self); end
4687
5252
 
4688
- # source://rexml//lib/rexml/xpath_parser.rb#938
5253
+ # source://rexml//lib/rexml/xpath_parser.rb#942
4689
5254
  def each_unnode(nodeset); end
4690
5255
 
4691
- # source://rexml//lib/rexml/xpath_parser.rb#637
5256
+ # source://rexml//lib/rexml/xpath_parser.rb#641
4692
5257
  def enter(tag, *args); end
4693
5258
 
4694
- # source://rexml//lib/rexml/xpath_parser.rb#815
5259
+ # source://rexml//lib/rexml/xpath_parser.rb#819
4695
5260
  def equality_relational_compare(set1, op, set2); end
4696
5261
 
4697
5262
  # source://rexml//lib/rexml/xpath_parser.rb#591
@@ -4706,10 +5271,10 @@ class REXML::XPathParser
4706
5271
  # source://rexml//lib/rexml/xpath_parser.rb#582
4707
5272
  def filter_nodeset(nodeset); end
4708
5273
 
4709
- # source://rexml//lib/rexml/xpath_parser.rb#745
5274
+ # source://rexml//lib/rexml/xpath_parser.rb#749
4710
5275
  def following(node); end
4711
5276
 
4712
- # source://rexml//lib/rexml/xpath_parser.rb#756
5277
+ # source://rexml//lib/rexml/xpath_parser.rb#760
4713
5278
  def following_node_of(node); end
4714
5279
 
4715
5280
  # Returns a String namespace for a node, given a prefix
@@ -4721,19 +5286,19 @@ class REXML::XPathParser
4721
5286
  # source://rexml//lib/rexml/xpath_parser.rb#163
4722
5287
  def get_namespace(node, prefix); end
4723
5288
 
4724
- # source://rexml//lib/rexml/xpath_parser.rb#642
5289
+ # source://rexml//lib/rexml/xpath_parser.rb#646
4725
5290
  def leave(tag, *args); end
4726
5291
 
4727
- # source://rexml//lib/rexml/xpath_parser.rb#763
5292
+ # source://rexml//lib/rexml/xpath_parser.rb#767
4728
5293
  def next_sibling_node(node); end
4729
5294
 
4730
5295
  # source://rexml//lib/rexml/xpath_parser.rb#477
4731
5296
  def node_test(path_stack, nodesets, any_type: T.unsafe(nil)); end
4732
5297
 
4733
- # source://rexml//lib/rexml/xpath_parser.rb#802
5298
+ # source://rexml//lib/rexml/xpath_parser.rb#806
4734
5299
  def norm(b); end
4735
5300
 
4736
- # source://rexml//lib/rexml/xpath_parser.rb#890
5301
+ # source://rexml//lib/rexml/xpath_parser.rb#894
4737
5302
  def normalize_compare_values(a, operator, b); end
4738
5303
 
4739
5304
  # Builds a nodeset of all of the preceding nodes of the supplied node,
@@ -4741,10 +5306,10 @@ class REXML::XPathParser
4741
5306
  # preceding:: includes every element in the document that precedes this node,
4742
5307
  # except for ancestors
4743
5308
  #
4744
- # source://rexml//lib/rexml/xpath_parser.rb#708
5309
+ # source://rexml//lib/rexml/xpath_parser.rb#712
4745
5310
  def preceding(node); end
4746
5311
 
4747
- # source://rexml//lib/rexml/xpath_parser.rb#730
5312
+ # source://rexml//lib/rexml/xpath_parser.rb#734
4748
5313
  def preceding_node_of(node); end
4749
5314
 
4750
5315
  # Reorders an array of nodes so that they are in document order
@@ -4756,7 +5321,7 @@ class REXML::XPathParser
4756
5321
  # I wouldn't have to do this. Maybe add a document IDX for each node?
4757
5322
  # Problems with mutable documents. Or, rewrite everything.
4758
5323
  #
4759
- # source://rexml//lib/rexml/xpath_parser.rb#655
5324
+ # source://rexml//lib/rexml/xpath_parser.rb#659
4760
5325
  def sort(array_of_nodes, order); end
4761
5326
 
4762
5327
  # source://rexml//lib/rexml/xpath_parser.rb#441
@@ -4767,13 +5332,13 @@ class REXML::XPathParser
4767
5332
  # source://rexml//lib/rexml/xpath_parser.rb#154
4768
5333
  def strict?; end
4769
5334
 
4770
- # source://rexml//lib/rexml/xpath_parser.rb#630
5335
+ # source://rexml//lib/rexml/xpath_parser.rb#634
4771
5336
  def trace(*args); end
4772
5337
 
4773
- # source://rexml//lib/rexml/xpath_parser.rb#950
5338
+ # source://rexml//lib/rexml/xpath_parser.rb#954
4774
5339
  def unnode(nodeset); end
4775
5340
 
4776
- # source://rexml//lib/rexml/xpath_parser.rb#877
5341
+ # source://rexml//lib/rexml/xpath_parser.rb#881
4777
5342
  def value_type(value); end
4778
5343
  end
4779
5344