nokogiri 1.11.0 → 1.11.5

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of nokogiri might be problematic. Click here for more details.

Files changed (103) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE-DEPENDENCIES.md +12 -12
  3. data/LICENSE.md +1 -1
  4. data/README.md +21 -16
  5. data/dependencies.yml +12 -12
  6. data/ext/nokogiri/depend +34 -474
  7. data/ext/nokogiri/extconf.rb +253 -183
  8. data/ext/nokogiri/html_document.c +10 -15
  9. data/ext/nokogiri/html_element_description.c +84 -71
  10. data/ext/nokogiri/html_entity_lookup.c +21 -16
  11. data/ext/nokogiri/html_sax_parser_context.c +67 -64
  12. data/ext/nokogiri/html_sax_push_parser.c +42 -34
  13. data/ext/nokogiri/libxml2_backwards_compat.c +121 -0
  14. data/ext/nokogiri/nokogiri.c +190 -60
  15. data/ext/nokogiri/nokogiri.h +158 -75
  16. data/ext/nokogiri/test_global_handlers.c +40 -0
  17. data/ext/nokogiri/xml_attr.c +15 -15
  18. data/ext/nokogiri/xml_attribute_decl.c +18 -18
  19. data/ext/nokogiri/xml_cdata.c +13 -18
  20. data/ext/nokogiri/xml_comment.c +19 -26
  21. data/ext/nokogiri/xml_document.c +246 -188
  22. data/ext/nokogiri/xml_document_fragment.c +13 -15
  23. data/ext/nokogiri/xml_dtd.c +54 -48
  24. data/ext/nokogiri/xml_element_content.c +30 -27
  25. data/ext/nokogiri/xml_element_decl.c +22 -22
  26. data/ext/nokogiri/xml_encoding_handler.c +17 -11
  27. data/ext/nokogiri/xml_entity_decl.c +32 -30
  28. data/ext/nokogiri/xml_entity_reference.c +16 -18
  29. data/ext/nokogiri/xml_namespace.c +56 -49
  30. data/ext/nokogiri/xml_node.c +371 -320
  31. data/ext/nokogiri/xml_node_set.c +168 -156
  32. data/ext/nokogiri/xml_processing_instruction.c +17 -19
  33. data/ext/nokogiri/xml_reader.c +191 -157
  34. data/ext/nokogiri/xml_relax_ng.c +29 -23
  35. data/ext/nokogiri/xml_sax_parser.c +117 -112
  36. data/ext/nokogiri/xml_sax_parser_context.c +101 -84
  37. data/ext/nokogiri/xml_sax_push_parser.c +36 -27
  38. data/ext/nokogiri/xml_schema.c +48 -42
  39. data/ext/nokogiri/xml_syntax_error.c +42 -21
  40. data/ext/nokogiri/xml_text.c +13 -17
  41. data/ext/nokogiri/xml_xpath_context.c +134 -127
  42. data/ext/nokogiri/xslt_stylesheet.c +157 -157
  43. data/lib/nokogiri.rb +1 -22
  44. data/lib/nokogiri/css/parser.rb +1 -1
  45. data/lib/nokogiri/extension.rb +26 -0
  46. data/lib/nokogiri/html/document_fragment.rb +15 -15
  47. data/lib/nokogiri/version/constant.rb +1 -1
  48. data/lib/nokogiri/version/info.rb +32 -8
  49. data/lib/nokogiri/xml/document.rb +74 -28
  50. data/lib/nokogiri/xml/node.rb +39 -42
  51. data/lib/nokogiri/xml/reader.rb +2 -9
  52. data/lib/nokogiri/xml/xpath.rb +1 -3
  53. data/lib/nokogiri/xml/xpath/syntax_error.rb +1 -1
  54. data/patches/libxml2/{0002-Remove-script-macro-support.patch → 0001-Remove-script-macro-support.patch} +0 -0
  55. data/patches/libxml2/{0003-Update-entities-to-remove-handling-of-ssi.patch → 0002-Update-entities-to-remove-handling-of-ssi.patch} +0 -0
  56. data/patches/libxml2/{0004-libxml2.la-is-in-top_builddir.patch → 0003-libxml2.la-is-in-top_builddir.patch} +1 -1
  57. data/patches/libxml2/{0008-use-glibc-strlen.patch → 0004-use-glibc-strlen.patch} +0 -0
  58. data/patches/libxml2/{0009-avoid-isnan-isinf.patch → 0005-avoid-isnan-isinf.patch} +4 -4
  59. data/patches/libxml2/0006-update-automake-files-for-arm64.patch +2511 -0
  60. data/patches/libxslt/0001-update-automake-files-for-arm64.patch +2511 -0
  61. data/patches/libxslt/0002-Fix-xml2-config-check-in-configure-script.patch +19 -0
  62. data/ports/archives/libxml2-2.9.12.tar.gz +0 -0
  63. metadata +20 -53
  64. data/ext/nokogiri/html_document.h +0 -10
  65. data/ext/nokogiri/html_element_description.h +0 -10
  66. data/ext/nokogiri/html_entity_lookup.h +0 -8
  67. data/ext/nokogiri/html_sax_parser_context.h +0 -11
  68. data/ext/nokogiri/html_sax_push_parser.h +0 -9
  69. data/ext/nokogiri/xml_attr.h +0 -9
  70. data/ext/nokogiri/xml_attribute_decl.h +0 -9
  71. data/ext/nokogiri/xml_cdata.h +0 -9
  72. data/ext/nokogiri/xml_comment.h +0 -9
  73. data/ext/nokogiri/xml_document.h +0 -23
  74. data/ext/nokogiri/xml_document_fragment.h +0 -10
  75. data/ext/nokogiri/xml_dtd.h +0 -10
  76. data/ext/nokogiri/xml_element_content.h +0 -10
  77. data/ext/nokogiri/xml_element_decl.h +0 -9
  78. data/ext/nokogiri/xml_encoding_handler.h +0 -8
  79. data/ext/nokogiri/xml_entity_decl.h +0 -10
  80. data/ext/nokogiri/xml_entity_reference.h +0 -9
  81. data/ext/nokogiri/xml_io.c +0 -63
  82. data/ext/nokogiri/xml_io.h +0 -11
  83. data/ext/nokogiri/xml_libxml2_hacks.c +0 -112
  84. data/ext/nokogiri/xml_libxml2_hacks.h +0 -12
  85. data/ext/nokogiri/xml_namespace.h +0 -14
  86. data/ext/nokogiri/xml_node.h +0 -13
  87. data/ext/nokogiri/xml_node_set.h +0 -12
  88. data/ext/nokogiri/xml_processing_instruction.h +0 -9
  89. data/ext/nokogiri/xml_reader.h +0 -10
  90. data/ext/nokogiri/xml_relax_ng.h +0 -9
  91. data/ext/nokogiri/xml_sax_parser.h +0 -39
  92. data/ext/nokogiri/xml_sax_parser_context.h +0 -10
  93. data/ext/nokogiri/xml_sax_push_parser.h +0 -9
  94. data/ext/nokogiri/xml_schema.h +0 -9
  95. data/ext/nokogiri/xml_syntax_error.h +0 -13
  96. data/ext/nokogiri/xml_text.h +0 -9
  97. data/ext/nokogiri/xml_xpath_context.h +0 -10
  98. data/ext/nokogiri/xslt_stylesheet.h +0 -14
  99. data/patches/libxml2/0001-Revert-Do-not-URI-escape-in-server-side-includes.patch +0 -78
  100. data/patches/libxml2/0005-Fix-infinite-loop-in-xmlStringLenDecodeEntities.patch +0 -32
  101. data/patches/libxml2/0006-htmlParseComment-treat-as-if-it-closed-the-comment.patch +0 -73
  102. data/patches/libxml2/0007-use-new-htmlParseLookupCommentEnd-to-find-comment-en.patch +0 -103
  103. data/ports/archives/libxml2-2.9.10.tar.gz +0 -0
@@ -0,0 +1,19 @@
1
+ From: Nick Wellnhofer <wellnhofer@aevum.de>
2
+ Date: Fri, 15 Nov 2019 11:53:11 +0100
3
+ Subject: [PATCH] Fix xml2-config check in configure script
4
+
5
+ A 'print' option has never been supported. After a recent change to
6
+ libxml2, invalid options cause xml2-config to fail.
7
+ diff --git a/configure b/configure
8
+ index c63adc5..6061227 100755
9
+ --- a/configure
10
+ +++ b/configure
11
+ @@ -14860,7 +14860,7 @@ PKG_CONFIG=$_save_PKG_CONFIG
12
+ fi
13
+
14
+
15
+ -if test "x$LIBXML_LIBS" = "x" && ${XML_CONFIG} --libs print > /dev/null 2>&1
16
+ +if test "x$LIBXML_LIBS" = "x" && ${XML_CONFIG} --libs > /dev/null 2>&1
17
+ then
18
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libxml libraries >= $LIBXML_REQUIRED_VERSION" >&5
19
+ $as_echo_n "checking for libxml libraries >= $LIBXML_REQUIRED_VERSION... " >&6; }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nokogiri
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.11.0
4
+ version: 1.11.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Dalessio
@@ -17,7 +17,7 @@ authors:
17
17
  autorequire:
18
18
  bindir: bin
19
19
  cert_chain: []
20
- date: 2021-01-04 00:00:00.000000000 Z
20
+ date: 2021-05-20 00:00:00.000000000 Z
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency
23
23
  name: racc
@@ -81,14 +81,14 @@ dependencies:
81
81
  requirements:
82
82
  - - "~>"
83
83
  - !ruby/object:Gem::Version
84
- version: '1.1'
84
+ version: '1.4'
85
85
  type: :development
86
86
  prerelease: false
87
87
  version_requirements: !ruby/object:Gem::Requirement
88
88
  requirements:
89
89
  - - "~>"
90
90
  - !ruby/object:Gem::Version
91
- version: '1.1'
91
+ version: '1.4'
92
92
  - !ruby/object:Gem::Dependency
93
93
  name: minitest
94
94
  requirement: !ruby/object:Gem::Requirement
@@ -179,14 +179,14 @@ dependencies:
179
179
  requirements:
180
180
  - - "~>"
181
181
  - !ruby/object:Gem::Version
182
- version: '0.88'
182
+ version: '1.7'
183
183
  type: :development
184
184
  prerelease: false
185
185
  version_requirements: !ruby/object:Gem::Requirement
186
186
  requirements:
187
187
  - - "~>"
188
188
  - !ruby/object:Gem::Version
189
- version: '0.88'
189
+ version: '1.7'
190
190
  - !ruby/object:Gem::Dependency
191
191
  name: simplecov
192
192
  requirement: !ruby/object:Gem::Requirement
@@ -228,17 +228,16 @@ extra_rdoc_files:
228
228
  - ext/nokogiri/xml_dtd.c
229
229
  - ext/nokogiri/xml_xpath_context.c
230
230
  - ext/nokogiri/xml_attr.c
231
+ - ext/nokogiri/libxml2_backwards_compat.c
231
232
  - ext/nokogiri/xml_comment.c
232
233
  - ext/nokogiri/nokogiri.c
233
234
  - ext/nokogiri/xml_sax_parser_context.c
234
235
  - ext/nokogiri/xml_node_set.c
235
236
  - ext/nokogiri/xml_reader.c
236
- - ext/nokogiri/xml_libxml2_hacks.c
237
237
  - ext/nokogiri/xml_cdata.c
238
238
  - ext/nokogiri/xml_element_content.c
239
239
  - ext/nokogiri/html_entity_lookup.c
240
240
  - ext/nokogiri/xml_namespace.c
241
- - ext/nokogiri/xml_io.c
242
241
  - ext/nokogiri/xml_document.c
243
242
  - ext/nokogiri/xml_element_decl.c
244
243
  - ext/nokogiri/xml_schema.c
@@ -252,6 +251,7 @@ extra_rdoc_files:
252
251
  - ext/nokogiri/html_sax_push_parser.c
253
252
  - ext/nokogiri/xml_relax_ng.c
254
253
  - ext/nokogiri/xml_entity_decl.c
254
+ - ext/nokogiri/test_global_handlers.c
255
255
  - ext/nokogiri/xml_node.c
256
256
  - ext/nokogiri/xml_entity_reference.c
257
257
  - ext/nokogiri/xslt_stylesheet.c
@@ -270,73 +270,40 @@ files:
270
270
  - ext/nokogiri/depend
271
271
  - ext/nokogiri/extconf.rb
272
272
  - ext/nokogiri/html_document.c
273
- - ext/nokogiri/html_document.h
274
273
  - ext/nokogiri/html_element_description.c
275
- - ext/nokogiri/html_element_description.h
276
274
  - ext/nokogiri/html_entity_lookup.c
277
- - ext/nokogiri/html_entity_lookup.h
278
275
  - ext/nokogiri/html_sax_parser_context.c
279
- - ext/nokogiri/html_sax_parser_context.h
280
276
  - ext/nokogiri/html_sax_push_parser.c
281
- - ext/nokogiri/html_sax_push_parser.h
277
+ - ext/nokogiri/libxml2_backwards_compat.c
282
278
  - ext/nokogiri/nokogiri.c
283
279
  - ext/nokogiri/nokogiri.h
280
+ - ext/nokogiri/test_global_handlers.c
284
281
  - ext/nokogiri/xml_attr.c
285
- - ext/nokogiri/xml_attr.h
286
282
  - ext/nokogiri/xml_attribute_decl.c
287
- - ext/nokogiri/xml_attribute_decl.h
288
283
  - ext/nokogiri/xml_cdata.c
289
- - ext/nokogiri/xml_cdata.h
290
284
  - ext/nokogiri/xml_comment.c
291
- - ext/nokogiri/xml_comment.h
292
285
  - ext/nokogiri/xml_document.c
293
- - ext/nokogiri/xml_document.h
294
286
  - ext/nokogiri/xml_document_fragment.c
295
- - ext/nokogiri/xml_document_fragment.h
296
287
  - ext/nokogiri/xml_dtd.c
297
- - ext/nokogiri/xml_dtd.h
298
288
  - ext/nokogiri/xml_element_content.c
299
- - ext/nokogiri/xml_element_content.h
300
289
  - ext/nokogiri/xml_element_decl.c
301
- - ext/nokogiri/xml_element_decl.h
302
290
  - ext/nokogiri/xml_encoding_handler.c
303
- - ext/nokogiri/xml_encoding_handler.h
304
291
  - ext/nokogiri/xml_entity_decl.c
305
- - ext/nokogiri/xml_entity_decl.h
306
292
  - ext/nokogiri/xml_entity_reference.c
307
- - ext/nokogiri/xml_entity_reference.h
308
- - ext/nokogiri/xml_io.c
309
- - ext/nokogiri/xml_io.h
310
- - ext/nokogiri/xml_libxml2_hacks.c
311
- - ext/nokogiri/xml_libxml2_hacks.h
312
293
  - ext/nokogiri/xml_namespace.c
313
- - ext/nokogiri/xml_namespace.h
314
294
  - ext/nokogiri/xml_node.c
315
- - ext/nokogiri/xml_node.h
316
295
  - ext/nokogiri/xml_node_set.c
317
- - ext/nokogiri/xml_node_set.h
318
296
  - ext/nokogiri/xml_processing_instruction.c
319
- - ext/nokogiri/xml_processing_instruction.h
320
297
  - ext/nokogiri/xml_reader.c
321
- - ext/nokogiri/xml_reader.h
322
298
  - ext/nokogiri/xml_relax_ng.c
323
- - ext/nokogiri/xml_relax_ng.h
324
299
  - ext/nokogiri/xml_sax_parser.c
325
- - ext/nokogiri/xml_sax_parser.h
326
300
  - ext/nokogiri/xml_sax_parser_context.c
327
- - ext/nokogiri/xml_sax_parser_context.h
328
301
  - ext/nokogiri/xml_sax_push_parser.c
329
- - ext/nokogiri/xml_sax_push_parser.h
330
302
  - ext/nokogiri/xml_schema.c
331
- - ext/nokogiri/xml_schema.h
332
303
  - ext/nokogiri/xml_syntax_error.c
333
- - ext/nokogiri/xml_syntax_error.h
334
304
  - ext/nokogiri/xml_text.c
335
- - ext/nokogiri/xml_text.h
336
305
  - ext/nokogiri/xml_xpath_context.c
337
- - ext/nokogiri/xml_xpath_context.h
338
306
  - ext/nokogiri/xslt_stylesheet.c
339
- - ext/nokogiri/xslt_stylesheet.h
340
307
  - lib/nokogiri.rb
341
308
  - lib/nokogiri/css.rb
342
309
  - lib/nokogiri/css/node.rb
@@ -348,6 +315,7 @@ files:
348
315
  - lib/nokogiri/css/tokenizer.rex
349
316
  - lib/nokogiri/css/xpath_visitor.rb
350
317
  - lib/nokogiri/decorators/slop.rb
318
+ - lib/nokogiri/extension.rb
351
319
  - lib/nokogiri/html.rb
352
320
  - lib/nokogiri/html/builder.rb
353
321
  - lib/nokogiri/html/document.rb
@@ -403,16 +371,15 @@ files:
403
371
  - lib/nokogiri/xslt.rb
404
372
  - lib/nokogiri/xslt/stylesheet.rb
405
373
  - lib/xsd/xmlparser/nokogiri.rb
406
- - patches/libxml2/0001-Revert-Do-not-URI-escape-in-server-side-includes.patch
407
- - patches/libxml2/0002-Remove-script-macro-support.patch
408
- - patches/libxml2/0003-Update-entities-to-remove-handling-of-ssi.patch
409
- - patches/libxml2/0004-libxml2.la-is-in-top_builddir.patch
410
- - patches/libxml2/0005-Fix-infinite-loop-in-xmlStringLenDecodeEntities.patch
411
- - patches/libxml2/0006-htmlParseComment-treat-as-if-it-closed-the-comment.patch
412
- - patches/libxml2/0007-use-new-htmlParseLookupCommentEnd-to-find-comment-en.patch
413
- - patches/libxml2/0008-use-glibc-strlen.patch
414
- - patches/libxml2/0009-avoid-isnan-isinf.patch
415
- - ports/archives/libxml2-2.9.10.tar.gz
374
+ - patches/libxml2/0001-Remove-script-macro-support.patch
375
+ - patches/libxml2/0002-Update-entities-to-remove-handling-of-ssi.patch
376
+ - patches/libxml2/0003-libxml2.la-is-in-top_builddir.patch
377
+ - patches/libxml2/0004-use-glibc-strlen.patch
378
+ - patches/libxml2/0005-avoid-isnan-isinf.patch
379
+ - patches/libxml2/0006-update-automake-files-for-arm64.patch
380
+ - patches/libxslt/0001-update-automake-files-for-arm64.patch
381
+ - patches/libxslt/0002-Fix-xml2-config-check-in-configure-script.patch
382
+ - ports/archives/libxml2-2.9.12.tar.gz
416
383
  - ports/archives/libxslt-1.1.34.tar.gz
417
384
  homepage: https://nokogiri.org
418
385
  licenses:
@@ -1,10 +0,0 @@
1
- #ifndef NOKOGIRI_HTML_DOCUMENT
2
- #define NOKOGIRI_HTML_DOCUMENT
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_html_document();
7
-
8
- extern VALUE cNokogiriHtmlDocument ;
9
-
10
- #endif
@@ -1,10 +0,0 @@
1
- #ifndef NOKOGIRI_HTML_ELEMENT_DESCRIPTION
2
- #define NOKOGIRI_HTML_ELEMENT_DESCRIPTION
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_html_element_description();
7
-
8
- extern VALUE cNokogiriHtmlElementDescription ;
9
-
10
- #endif
@@ -1,8 +0,0 @@
1
- #ifndef NOKOGIRI_HTML_ENTITY_LOOKUP
2
- #define NOKOGIRI_HTML_ENTITY_LOOKUP
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_html_entity_lookup();
7
-
8
- #endif
@@ -1,11 +0,0 @@
1
- #ifndef NOKOGIRI_HTML_SAX_PARSER_CONTEXT
2
- #define NOKOGIRI_HTML_SAX_PARSER_CONTEXT
3
-
4
- #include <nokogiri.h>
5
-
6
- extern VALUE cNokogiriHtmlSaxParserContext;
7
-
8
- void init_html_sax_parser_context();
9
-
10
- #endif
11
-
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_HTML_SAX_PUSH_PARSER
2
- #define NOKOGIRI_HTML_SAX_PUSH_PARSER
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_html_sax_push_parser();
7
-
8
- extern VALUE cNokogiriHtmlSaxPushParser ;
9
- #endif
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ATTR
2
- #define NOKOGIRI_XML_ATTR
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_attr();
7
-
8
- extern VALUE cNokogiriXmlAttr;
9
- #endif
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ATTRIBUTE_DECL
2
- #define NOKOGIRI_XML_ATTRIBUTE_DECL
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_attribute_decl();
7
-
8
- extern VALUE cNokogiriXmlAttributeDecl;
9
- #endif
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_XML_CDATA
2
- #define NOKOGIRI_XML_CDATA
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_cdata();
7
-
8
- extern VALUE cNokogiriXmlCData;
9
- #endif
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_XML_COMMENT
2
- #define NOKOGIRI_XML_COMMENT
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_comment();
7
-
8
- extern VALUE cNokogiriXmlComment;
9
- #endif
@@ -1,23 +0,0 @@
1
- #ifndef NOKOGIRI_XML_DOCUMENT
2
- #define NOKOGIRI_XML_DOCUMENT
3
-
4
- #include <nokogiri.h>
5
-
6
- struct _nokogiriTuple {
7
- VALUE doc;
8
- st_table *unlinkedNodes;
9
- VALUE node_cache;
10
- };
11
- typedef struct _nokogiriTuple nokogiriTuple;
12
- typedef nokogiriTuple * nokogiriTuplePtr;
13
-
14
- void init_xml_document();
15
- VALUE Nokogiri_wrap_xml_document(VALUE klass, xmlDocPtr doc);
16
-
17
- #define DOC_RUBY_OBJECT_TEST(x) ((nokogiriTuplePtr)(x->_private))
18
- #define DOC_RUBY_OBJECT(x) (((nokogiriTuplePtr)(x->_private))->doc)
19
- #define DOC_UNLINKED_NODE_HASH(x) (((nokogiriTuplePtr)(x->_private))->unlinkedNodes)
20
- #define DOC_NODE_CACHE(x) (((nokogiriTuplePtr)(x->_private))->node_cache)
21
-
22
- extern VALUE cNokogiriXmlDocument ;
23
- #endif
@@ -1,10 +0,0 @@
1
- #ifndef NOKOGIRI_XML_DOCUMENT_FRAGMENT
2
- #define NOKOGIRI_XML_DOCUMENT_FRAGMENT
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_document_fragment();
7
-
8
- extern VALUE cNokogiriXmlDocumentFragment;
9
- #endif
10
-
@@ -1,10 +0,0 @@
1
- #ifndef NOKOGIRI_XML_DTD
2
- #define NOKOGIRI_XML_DTD
3
-
4
- #include <nokogiri.h>
5
-
6
- extern VALUE cNokogiriXmlDtd;
7
-
8
- void init_xml_dtd();
9
-
10
- #endif
@@ -1,10 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ELEMENT_CONTENT
2
- #define NOKOGIRI_XML_ELEMENT_CONTENT
3
-
4
- #include <nokogiri.h>
5
-
6
-
7
- VALUE Nokogiri_wrap_element_content(VALUE doc, xmlElementContentPtr element);
8
- void init_xml_element_content();
9
-
10
- #endif
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ELEMENT_DECL
2
- #define NOKOGIRI_XML_ELEMENT_DECL
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_element_decl();
7
-
8
- extern VALUE cNokogiriXmlElementDecl;
9
- #endif
@@ -1,8 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ENCODING_HANDLER
2
- #define NOKOGIRI_XML_ENCODING_HANDLER
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_encoding_handler();
7
-
8
- #endif
@@ -1,10 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ENTITY_DECL
2
- #define NOKOGIRI_XML_ENTITY_DECL
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_entity_decl();
7
-
8
- extern VALUE cNokogiriXmlEntityDecl;
9
- #endif
10
-
@@ -1,9 +0,0 @@
1
- #ifndef NOKOGIRI_XML_ENTITY_REFERENCE
2
- #define NOKOGIRI_XML_ENTITY_REFERENCE
3
-
4
- #include <nokogiri.h>
5
-
6
- void init_xml_entity_reference();
7
-
8
- extern VALUE cNokogiriXmlEntityReference;
9
- #endif
@@ -1,63 +0,0 @@
1
- #include <xml_io.h>
2
-
3
- static ID id_read, id_write;
4
-
5
- VALUE read_check(VALUE val) {
6
- VALUE *args = (VALUE *)val;
7
- return rb_funcall(args[0], id_read, 1, args[1]);
8
- }
9
-
10
- VALUE read_failed(VALUE arg, VALUE exc) {
11
- return Qundef;
12
- }
13
-
14
- int io_read_callback(void * ctx, char * buffer, int len) {
15
- VALUE string, args[2];
16
- size_t str_len, safe_len;
17
-
18
- args[0] = (VALUE)ctx;
19
- args[1] = INT2NUM(len);
20
-
21
- string = rb_rescue(read_check, (VALUE)args, read_failed, 0);
22
-
23
- if (NIL_P(string)) return 0;
24
- if (string == Qundef) return -1;
25
- if (TYPE(string) != T_STRING) return -1;
26
-
27
- str_len = (size_t)RSTRING_LEN(string);
28
- safe_len = str_len > (size_t)len ? (size_t)len : str_len;
29
- memcpy(buffer, StringValuePtr(string), safe_len);
30
-
31
- return (int)safe_len;
32
- }
33
-
34
- VALUE write_check(VALUE val) {
35
- VALUE *args = (VALUE *)val;
36
- return rb_funcall(args[0], id_write, 1, args[1]);
37
- }
38
-
39
- VALUE write_failed(VALUE arg, VALUE exc) {
40
- return Qundef;
41
- }
42
-
43
- int io_write_callback(void * ctx, char * buffer, int len) {
44
- VALUE args[2], size;
45
-
46
- args[0] = (VALUE)ctx;
47
- args[1] = rb_str_new(buffer, (long)len);
48
-
49
- size = rb_rescue(write_check, (VALUE)args, write_failed, 0);
50
-
51
- if (size == Qundef) return -1;
52
-
53
- return NUM2INT(size);
54
- }
55
-
56
- int io_close_callback(void * ctx) {
57
- return 0;
58
- }
59
-
60
- void init_nokogiri_io() {
61
- id_read = rb_intern("read");
62
- id_write = rb_intern("write");
63
- }