libxml-ruby 0.7.0-x86-mswin32-60 → 0.8.0-x86-mswin32-60
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGES +24 -1
- data/README +48 -3
- data/benchmark/depixelate.rb +632 -0
- data/benchmark/hamlet.xml +9055 -0
- data/benchmark/sock_entries.xml +507 -0
- data/benchmark/throughput.rb +39 -0
- data/benchmark/xml_benchmarks.rb +222 -0
- data/doc/classes/LibXML.html +237 -0
- data/doc/classes/LibXML/XML.html +178 -0
- data/doc/classes/{XML → LibXML/XML}/Attr.html +213 -182
- data/doc/classes/{XML → LibXML/XML}/Attributes.html +126 -54
- data/doc/classes/{XML → LibXML/XML}/Document.html +299 -297
- data/doc/classes/{XML → LibXML/XML}/Dtd.html +10 -10
- data/doc/classes/{XML/XInclude → LibXML/XML}/Error.html +4 -4
- data/doc/classes/{XML → LibXML/XML}/HTMLParser.html +40 -40
- data/doc/classes/{XML → LibXML/XML}/InputCallbacks.html +10 -10
- data/doc/classes/{XML → LibXML/XML}/NS.html +46 -46
- data/doc/classes/{XML → LibXML/XML}/Node.html +935 -788
- data/doc/classes/LibXML/XML/Node/FailedModify.html +111 -0
- data/doc/classes/{XML → LibXML/XML}/Node/Set.html +69 -68
- data/doc/classes/{XML → LibXML/XML}/Node/SetNamespace.html +4 -4
- data/doc/classes/{XML/Node/FailedModify.html → LibXML/XML/Node/UnknownType.html} +4 -4
- data/doc/classes/{XML → LibXML/XML}/Parser.html +426 -389
- data/doc/classes/{XML → LibXML/XML}/Parser/Context.html +208 -208
- data/doc/classes/{XML → LibXML/XML}/Parser/ParseError.html +4 -4
- data/doc/classes/{XML → LibXML/XML}/Reader.html +288 -287
- data/doc/classes/{XML → LibXML/XML}/SaxParser.html +52 -52
- data/doc/classes/{XML/XPath/Context.html → LibXML/XML/Schema.html} +60 -32
- data/doc/classes/{XML → LibXML/XML}/State.html +4 -4
- data/doc/classes/{XML/Node/UnknownType.html → LibXML/XML/Tree.html} +5 -5
- data/doc/classes/{XML → LibXML/XML}/XInclude.html +5 -5
- data/doc/classes/{XML → LibXML/XML/XInclude}/Error.html +5 -5
- data/doc/classes/{XML → LibXML/XML}/XMLParserOptions.html +5 -5
- data/doc/classes/{XML → LibXML/XML}/XPath.html +23 -64
- data/doc/classes/LibXML/XML/XPath/Context.html +403 -0
- data/doc/classes/{XML/XPointer/Context → LibXML/XML/XPath}/InvalidPath.html +4 -4
- data/doc/classes/LibXML/XML/XPath/Object.html +623 -0
- data/doc/classes/{XML → LibXML/XML}/XPointer.html +12 -12
- data/doc/classes/{XML → LibXML/XML}/XPointer/Context.html +5 -5
- data/doc/classes/{XML/XPath → LibXML/XML/XPointer/Context}/InvalidPath.html +5 -5
- data/doc/classes/{XML → LibXML/XML}/XPointer/InvalidExpression.html +4 -4
- data/doc/classes/XML.html +17 -123
- data/doc/created.rid +1 -1
- data/doc/files/CHANGES.html +49 -25
- data/doc/files/LICENSE.html +1 -1
- data/doc/files/README.html +79 -4
- data/doc/files/VERSION.html +2 -2
- data/doc/files/ext/libxml/cbg_c.html +1 -1
- data/doc/files/ext/libxml/libxml_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_attr_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_attributes_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_document_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_dtd_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_html_parser_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_input_cbg_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_node_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_node_set_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_ns_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_parser_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_parser_context_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_reader_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_sax_parser_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_schema_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_state_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_xinclude_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_xpath_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_xpath_context_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_xpath_object_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_xpointer_c.html +1 -1
- data/doc/files/ext/libxml/ruby_xml_xpointer_context_c.html +1 -1
- data/doc/files/lib/libxml/attr_rb.html +108 -0
- data/doc/files/lib/libxml/attributes_rb.html +108 -0
- data/doc/files/lib/libxml/document_rb.html +108 -0
- data/doc/files/lib/libxml/node_rb.html +108 -0
- data/doc/files/lib/libxml/node_set_rb.html +108 -0
- data/doc/files/lib/libxml/parser_options_rb.html +107 -0
- data/doc/files/{ext/libxml/ruby_xml_tree_c.html → lib/libxml/parser_rb.html} +4 -4
- data/doc/files/lib/libxml/properties_rb.html +108 -0
- data/doc/files/lib/libxml/tree_rb.html +107 -0
- data/doc/files/lib/libxml_rb.html +12 -3
- data/doc/fr_class_index.html +34 -32
- data/doc/fr_file_index.html +9 -1
- data/doc/fr_method_index.html +362 -347
- data/ext/libxml/cbg.c +76 -76
- data/ext/libxml/libxml.c +4 -3
- data/ext/libxml/ruby_libxml.h +1 -1
- data/ext/libxml/ruby_xml_attr.c +4 -3
- data/ext/libxml/ruby_xml_attr.h +16 -16
- data/ext/libxml/ruby_xml_attributes.c +267 -266
- data/ext/libxml/ruby_xml_attributes.h +17 -17
- data/ext/libxml/ruby_xml_document.c +30 -59
- data/ext/libxml/ruby_xml_document.h +27 -27
- data/ext/libxml/ruby_xml_dtd.c +2 -1
- data/ext/libxml/ruby_xml_dtd.h +17 -17
- data/ext/libxml/ruby_xml_html_parser.c +3 -2
- data/ext/libxml/ruby_xml_html_parser.h +29 -29
- data/ext/libxml/ruby_xml_input_cbg.c +2 -1
- data/ext/libxml/ruby_xml_input_cbg.h +20 -20
- data/ext/libxml/ruby_xml_node.c +127 -470
- data/ext/libxml/ruby_xml_node.h +17 -17
- data/ext/libxml/ruby_xml_node_set.c +5 -4
- data/ext/libxml/ruby_xml_node_set.h +20 -20
- data/ext/libxml/ruby_xml_ns.c +3 -2
- data/ext/libxml/ruby_xml_ns.h +12 -12
- data/ext/libxml/ruby_xml_parser.c +20 -48
- data/ext/libxml/ruby_xml_parser.h +31 -31
- data/ext/libxml/ruby_xml_parser_context.c +3 -2
- data/ext/libxml/ruby_xml_parser_context.h +20 -20
- data/ext/libxml/ruby_xml_reader.c +2 -1
- data/ext/libxml/ruby_xml_sax_parser.c +3 -2
- data/ext/libxml/ruby_xml_sax_parser.h +56 -56
- data/ext/libxml/ruby_xml_schema.c +6 -0
- data/ext/libxml/ruby_xml_schema.h +16 -16
- data/ext/libxml/ruby_xml_state.c +13 -12
- data/ext/libxml/ruby_xml_state.h +1 -1
- data/ext/libxml/ruby_xml_xinclude.c +3 -2
- data/ext/libxml/ruby_xml_xinclude.h +13 -13
- data/ext/libxml/ruby_xml_xpath.c +35 -228
- data/ext/libxml/ruby_xml_xpath.h +22 -23
- data/ext/libxml/ruby_xml_xpath_context.c +223 -62
- data/ext/libxml/ruby_xml_xpath_context.h +15 -20
- data/ext/libxml/ruby_xml_xpath_object.c +63 -19
- data/ext/libxml/ruby_xml_xpointer.c +19 -15
- data/ext/libxml/ruby_xml_xpointer.h +27 -27
- data/ext/libxml/ruby_xml_xpointer_context.c +3 -2
- data/ext/libxml/ruby_xml_xpointer_context.h +18 -18
- data/ext/libxml/version.h +9 -9
- data/lib/libxml.rb +16 -128
- data/lib/libxml/attr.rb +45 -0
- data/lib/libxml/attributes.rb +15 -0
- data/lib/libxml/document.rb +54 -0
- data/lib/libxml/node.rb +132 -0
- data/lib/libxml/node_set.rb +27 -0
- data/lib/libxml/parser.rb +42 -0
- data/lib/libxml/parser_options.rb +25 -0
- data/lib/libxml/properties.rb +19 -0
- data/lib/libxml/tree.rb +29 -0
- data/lib/libxml_ruby.so +0 -0
- data/mingw/libxml_ruby.so +0 -0
- data/{work/task/setup → setup.rb} +1585 -1616
- data/test/gc.log +0 -0
- data/test/model/books.xml +147 -0
- data/{work/test/runner.rb → test/model/default_validation_bug.rb} +0 -0
- data/test/model/merge_bug_data.xml +58 -0
- data/test/model/rubynet.xml +78 -0
- data/test/model/rubynet_project +1 -0
- data/test/model/saxtest.xml +5 -0
- data/test/model/shiporder.xml +23 -0
- data/test/model/shiporder.xsd +31 -0
- data/test/model/simple.xml +7 -0
- data/test/model/soap.xml +27 -0
- data/test/model/xinclude.xml +5 -0
- data/test/tc_deprecated_require.rb +13 -0
- data/test/tc_xml_document.rb +57 -16
- data/test/tc_xml_document_write.rb +125 -10
- data/test/tc_xml_dtd.rb +22 -1
- data/test/tc_xml_node.rb +13 -0
- data/test/tc_xml_node_edit.rb +1 -1
- data/test/tc_xml_node_xlink.rb +1 -1
- data/test/tc_xml_parser.rb +64 -7
- data/test/tc_xml_properties.rb +42 -0
- data/test/tc_xml_reader.rb +4 -4
- data/test/tc_xml_sax_parser.rb +50 -50
- data/test/tc_xml_schema.rb +2 -2
- data/test/tc_xml_traversal.rb +220 -0
- data/test/tc_xml_xinclude.rb +12 -15
- data/test/tc_xml_xpath.rb +74 -6
- data/test/tc_xml_xpath_context.rb +72 -0
- data/test/test_suite.rb +6 -4
- data/vc/libxml_ruby.vcproj +1 -9
- metadata +92 -65
- data/doc/classes/XML/SiblingEnum.html +0 -142
- data/doc/classes/XML/Tree.html +0 -224
- data/doc/classes/XML/XPath/Object.html +0 -439
- data/ext/libxml/ruby_xml_tree.c +0 -43
- data/ext/libxml/ruby_xml_tree.h +0 -12
- data/test/ets_copy_bug2.rb +0 -21
- data/test/tc_xml_document_write2.rb +0 -54
- data/test/tc_xml_document_write3.rb +0 -96
- data/test/tc_xml_sax_parser2.rb +0 -51
- data/work/Rakefile +0 -247
- data/work/task/make +0 -26
- data/work/task/memory +0 -37
- data/work/task/rdoc +0 -39
- data/work/task/test +0 -29
- data/work/test/ets_runner.rb +0 -33
- data/work/test/libxml_test.rb +0 -3
- data/work/test/runner_ets.rb +0 -33
data/ext/libxml/ruby_xml_node.h
CHANGED
@@ -1,17 +1,17 @@
|
|
1
|
-
/* $Id: ruby_xml_node.h 348 2008-07-09 18:18:19Z cfis $ */
|
2
|
-
|
3
|
-
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
-
|
5
|
-
#ifndef __RUBY_XML_NODE__
|
6
|
-
#define __RUBY_XML_NODE__
|
7
|
-
|
8
|
-
extern VALUE cXMLNode;
|
9
|
-
extern VALUE eXMLNodeSetNamespace;
|
10
|
-
extern VALUE eXMLNodeFailedModify;
|
11
|
-
extern VALUE eXMLNodeUnknownType;
|
12
|
-
|
13
|
-
void ruby_init_xml_node(void);
|
14
|
-
void ruby_xml_node_mark_common(xmlNodePtr xnode);
|
15
|
-
VALUE ruby_xml_node2_wrap(VALUE class, xmlNodePtr xnode);
|
16
|
-
VALUE check_string_or_symbol(VALUE val);
|
17
|
-
#endif
|
1
|
+
/* $Id: ruby_xml_node.h 348 2008-07-09 18:18:19Z cfis $ */
|
2
|
+
|
3
|
+
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
+
|
5
|
+
#ifndef __RUBY_XML_NODE__
|
6
|
+
#define __RUBY_XML_NODE__
|
7
|
+
|
8
|
+
extern VALUE cXMLNode;
|
9
|
+
extern VALUE eXMLNodeSetNamespace;
|
10
|
+
extern VALUE eXMLNodeFailedModify;
|
11
|
+
extern VALUE eXMLNodeUnknownType;
|
12
|
+
|
13
|
+
void ruby_init_xml_node(void);
|
14
|
+
void ruby_xml_node_mark_common(xmlNodePtr xnode);
|
15
|
+
VALUE ruby_xml_node2_wrap(VALUE class, xmlNodePtr xnode);
|
16
|
+
VALUE check_string_or_symbol(VALUE val);
|
17
|
+
#endif
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/* $Id: ruby_xml_node_set.c
|
1
|
+
/* $Id: ruby_xml_node_set.c 461 2008-07-15 21:35:56Z cfis $ */
|
2
2
|
|
3
3
|
/* Please see the LICENSE file for copyright and distribution information */
|
4
4
|
|
@@ -6,7 +6,7 @@
|
|
6
6
|
#include "ruby_xml_node_set.h"
|
7
7
|
|
8
8
|
/*
|
9
|
-
* Document-class: XML::Node::Set
|
9
|
+
* Document-class: LibXML::XML::Node::Set
|
10
10
|
*
|
11
11
|
* Includes Enumerable.
|
12
12
|
*/
|
@@ -149,14 +149,15 @@ ruby_xml_node_set_xpath_data_get(VALUE self) {
|
|
149
149
|
|
150
150
|
// Rdoc needs to know
|
151
151
|
#ifdef RDOC_NEVER_DEFINED
|
152
|
-
|
152
|
+
mLibXML = rb_define_module("LibXML");
|
153
|
+
mXML = rb_define_module_under(mLibXML, "XML");
|
153
154
|
cXMLNode = rb_define_class_under(mXML, "Node", rb_cObject);
|
154
155
|
#endif
|
155
156
|
|
156
157
|
void
|
157
158
|
ruby_init_xml_node_set(void) {
|
158
159
|
cXMLNodeSet = rb_define_class_under(cXMLNode, "Set", rb_cObject);
|
159
|
-
rb_include_module(cXMLNodeSet,
|
160
|
+
rb_include_module(cXMLNodeSet, rb_mEnumerable);
|
160
161
|
|
161
162
|
rb_define_method(cXMLNodeSet, "each", ruby_xml_node_set_each, 0);
|
162
163
|
rb_define_method(cXMLNodeSet, "empty?", ruby_xml_node_set_empty_q, 0);
|
@@ -1,20 +1,20 @@
|
|
1
|
-
/* $Id: ruby_xml_node_set.h 207 2007-11-14 07:51:46Z danj $ */
|
2
|
-
|
3
|
-
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
-
|
5
|
-
#ifndef __RUBY_XML_NODE_SET__
|
6
|
-
#define __RUBY_XML_NODE_SET__
|
7
|
-
|
8
|
-
extern VALUE cXMLNodeSet;
|
9
|
-
|
10
|
-
typedef struct ruby_xml_node_set {
|
11
|
-
VALUE rxpop;
|
12
|
-
} ruby_xml_node_set;
|
13
|
-
|
14
|
-
void ruby_init_xml_node_set(void);
|
15
|
-
VALUE ruby_xml_node_set_new(VALUE class, VALUE xpop);
|
16
|
-
VALUE ruby_xml_node_set_new2(VALUE xpop);
|
17
|
-
VALUE ruby_xml_node_set_each(VALUE self);
|
18
|
-
VALUE ruby_xml_node_set_first(VALUE self);
|
19
|
-
|
20
|
-
#endif
|
1
|
+
/* $Id: ruby_xml_node_set.h 207 2007-11-14 07:51:46Z danj $ */
|
2
|
+
|
3
|
+
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
+
|
5
|
+
#ifndef __RUBY_XML_NODE_SET__
|
6
|
+
#define __RUBY_XML_NODE_SET__
|
7
|
+
|
8
|
+
extern VALUE cXMLNodeSet;
|
9
|
+
|
10
|
+
typedef struct ruby_xml_node_set {
|
11
|
+
VALUE rxpop;
|
12
|
+
} ruby_xml_node_set;
|
13
|
+
|
14
|
+
void ruby_init_xml_node_set(void);
|
15
|
+
VALUE ruby_xml_node_set_new(VALUE class, VALUE xpop);
|
16
|
+
VALUE ruby_xml_node_set_new2(VALUE xpop);
|
17
|
+
VALUE ruby_xml_node_set_each(VALUE self);
|
18
|
+
VALUE ruby_xml_node_set_first(VALUE self);
|
19
|
+
|
20
|
+
#endif
|
data/ext/libxml/ruby_xml_ns.c
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
/* $Id: ruby_xml_ns.c
|
1
|
+
/* $Id: ruby_xml_ns.c 461 2008-07-15 21:35:56Z cfis $ */
|
2
2
|
|
3
3
|
/* Please see the LICENSE file for copyright and distribution information */
|
4
4
|
|
@@ -127,7 +127,8 @@ ruby_xml_ns_prefix_q(VALUE self) {
|
|
127
127
|
|
128
128
|
// Rdoc needs to know
|
129
129
|
#ifdef RDOC_NEVER_DEFINED
|
130
|
-
|
130
|
+
mLibXML = rb_define_module("LibXML");
|
131
|
+
mXML = rb_define_module_under(mLibXML, "XML");
|
131
132
|
#endif
|
132
133
|
|
133
134
|
void
|
data/ext/libxml/ruby_xml_ns.h
CHANGED
@@ -1,12 +1,12 @@
|
|
1
|
-
/* $Id: ruby_xml_ns.h 324 2008-07-08 23:00:02Z cfis $ */
|
2
|
-
|
3
|
-
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
-
|
5
|
-
#ifndef __RUBY_XML_NS__
|
6
|
-
#define __RUBY_XML_NS__
|
7
|
-
|
8
|
-
extern VALUE cXMLNS;
|
9
|
-
|
10
|
-
void ruby_init_xml_ns(void);
|
11
|
-
VALUE ruby_xml_ns_wrap(xmlNsPtr ns);
|
12
|
-
#endif
|
1
|
+
/* $Id: ruby_xml_ns.h 324 2008-07-08 23:00:02Z cfis $ */
|
2
|
+
|
3
|
+
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
+
|
5
|
+
#ifndef __RUBY_XML_NS__
|
6
|
+
#define __RUBY_XML_NS__
|
7
|
+
|
8
|
+
extern VALUE cXMLNS;
|
9
|
+
|
10
|
+
void ruby_init_xml_ns(void);
|
11
|
+
VALUE ruby_xml_ns_wrap(xmlNsPtr ns);
|
12
|
+
#endif
|
@@ -1,11 +1,10 @@
|
|
1
|
-
/* $Id: ruby_xml_parser.c
|
1
|
+
/* $Id: ruby_xml_parser.c 461 2008-07-15 21:35:56Z cfis $ */
|
2
2
|
|
3
3
|
/* Please see the LICENSE file for copyright and distribution information */
|
4
4
|
|
5
5
|
#include <stdarg.h>
|
6
6
|
#include "ruby_libxml.h"
|
7
7
|
|
8
|
-
static VALUE libxml_xmlRubyErrorProc = Qnil;
|
9
8
|
static int id_call;
|
10
9
|
|
11
10
|
VALUE cXMLParser;
|
@@ -764,6 +763,7 @@ ruby_xml_parser_filename_set(VALUE self, VALUE filename) {
|
|
764
763
|
ruby_xml_parser *rxp;
|
765
764
|
ruby_xml_parser_context *rxpc;
|
766
765
|
rx_file_data *data;
|
766
|
+
int retry_count = 0;
|
767
767
|
|
768
768
|
Check_Type(filename, T_STRING);
|
769
769
|
Data_Get_Struct(self, ruby_xml_parser, rxp);
|
@@ -784,9 +784,17 @@ ruby_xml_parser_filename_set(VALUE self, VALUE filename) {
|
|
784
784
|
data->filename = filename;
|
785
785
|
|
786
786
|
Data_Get_Struct(rxp->ctxt, ruby_xml_parser_context, rxpc);
|
787
|
+
retry:
|
787
788
|
rxpc->ctxt = xmlCreateFileParserCtxt(StringValuePtr(filename));
|
788
|
-
if (rxpc->ctxt == NULL)
|
789
|
-
|
789
|
+
if (rxpc->ctxt == NULL) {
|
790
|
+
if ((errno == EMFILE || errno == ENFILE) && retry_count == 0) {
|
791
|
+
retry_count++;
|
792
|
+
rb_gc();
|
793
|
+
goto retry;
|
794
|
+
} else {
|
795
|
+
rb_raise(rb_eIOError, StringValuePtr(filename));
|
796
|
+
}
|
797
|
+
}
|
790
798
|
|
791
799
|
return(data->filename);
|
792
800
|
}
|
@@ -1224,51 +1232,19 @@ ruby_xml_parser_str_set(VALUE self, VALUE str) {
|
|
1224
1232
|
return(data->str);
|
1225
1233
|
}
|
1226
1234
|
|
1227
|
-
/*
|
1228
|
-
* call-seq:
|
1229
|
-
* XML::Parser.register_error_handler(lambda { |msg| ... }) -> old_handler
|
1230
|
-
* XML::Parser.register_error_handler(nil) -> old_handler
|
1231
|
-
*
|
1232
|
-
* Register the attached block as the handler for parser errors.
|
1233
|
-
* A message describing parse errors is passed to the block.
|
1234
|
-
* Libxml passes error messages to the handler in parts, one per call.
|
1235
|
-
* A typical error results in six calls to this proc, with arguments:
|
1236
|
-
*
|
1237
|
-
* "Entity: line 1: ",
|
1238
|
-
* "parser ",
|
1239
|
-
* "error : ",
|
1240
|
-
* "Opening and ending tag mismatch: foo line 1 and foz\n",
|
1241
|
-
* "<foo><bar/></foz>\n",
|
1242
|
-
* " ^\n"
|
1243
|
-
*
|
1244
|
-
* Note that the error handler is shared by all threads.
|
1245
|
-
*/
|
1246
|
-
VALUE
|
1247
|
-
ruby_xml_parser_registerErrorHandler(VALUE self, VALUE proc) {
|
1248
|
-
VALUE old_block = libxml_xmlRubyErrorProc;
|
1249
|
-
libxml_xmlRubyErrorProc = proc;
|
1250
|
-
return(old_block);
|
1251
|
-
}
|
1252
|
-
|
1253
1235
|
static void
|
1254
1236
|
libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg, ...)
|
1255
1237
|
{
|
1238
|
+
VALUE message;
|
1256
1239
|
va_list ap;
|
1257
1240
|
char str[1000];
|
1258
|
-
VALUE rstr;
|
1259
1241
|
|
1260
|
-
|
1261
|
-
|
1262
|
-
|
1263
|
-
va_end(ap);
|
1264
|
-
} else {
|
1265
|
-
va_start(ap, msg);
|
1266
|
-
if (vsnprintf(str, 999, msg, ap) >= 998) str[999] = 0;
|
1267
|
-
va_end(ap);
|
1242
|
+
va_start(ap, msg);
|
1243
|
+
if (vsnprintf(str, 999, msg, ap) >= 998) str[999] = 0;
|
1244
|
+
va_end(ap);
|
1268
1245
|
|
1269
|
-
|
1270
|
-
|
1271
|
-
}
|
1246
|
+
message = rb_str_new2(str);
|
1247
|
+
rb_funcall(cXMLParser, rb_intern("xml_error_func_handler"), 1, message);
|
1272
1248
|
}
|
1273
1249
|
|
1274
1250
|
/* #define RUBY_XML_PARSER_ENABLED_INIT(func, method) \
|
@@ -1284,7 +1260,8 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNUSED void *ctx, const char *msg, ...)
|
|
1284
1260
|
|
1285
1261
|
// Rdoc needs to know
|
1286
1262
|
#ifdef RDOC_NEVER_DEFINED
|
1287
|
-
|
1263
|
+
mLibXML = rb_define_module("LibXML");
|
1264
|
+
mXML = rb_define_module_under(mLibXML, "XML");
|
1288
1265
|
#endif
|
1289
1266
|
|
1290
1267
|
void
|
@@ -1404,7 +1381,6 @@ ruby_init_parser(void) {
|
|
1404
1381
|
ruby_xml_parser_memory_used, 0);
|
1405
1382
|
rb_define_singleton_method(cXMLParser, "new", ruby_xml_parser_new, 0);
|
1406
1383
|
rb_define_singleton_method(cXMLParser, "string", ruby_xml_parser_new_string, 1);
|
1407
|
-
rb_define_singleton_method(cXMLParser, "register_error_handler", ruby_xml_parser_registerErrorHandler, 1);
|
1408
1384
|
rb_define_method(cXMLParser, "filename", ruby_xml_parser_filename_get, 0);
|
1409
1385
|
rb_define_method(cXMLParser, "filename=", ruby_xml_parser_filename_set, 1);
|
1410
1386
|
rb_define_method(cXMLParser, "io", ruby_xml_parser_io_get, 0);
|
@@ -1418,9 +1394,5 @@ ruby_init_parser(void) {
|
|
1418
1394
|
xmlSetGenericErrorFunc(NULL, libxml_xmlErrorFuncHandler);
|
1419
1395
|
xmlThrDefSetGenericErrorFunc(NULL, libxml_xmlErrorFuncHandler);
|
1420
1396
|
|
1421
|
-
// Ruby needs to know about this even though it's not exported, otherwise
|
1422
|
-
// our error proc might get garbage collected.
|
1423
|
-
rb_global_variable(&libxml_xmlRubyErrorProc);
|
1424
|
-
|
1425
1397
|
id_call = rb_intern("call");
|
1426
1398
|
}
|
@@ -1,31 +1,31 @@
|
|
1
|
-
/* $Id: ruby_xml_parser.h 39 2006-02-21 20:40:16Z roscopeco $ */
|
2
|
-
|
3
|
-
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
-
|
5
|
-
#ifndef __RUBY_XML_PARSER__
|
6
|
-
#define __RUBY_XML_PARSER__
|
7
|
-
|
8
|
-
#define MAX_LIBXML_FEATURES_LEN 50
|
9
|
-
|
10
|
-
extern int ruby_xml_parser_count;
|
11
|
-
extern VALUE cXMLParser;
|
12
|
-
extern VALUE eXMLParserParseError;
|
13
|
-
|
14
|
-
typedef struct ruby_xml_parser {
|
15
|
-
VALUE ctxt;
|
16
|
-
int parsed;
|
17
|
-
void *data;
|
18
|
-
int data_type;
|
19
|
-
} ruby_xml_parser;
|
20
|
-
|
21
|
-
VALUE ruby_xml_parser_default_load_external_dtd_set(VALUE class, VALUE bool);
|
22
|
-
VALUE ruby_xml_parser_default_substitute_entities_set(VALUE class, VALUE bool);
|
23
|
-
VALUE ruby_xml_parser_features(VALUE self);
|
24
|
-
VALUE ruby_xml_parser_filename_get(VALUE self);
|
25
|
-
VALUE ruby_xml_parser_filename_set(VALUE self, VALUE filename);
|
26
|
-
VALUE ruby_xml_parser_new(VALUE class);
|
27
|
-
VALUE ruby_xml_parser_parse(VALUE self);
|
28
|
-
VALUE ruby_xml_parser_str_get(VALUE self);
|
29
|
-
VALUE ruby_xml_parser_str_set(VALUE self, VALUE str);
|
30
|
-
|
31
|
-
#endif
|
1
|
+
/* $Id: ruby_xml_parser.h 39 2006-02-21 20:40:16Z roscopeco $ */
|
2
|
+
|
3
|
+
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
+
|
5
|
+
#ifndef __RUBY_XML_PARSER__
|
6
|
+
#define __RUBY_XML_PARSER__
|
7
|
+
|
8
|
+
#define MAX_LIBXML_FEATURES_LEN 50
|
9
|
+
|
10
|
+
extern int ruby_xml_parser_count;
|
11
|
+
extern VALUE cXMLParser;
|
12
|
+
extern VALUE eXMLParserParseError;
|
13
|
+
|
14
|
+
typedef struct ruby_xml_parser {
|
15
|
+
VALUE ctxt;
|
16
|
+
int parsed;
|
17
|
+
void *data;
|
18
|
+
int data_type;
|
19
|
+
} ruby_xml_parser;
|
20
|
+
|
21
|
+
VALUE ruby_xml_parser_default_load_external_dtd_set(VALUE class, VALUE bool);
|
22
|
+
VALUE ruby_xml_parser_default_substitute_entities_set(VALUE class, VALUE bool);
|
23
|
+
VALUE ruby_xml_parser_features(VALUE self);
|
24
|
+
VALUE ruby_xml_parser_filename_get(VALUE self);
|
25
|
+
VALUE ruby_xml_parser_filename_set(VALUE self, VALUE filename);
|
26
|
+
VALUE ruby_xml_parser_new(VALUE class);
|
27
|
+
VALUE ruby_xml_parser_parse(VALUE self);
|
28
|
+
VALUE ruby_xml_parser_str_get(VALUE self);
|
29
|
+
VALUE ruby_xml_parser_str_set(VALUE self, VALUE str);
|
30
|
+
|
31
|
+
#endif
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/* $Id: ruby_xml_parser_context.c
|
1
|
+
/* $Id: ruby_xml_parser_context.c 461 2008-07-15 21:35:56Z cfis $ */
|
2
2
|
|
3
3
|
/* Please see the LICENSE file for copyright and distribution information */
|
4
4
|
|
@@ -650,7 +650,8 @@ ruby_xml_parser_context_well_formed_q(VALUE self) {
|
|
650
650
|
|
651
651
|
// Rdoc needs to know
|
652
652
|
#ifdef RDOC_NEVER_DEFINED
|
653
|
-
|
653
|
+
mLibXML = rb_define_module("LibXML");
|
654
|
+
mXML = rb_define_module_under(mLibXML, "XML");
|
654
655
|
cXMLParser = rb_define_class_under(mXML, "Parser", rb_cObject);
|
655
656
|
#endif
|
656
657
|
|
@@ -1,20 +1,20 @@
|
|
1
|
-
/* $Id: ruby_xml_parser_context.h 319 2008-07-08 07:40:27Z cfis $ */
|
2
|
-
|
3
|
-
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
-
|
5
|
-
#ifndef __RUBY_XML_PARSER_CONTEXT__
|
6
|
-
#define __RUBY_XML_PARSER_CONTEXT__
|
7
|
-
|
8
|
-
extern VALUE cXMLParserContext;
|
9
|
-
|
10
|
-
typedef struct ruby_xml_parser_context {
|
11
|
-
xmlParserCtxtPtr ctxt;
|
12
|
-
int is_ptr;
|
13
|
-
} ruby_xml_parser_context;
|
14
|
-
|
15
|
-
void ruby_xml_parser_context_free(ruby_xml_parser_context *ctxt);
|
16
|
-
void ruby_init_xml_parser_context(void);
|
17
|
-
VALUE ruby_xml_parser_context_new();
|
18
|
-
VALUE ruby_xml_parser_context_each(VALUE self);
|
19
|
-
|
20
|
-
#endif
|
1
|
+
/* $Id: ruby_xml_parser_context.h 319 2008-07-08 07:40:27Z cfis $ */
|
2
|
+
|
3
|
+
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
+
|
5
|
+
#ifndef __RUBY_XML_PARSER_CONTEXT__
|
6
|
+
#define __RUBY_XML_PARSER_CONTEXT__
|
7
|
+
|
8
|
+
extern VALUE cXMLParserContext;
|
9
|
+
|
10
|
+
typedef struct ruby_xml_parser_context {
|
11
|
+
xmlParserCtxtPtr ctxt;
|
12
|
+
int is_ptr;
|
13
|
+
} ruby_xml_parser_context;
|
14
|
+
|
15
|
+
void ruby_xml_parser_context_free(ruby_xml_parser_context *ctxt);
|
16
|
+
void ruby_init_xml_parser_context(void);
|
17
|
+
VALUE ruby_xml_parser_context_new();
|
18
|
+
VALUE ruby_xml_parser_context_each(VALUE self);
|
19
|
+
|
20
|
+
#endif
|
@@ -789,7 +789,8 @@ ruby_xml_reader_valid(VALUE self)
|
|
789
789
|
|
790
790
|
/* Rdoc needs to know. */
|
791
791
|
#ifdef RDOC_NEVER_DEFINED
|
792
|
-
|
792
|
+
mLibXML = rb_define_module("LibXML");
|
793
|
+
mXML = rb_define_module_under(mLibXML, "XML");
|
793
794
|
#endif
|
794
795
|
|
795
796
|
void
|
@@ -1,4 +1,4 @@
|
|
1
|
-
/* $Id: ruby_xml_sax_parser.c
|
1
|
+
/* $Id: ruby_xml_sax_parser.c 461 2008-07-15 21:35:56Z cfis $ */
|
2
2
|
|
3
3
|
/* Please see the LICENSE file for copyright and distribution information */
|
4
4
|
|
@@ -406,7 +406,8 @@ ruby_xml_sax_callbacks_on_external_subset(int argc, VALUE *argv, VALUE self) {
|
|
406
406
|
|
407
407
|
// Rdoc needs to know
|
408
408
|
#ifdef RDOC_NEVER_DEFINED
|
409
|
-
|
409
|
+
mLibXML = rb_define_module("LibXML");
|
410
|
+
mXML = rb_define_module_under(mLibXML, "XML");
|
410
411
|
#endif
|
411
412
|
|
412
413
|
void
|
@@ -1,56 +1,56 @@
|
|
1
|
-
/* $Id: ruby_xml_sax_parser.h 111 2006-11-20 01:39:14Z roscopeco $ */
|
2
|
-
|
3
|
-
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
-
|
5
|
-
#ifndef __RUBY_XML_SAX_PARSER__
|
6
|
-
#define __RUBY_XML_SAX_PARSER__
|
7
|
-
|
8
|
-
extern VALUE cXMLSaxParser;
|
9
|
-
extern VALUE mXMLSaxParserCallbacks;
|
10
|
-
|
11
|
-
/*
|
12
|
-
typedef struct ruby_xml_sax_parser_callbacks {
|
13
|
-
VALUE internalSubset;
|
14
|
-
VALUE isStandalone;
|
15
|
-
VALUE hasInternalSubset;
|
16
|
-
VALUE hasExternalSubset;
|
17
|
-
VALUE resolveEntity;
|
18
|
-
VALUE getEntity;
|
19
|
-
VALUE entityDecl;
|
20
|
-
VALUE notationDecl;
|
21
|
-
VALUE attributeDecl;
|
22
|
-
VALUE elementDecl;
|
23
|
-
VALUE unparsedEntityDecl;
|
24
|
-
VALUE setDocumentLocator;
|
25
|
-
VALUE startDocument;
|
26
|
-
VALUE endDocument;
|
27
|
-
VALUE startElement;
|
28
|
-
VALUE endElement;
|
29
|
-
VALUE reference;
|
30
|
-
VALUE characters;
|
31
|
-
VALUE ignorableWhitespace;
|
32
|
-
VALUE processingInstruction;
|
33
|
-
VALUE comment;
|
34
|
-
VALUE xmlParserWarning;
|
35
|
-
VALUE xmlParserError;
|
36
|
-
VALUE xmlParserFatalError;
|
37
|
-
VALUE getParameterEntity;
|
38
|
-
VALUE cdataBlock;
|
39
|
-
VALUE externalSubset;
|
40
|
-
} ruby_xml_sax_parser_callbacks;
|
41
|
-
*/
|
42
|
-
|
43
|
-
typedef struct ruby_xml_sax_parser {
|
44
|
-
xmlParserCtxtPtr xpc;
|
45
|
-
xmlSAXHandlerPtr xsh;
|
46
|
-
//ruby_xml_sax_parser_callbacks *cbp;
|
47
|
-
VALUE callbackHandler;
|
48
|
-
VALUE filename;
|
49
|
-
VALUE str;
|
50
|
-
} ruby_xml_sax_parser;
|
51
|
-
|
52
|
-
void ruby_xml_sax_parser_free(ruby_xml_sax_parser *rxsp);
|
53
|
-
void ruby_init_xml_sax_parser(void);
|
54
|
-
VALUE ruby_xml_sax_parser_new(VALUE class);
|
55
|
-
|
56
|
-
#endif
|
1
|
+
/* $Id: ruby_xml_sax_parser.h 111 2006-11-20 01:39:14Z roscopeco $ */
|
2
|
+
|
3
|
+
/* Please see the LICENSE file for copyright and distribution information */
|
4
|
+
|
5
|
+
#ifndef __RUBY_XML_SAX_PARSER__
|
6
|
+
#define __RUBY_XML_SAX_PARSER__
|
7
|
+
|
8
|
+
extern VALUE cXMLSaxParser;
|
9
|
+
extern VALUE mXMLSaxParserCallbacks;
|
10
|
+
|
11
|
+
/*
|
12
|
+
typedef struct ruby_xml_sax_parser_callbacks {
|
13
|
+
VALUE internalSubset;
|
14
|
+
VALUE isStandalone;
|
15
|
+
VALUE hasInternalSubset;
|
16
|
+
VALUE hasExternalSubset;
|
17
|
+
VALUE resolveEntity;
|
18
|
+
VALUE getEntity;
|
19
|
+
VALUE entityDecl;
|
20
|
+
VALUE notationDecl;
|
21
|
+
VALUE attributeDecl;
|
22
|
+
VALUE elementDecl;
|
23
|
+
VALUE unparsedEntityDecl;
|
24
|
+
VALUE setDocumentLocator;
|
25
|
+
VALUE startDocument;
|
26
|
+
VALUE endDocument;
|
27
|
+
VALUE startElement;
|
28
|
+
VALUE endElement;
|
29
|
+
VALUE reference;
|
30
|
+
VALUE characters;
|
31
|
+
VALUE ignorableWhitespace;
|
32
|
+
VALUE processingInstruction;
|
33
|
+
VALUE comment;
|
34
|
+
VALUE xmlParserWarning;
|
35
|
+
VALUE xmlParserError;
|
36
|
+
VALUE xmlParserFatalError;
|
37
|
+
VALUE getParameterEntity;
|
38
|
+
VALUE cdataBlock;
|
39
|
+
VALUE externalSubset;
|
40
|
+
} ruby_xml_sax_parser_callbacks;
|
41
|
+
*/
|
42
|
+
|
43
|
+
typedef struct ruby_xml_sax_parser {
|
44
|
+
xmlParserCtxtPtr xpc;
|
45
|
+
xmlSAXHandlerPtr xsh;
|
46
|
+
//ruby_xml_sax_parser_callbacks *cbp;
|
47
|
+
VALUE callbackHandler;
|
48
|
+
VALUE filename;
|
49
|
+
VALUE str;
|
50
|
+
} ruby_xml_sax_parser;
|
51
|
+
|
52
|
+
void ruby_xml_sax_parser_free(ruby_xml_sax_parser *rxsp);
|
53
|
+
void ruby_init_xml_sax_parser(void);
|
54
|
+
VALUE ruby_xml_sax_parser_new(VALUE class);
|
55
|
+
|
56
|
+
#endif
|