libxml-ruby 0.8.0 → 0.8.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 (92) hide show
  1. data/CHANGES +8 -1
  2. data/README +2 -2
  3. data/benchmark/xml_benchmarks.rb +6 -1
  4. data/doc/{classes → rdoc/classes}/LibXML.html +0 -0
  5. data/doc/{classes → rdoc/classes}/LibXML/XML.html +0 -0
  6. data/doc/{classes → rdoc/classes}/LibXML/XML/Attr.html +159 -159
  7. data/doc/{classes → rdoc/classes}/LibXML/XML/Attributes.html +56 -90
  8. data/doc/{classes → rdoc/classes}/LibXML/XML/Document.html +219 -219
  9. data/doc/{classes → rdoc/classes}/LibXML/XML/Dtd.html +6 -6
  10. data/doc/{classes → rdoc/classes}/LibXML/XML/Error.html +0 -0
  11. data/doc/{classes → rdoc/classes}/LibXML/XML/HTMLParser.html +36 -36
  12. data/doc/{classes → rdoc/classes}/LibXML/XML/InputCallbacks.html +6 -6
  13. data/doc/{classes → rdoc/classes}/LibXML/XML/NS.html +42 -42
  14. data/doc/{classes → rdoc/classes}/LibXML/XML/Node.html +728 -812
  15. data/doc/{classes → rdoc/classes}/LibXML/XML/Node/FailedModify.html +0 -0
  16. data/doc/{classes → rdoc/classes}/LibXML/XML/Node/Set.html +54 -54
  17. data/doc/{classes → rdoc/classes}/LibXML/XML/Node/SetNamespace.html +0 -0
  18. data/doc/{classes → rdoc/classes}/LibXML/XML/Node/UnknownType.html +0 -0
  19. data/doc/{classes → rdoc/classes}/LibXML/XML/Parser.html +0 -0
  20. data/doc/{classes → rdoc/classes}/LibXML/XML/Parser/Context.html +0 -0
  21. data/doc/{classes → rdoc/classes}/LibXML/XML/Parser/ParseError.html +0 -0
  22. data/doc/{classes → rdoc/classes}/LibXML/XML/Reader.html +282 -282
  23. data/doc/{classes → rdoc/classes}/LibXML/XML/SaxParser.html +48 -48
  24. data/doc/{classes → rdoc/classes}/LibXML/XML/Schema.html +18 -18
  25. data/doc/{classes → rdoc/classes}/LibXML/XML/State.html +0 -0
  26. data/doc/{classes → rdoc/classes}/LibXML/XML/Tree.html +0 -0
  27. data/doc/{classes → rdoc/classes}/LibXML/XML/XInclude.html +0 -0
  28. data/doc/{classes → rdoc/classes}/LibXML/XML/XInclude/Error.html +0 -0
  29. data/doc/{classes → rdoc/classes}/LibXML/XML/XMLParserOptions.html +0 -0
  30. data/doc/{classes → rdoc/classes}/LibXML/XML/XPath.html +2 -2
  31. data/doc/{classes → rdoc/classes}/LibXML/XML/XPath/Context.html +2 -2
  32. data/doc/{classes → rdoc/classes}/LibXML/XML/XPath/InvalidPath.html +0 -0
  33. data/doc/{classes → rdoc/classes}/LibXML/XML/XPath/Object.html +0 -0
  34. data/doc/{classes → rdoc/classes}/LibXML/XML/XPointer.html +6 -6
  35. data/doc/{classes → rdoc/classes}/LibXML/XML/XPointer/Context.html +0 -0
  36. data/doc/{classes → rdoc/classes}/LibXML/XML/XPointer/Context/InvalidPath.html +0 -0
  37. data/doc/{classes → rdoc/classes}/LibXML/XML/XPointer/InvalidExpression.html +0 -0
  38. data/doc/{classes → rdoc/classes}/XML.html +0 -0
  39. data/doc/{classes → rdoc/classes}/singleton.html +0 -0
  40. data/doc/rdoc/created.rid +1 -0
  41. data/doc/{files → rdoc/files}/CHANGES.html +11 -2
  42. data/doc/{files → rdoc/files}/LICENSE.html +0 -0
  43. data/doc/{files → rdoc/files}/README.html +2 -2
  44. data/doc/{files → rdoc/files}/VERSION.html +0 -0
  45. data/doc/{files → rdoc/files}/ext/libxml/cbg_c.html +0 -0
  46. data/doc/{files → rdoc/files}/ext/libxml/libxml_c.html +0 -0
  47. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_attr_c.html +0 -0
  48. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_attributes_c.html +0 -0
  49. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_document_c.html +0 -0
  50. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_dtd_c.html +0 -0
  51. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_html_parser_c.html +0 -0
  52. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_input_cbg_c.html +0 -0
  53. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_node_c.html +1 -1
  54. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_node_set_c.html +0 -0
  55. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_ns_c.html +0 -0
  56. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_parser_c.html +0 -0
  57. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_parser_context_c.html +0 -0
  58. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_reader_c.html +0 -0
  59. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_sax_parser_c.html +0 -0
  60. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_schema_c.html +0 -0
  61. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_state_c.html +0 -0
  62. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_xinclude_c.html +0 -0
  63. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_xpath_c.html +0 -0
  64. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_xpath_context_c.html +0 -0
  65. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_xpath_object_c.html +0 -0
  66. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_xpointer_c.html +0 -0
  67. data/doc/{files → rdoc/files}/ext/libxml/ruby_xml_xpointer_context_c.html +0 -0
  68. data/doc/{files → rdoc/files}/lib/libxml/attr_rb.html +0 -0
  69. data/doc/{files → rdoc/files}/lib/libxml/attributes_rb.html +0 -0
  70. data/doc/{files → rdoc/files}/lib/libxml/document_rb.html +0 -0
  71. data/doc/{files → rdoc/files}/lib/libxml/node_rb.html +1 -1
  72. data/doc/{files → rdoc/files}/lib/libxml/node_set_rb.html +0 -0
  73. data/doc/{files → rdoc/files}/lib/libxml/parser_options_rb.html +0 -0
  74. data/doc/{files → rdoc/files}/lib/libxml/parser_rb.html +0 -0
  75. data/doc/{files → rdoc/files}/lib/libxml/properties_rb.html +1 -1
  76. data/doc/{files → rdoc/files}/lib/libxml/tree_rb.html +0 -0
  77. data/doc/{files → rdoc/files}/lib/libxml_rb.html +0 -0
  78. data/doc/{files → rdoc/files}/lib/xml/libxml_rb.html +0 -0
  79. data/doc/{fr_class_index.html → rdoc/fr_class_index.html} +0 -0
  80. data/doc/{fr_file_index.html → rdoc/fr_file_index.html} +0 -0
  81. data/doc/{fr_method_index.html → rdoc/fr_method_index.html} +233 -234
  82. data/doc/{index.html → rdoc/index.html} +2 -2
  83. data/doc/{rdoc-style.css → rdoc/rdoc-style.css} +0 -0
  84. data/ext/libxml/extconf.rb +75 -117
  85. data/ext/libxml/ruby_xml_node.c +14 -401
  86. data/ext/libxml/version.h +2 -2
  87. data/lib/libxml/node.rb +159 -27
  88. data/lib/libxml/properties.rb +2 -8
  89. data/mingw/libxml_ruby.so +0 -0
  90. data/test/tc_xml_attributes.rb +9 -0
  91. metadata +98 -97
  92. data/doc/created.rid +0 -1
@@ -5,12 +5,12 @@
5
5
 
6
6
  <!--
7
7
 
8
- libxml-ruby
8
+ LibXML
9
9
 
10
10
  -->
11
11
  <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
12
12
  <head>
13
- <title>libxml-ruby</title>
13
+ <title>LibXML</title>
14
14
  <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
15
15
  </head>
16
16
  <frameset rows="20%, 80%">
@@ -11,147 +11,105 @@ def method_missing(s, *args)
11
11
  end
12
12
  end
13
13
 
14
+ require 'mkmf'
14
15
 
15
- if RUBY_PLATFORM =~ /win32/ # FIXME: Make more robust
16
-
17
- # We can't use Ruby's standard build procedures
18
- # on Windows because the Ruby executable is
19
- # built with VC++ while here we want to build
20
- # with MingW. So just roll our own...
21
-
22
- target = "libxml"
23
-
24
- #RUBY_INCLUDE_DIR = Config::CONFIG["archdir"]
25
- #RUBY_BIN_DIR = Config::CONFIG["bindir"]
26
- #RUBY_LIB_DIR = Config::CONFIG["libdir"]
27
- #RUBY_SHARED_LIB = Config::CONFIG["LIBRUBY"]
28
- #RUBY_SHARED_DLL = RUBY_SHARED_LIB.gsub(/lib$/, 'dll')
29
-
30
- #CLEAN.include('*.o')
31
- #CLOBBER.include('ruby_prof.so')
32
-
33
- srcs = Dir['../ext/*.c']
34
-
35
- objs = srcs.collect do |srcfile|
36
- srcfile = File.basename(srcfile)
37
- srcfile.chomp(File.extname(srcfile) + '.o')
38
- end
39
-
40
- #srcs.each do |srcfile|
41
- # srcfile = File.basename(srcfile)
42
- # objfile = srcfile.chomp(File.extname(srcfile) + '.o')
43
- #
44
- # if File.mtime(objfile) < File.mtime(srcfile)
45
- # system "gcc -c -fPIC -O2 -Wall -o #{objfile} #{srcfile} -I#{RUBY_INCLUDE_DIR}"
46
- # end
47
- #end
48
-
49
- #system "gcc -shared -o #{LIBNAME} #{obj} #{RUBY_BIN_DIR}/#{RUBY_SHARED_DLL}"
50
-
51
- makefile_template = DATA.read
52
- makefile = eval(makefile_template)
53
-
54
- File.open('Makefile', 'w'){ |f| f << makefile }
55
-
56
- else
57
-
58
- require 'mkmf'
59
-
60
- if defined?(CFLAGS)
61
- if CFLAGS.index(CONFIG['CCDLFLAGS'])
62
- $CFLAGS = CFLAGS
63
- else
64
- $CFLAGS = CFLAGS + ' ' + CONFIG['CCDLFLAGS']
65
- end
16
+ if defined?(CFLAGS)
17
+ if CFLAGS.index(CONFIG['CCDLFLAGS'])
18
+ $CFLAGS = CFLAGS + ' ' + CONFIG['CCDLFLAGS']
66
19
  else
67
- $CFLAGS = CONFIG['CFLAGS']
20
+ $CFLAGS = CFLAGS
68
21
  end
69
- $LDFLAGS = CONFIG['LDFLAGS']
70
- $LIBPATH.push(Config::CONFIG['libdir'])
22
+ else
23
+ $CFLAGS = CONFIG['CFLAGS']
24
+ end
25
+ $LDFLAGS = CONFIG['LDFLAGS']
26
+ $LIBPATH.push(Config::CONFIG['libdir'])
71
27
 
72
- def crash(str)
73
- printf(" extconf failure: %s\n", str)
74
- exit 1
75
- end
28
+ def crash(str)
29
+ printf(" extconf failure: %s\n", str)
30
+ exit 1
31
+ end
76
32
 
77
- dir_config('iconv')
78
- dir_config('xml2')
79
- dir_config('zlib')
33
+ dir_config('iconv')
34
+ dir_config('xml2')
35
+ dir_config('zlib')
80
36
 
81
- have_library('socket','socket')
82
- have_library('nsl','gethostbyname')
37
+ have_library('socket','socket')
38
+ have_library('nsl','gethostbyname')
83
39
 
40
+ unless have_library('m', 'atan')
41
+ # try again for gcc 4.0
42
+ saveflags = $CFLAGS
43
+ $CFLAGS += ' -fno-builtin'
84
44
  unless have_library('m', 'atan')
85
- # try again for gcc 4.0
86
- saveflags = $CFLAGS
87
- $CFLAGS += ' -fno-builtin'
88
- unless have_library('m', 'atan')
89
- crash('need libm')
90
- end
91
- $CFLAGS = saveflags
45
+ crash('need libm')
92
46
  end
47
+ $CFLAGS = saveflags
48
+ end
93
49
 
94
- unless have_library('z', 'inflate') or
95
- have_library('zlib', 'inflate') or
96
- have_library('zlib1', 'inflate')
97
- crash('need zlib')
98
- else
99
- $defs.push('-DHAVE_ZLIB_H')
100
- end
50
+ unless have_library('z', 'inflate') or
51
+ have_library('zlib', 'inflate') or
52
+ have_library('zlib1', 'inflate')
53
+ crash('need zlib')
54
+ else
55
+ $defs.push('-DHAVE_ZLIB_H')
56
+ end
101
57
 
102
- unless have_library('iconv','iconv_open') or
103
- have_library('iconv','libiconv_open') or
104
- have_library('libiconv', 'libiconv_open') or
105
- have_library('libiconv', 'iconv_open') or
106
- have_library('c','iconv_open') or
107
- have_library('recode','iconv_open') or
108
- have_library('iconv')
109
- crash(<<EOL)
58
+ unless have_library('iconv','iconv_open') or
59
+ have_library('iconv','libiconv_open') or
60
+ have_library('libiconv', 'libiconv_open') or
61
+ have_library('libiconv', 'iconv_open') or
62
+ have_library('c','iconv_open') or
63
+ have_library('recode','iconv_open') or
64
+ have_library('iconv')
65
+ crash(<<EOL)
110
66
  need libiconv.
111
67
 
112
- Install the libiconv or try passing one of the following options
113
- to extconf.rb:
68
+ Install the libiconv or try passing one of the following options
69
+ to extconf.rb:
114
70
 
115
- --with-iconv-dir=/path/to/iconv
116
- --with-iconv-lib=/path/to/iconv/lib
117
- --with-iconv-include=/path/to/iconv/include
71
+ --with-iconv-dir=/path/to/iconv
72
+ --with-iconv-lib=/path/to/iconv/lib
73
+ --with-iconv-include=/path/to/iconv/include
118
74
  EOL
119
- end
75
+ end
120
76
 
121
- unless (have_library('xml2', 'xmlParseDoc') or
122
- have_library('libxml2', 'xmlParseDoc') or
123
- find_library('xml2', 'xmlParseDoc', '/opt/lib', '/usr/local/lib', '/usr/lib')) and
124
- (have_header('libxml/xmlversion.h') or
125
- find_header('libxml/xmlversion.h',
126
- "#{CONFIG['prefix']}/include",
127
- '/opt/include/libxml2',
128
- '/usr/local/include/libxml2',
129
- '/usr/include/libxml2'))
130
- crash(<<EOL)
77
+ unless (have_library('xml2', 'xmlParseDoc') or
78
+ have_library('libxml2', 'xmlParseDoc') or
79
+ find_library('xml2', 'xmlParseDoc', '/opt/lib', '/usr/local/lib', '/usr/lib')) and
80
+ (have_header('libxml/xmlversion.h') or
81
+ find_header('libxml/xmlversion.h',
82
+ "#{CONFIG['prefix']}/include",
83
+ '/opt/include/libxml2',
84
+ '/usr/local/include/libxml2',
85
+ '/usr/include/libxml2'))
86
+ crash(<<EOL)
131
87
  need libxml2.
132
88
 
133
- Install the library or try one of the following options to extconf.rb:
89
+ Install the library or try one of the following options to extconf.rb:
134
90
 
135
- --with-xml2-dir=/path/to/libxml2
136
- --with-xml2-lib=/path/to/libxml2/lib
137
- --with-xml2-include=/path/to/libxml2/include
91
+ --with-xml2-dir=/path/to/libxml2
92
+ --with-xml2-lib=/path/to/libxml2/lib
93
+ --with-xml2-include=/path/to/libxml2/include
138
94
  EOL
139
- end
95
+ end
140
96
 
141
- unless have_func('xmlDocFormatDump')
142
- crash('Your version of libxml2 is too old. Please upgrade.')
143
- end
97
+ unless have_func('xmlDocFormatDump')
98
+ crash('Your version of libxml2 is too old. Please upgrade.')
99
+ end
144
100
 
145
- unless have_func('docbCreateFileParserCtxt')
146
- crash('Need docbCreateFileParserCtxt')
147
- end
101
+ unless have_func('docbCreateFileParserCtxt')
102
+ crash('Need docbCreateFileParserCtxt')
103
+ end
148
104
 
149
- $CFLAGS << ' ' << $INCFLAGS
150
- #$INSTALLFILES = [["libxml.rb", "$(RUBYLIBDIR)", "../xml"]]
105
+ # For FreeBSD add /usr/local/include
106
+ $INCFLAGS << " -I/usr/local/include"
151
107
 
152
- create_header()
153
- create_makefile('libxml_ruby')
154
- end
108
+ $CFLAGS << ' ' << $INCFLAGS
109
+ #$INSTALLFILES = [["libxml.rb", "$(RUBYLIBDIR)", "../xml"]]
110
+
111
+ create_header()
112
+ create_makefile('libxml_ruby')
155
113
 
156
114
  __END__
157
115
 
@@ -19,38 +19,6 @@ check_string_or_symbol( VALUE val ) {
19
19
  return rb_obj_as_string( val );
20
20
  }
21
21
 
22
- /*
23
- * call-seq:
24
- * node.attribute? -> (true|false)
25
- *
26
- * Determine whether this is an attribute node,
27
- */
28
- VALUE
29
- ruby_xml_node_attribute_q(VALUE self) {
30
- xmlNodePtr xnode;
31
- Data_Get_Struct(self, xmlNode, xnode);
32
- if (xnode->type == XML_ATTRIBUTE_NODE)
33
- return(Qtrue);
34
- else
35
- return(Qfalse);
36
- }
37
-
38
- /*
39
- * call-seq:
40
- * node.attribute_decl? -> (true|false)
41
- *
42
- * Determine whether this is an attribute declaration node,
43
- */
44
- VALUE
45
- ruby_xml_node_attribute_decl_q(VALUE self) {
46
- xmlNodePtr xnode;
47
- Data_Get_Struct(self, xmlNode, xnode);
48
- if (xnode->type == XML_ATTRIBUTE_DECL)
49
- return(Qtrue);
50
- else
51
- return(Qfalse);
52
- }
53
-
54
22
 
55
23
  /*
56
24
  * call-seq:
@@ -101,40 +69,6 @@ ruby_xml_node_base_set(VALUE self, VALUE uri) {
101
69
  }
102
70
 
103
71
 
104
- /*
105
- * call-seq:
106
- * node.cdata? -> (true|false)
107
- *
108
- * Determine whether this is a #CDATA node
109
- */
110
- VALUE
111
- ruby_xml_node_cdata_q(VALUE self) {
112
- xmlNodePtr xnode;
113
- Data_Get_Struct(self, xmlNode, xnode);
114
- if (xnode->type == XML_CDATA_SECTION_NODE)
115
- return(Qtrue);
116
- else
117
- return(Qfalse);
118
- }
119
-
120
-
121
- /*
122
- * call-seq:
123
- * node.comment? -> (true|false)
124
- *
125
- * Determine whether this is a comment node
126
- */
127
- VALUE
128
- ruby_xml_node_comment_q(VALUE self) {
129
- xmlNodePtr xnode;
130
- Data_Get_Struct(self, xmlNode, xnode);
131
- if (xnode->type == XML_COMMENT_NODE)
132
- return(Qtrue);
133
- else
134
- return(Qfalse);
135
- }
136
-
137
-
138
72
  /*
139
73
  * call-seq:
140
74
  * node.content -> "string"
@@ -352,79 +286,6 @@ ruby_xml_node_doc(VALUE self) {
352
286
  }
353
287
 
354
288
 
355
- /*
356
- * call-seq:
357
- * node.docbook? -> (true|false)
358
- *
359
- * Determine whether this is a docbook node.
360
- */
361
- VALUE
362
- ruby_xml_node_docbook_doc_q(VALUE self) {
363
- #ifdef LIBXML_DOCB_ENABLED
364
- xmlNodePtr xnode;
365
- Data_Get_Struct(self, xmlNode, xnode);
366
- if (xnode->type == XML_DOCB_DOCUMENT_NODE)
367
- return(Qtrue);
368
- else
369
- return(Qfalse);
370
- #else
371
- rb_warn("libxml compiled without docbook support");
372
- return(Qfalse);
373
- #endif
374
- }
375
-
376
-
377
- /*
378
- * call-seq:
379
- * node.doctype? -> (true|false)
380
- *
381
- * Determine whether this is a DOCTYPE node.
382
- */
383
- VALUE
384
- ruby_xml_node_doctype_q(VALUE self) {
385
- xmlNodePtr xnode;
386
- Data_Get_Struct(self, xmlNode, xnode);
387
- if (xnode->type == XML_DOCUMENT_TYPE_NODE)
388
- return(Qtrue);
389
- else
390
- return(Qfalse);
391
- }
392
-
393
-
394
- /*
395
- * call-seq:
396
- * node.document? -> (true|false)
397
- *
398
- * Determine whether this is a document node.
399
- */
400
- VALUE
401
- ruby_xml_node_document_q(VALUE self) {
402
- xmlNodePtr xnode;
403
- Data_Get_Struct(self, xmlNode, xnode);
404
- if (xnode->type == XML_DOCUMENT_NODE)
405
- return(Qtrue);
406
- else
407
- return(Qfalse);
408
- }
409
-
410
-
411
- /*
412
- * call-seq:
413
- * node.dtd? -> (true|false)
414
- *
415
- * Determine whether this is a DTD node.
416
- */
417
- VALUE
418
- ruby_xml_node_dtd_q(VALUE self) {
419
- xmlNodePtr xnode;
420
- Data_Get_Struct(self, xmlNode, xnode);
421
- if (xnode->type == XML_DTD_NODE)
422
- return(Qtrue);
423
- else
424
- return(Qfalse);
425
- }
426
-
427
-
428
289
  /*
429
290
  * call-seq:
430
291
  * node.dump -> (true|nil)
@@ -472,7 +333,7 @@ ruby_xml_node_debug_dump(VALUE self) {
472
333
  * call-seq:
473
334
  * node.each -> XML::Node
474
335
  *
475
- * Iterates over all of this node's children, including text
336
+ * Iterates over this node's children, including text
476
337
  * nodes, element nodes, etc. If you wish to iterate
477
338
  * only over child elements, use XML::Node#each_element.
478
339
  *
@@ -494,39 +355,6 @@ ruby_xml_node_each(VALUE self) {
494
355
  return Qnil;
495
356
  }
496
357
 
497
- /*
498
- * call-seq:
499
- * node.element? -> (true|false)
500
- *
501
- * Determine whether this is an element node.
502
- */
503
- VALUE
504
- ruby_xml_node_element_q(VALUE self) {
505
- xmlNodePtr xnode;
506
- Data_Get_Struct(self, xmlNode, xnode);
507
- if (xnode->type == XML_ELEMENT_NODE)
508
- return(Qtrue);
509
- else
510
- return(Qfalse);
511
- }
512
-
513
-
514
- /*
515
- * call-seq:
516
- * node.element_decl? -> (true|false)
517
- *
518
- * Determine whether this is an element declaration node.
519
- */
520
- VALUE
521
- ruby_xml_node_element_decl_q(VALUE self) {
522
- xmlNodePtr xnode;
523
- Data_Get_Struct(self, xmlNode, xnode);
524
- if (xnode->type == XML_ELEMENT_DECL)
525
- return(Qtrue);
526
- else
527
- return(Qfalse);
528
- }
529
-
530
358
 
531
359
  /*
532
360
  * call-seq:
@@ -545,39 +373,6 @@ ruby_xml_node_empty_q(VALUE self) {
545
373
  }
546
374
 
547
375
 
548
- /*
549
- * call-seq:
550
- * node.entity? -> (true|false)
551
- *
552
- * Determine whether this is an entity node.
553
- */
554
- VALUE
555
- ruby_xml_node_entity_q(VALUE self) {
556
- xmlNodePtr xnode;
557
- Data_Get_Struct(self, xmlNode, xnode);
558
- if (xnode->type == XML_ENTITY_NODE)
559
- return(Qtrue);
560
- else
561
- return(Qfalse);
562
- }
563
-
564
-
565
- /*
566
- * call-seq:
567
- * node.entity_ref? -> (true|false)
568
- *
569
- * Determine whether this is an entity reference node.
570
- */
571
- VALUE
572
- ruby_xml_node_entity_ref_q(VALUE self) {
573
- xmlNodePtr xnode;
574
- Data_Get_Struct(self, xmlNode, xnode);
575
- if (xnode->type == XML_ENTITY_REF_NODE)
576
- return(Qtrue);
577
- else
578
- return(Qfalse);
579
- }
580
-
581
376
  VALUE ruby_xml_node_to_s(VALUE self);
582
377
 
583
378
  /*
@@ -610,40 +405,6 @@ ruby_xml_node_eql_q(VALUE self, VALUE other) {
610
405
  }
611
406
  }
612
407
 
613
-
614
- /*
615
- * call-seq:
616
- * node.fragment? -> (true|false)
617
- *
618
- * Determine whether this node is a fragment.
619
- */
620
- VALUE
621
- ruby_xml_node_fragment_q(VALUE self) {
622
- xmlNodePtr xnode;
623
- Data_Get_Struct(self, xmlNode, xnode);
624
- if (xnode->type == XML_DOCUMENT_FRAG_NODE)
625
- return(Qtrue);
626
- else
627
- return(Qfalse);
628
- }
629
-
630
-
631
- /*
632
- * call-seq:
633
- * node.html_doc? -> (true|false)
634
- *
635
- * Determine whether this node is an html document node.
636
- */
637
- VALUE
638
- ruby_xml_node_html_doc_q(VALUE self) {
639
- xmlNodePtr xnode;
640
- Data_Get_Struct(self, xmlNode, xnode);
641
- if (xnode->type == XML_HTML_DOCUMENT_NODE)
642
- return(Qtrue);
643
- else
644
- return(Qfalse);
645
- }
646
-
647
408
  /*
648
409
  * call-seq:
649
410
  * XML::Node.new_cdata(content = nil) -> XML::Node
@@ -1065,23 +826,6 @@ ruby_xml_node_namespace_set(int argc, VALUE *argv, VALUE self) {
1065
826
  }
1066
827
 
1067
828
 
1068
- /*
1069
- * call-seq:
1070
- * node.namespace? -> (true|false)
1071
- *
1072
- * Determine whether this node *is* (not has) a namespace
1073
- * node.
1074
- */
1075
- VALUE
1076
- ruby_xml_node_namespace_q(VALUE self) {
1077
- xmlNodePtr xnode;
1078
- Data_Get_Struct(self, xmlNode, xnode);
1079
- if (xnode->type == XML_NAMESPACE_DECL)
1080
- return(Qtrue);
1081
- else
1082
- return(Qfalse);
1083
- }
1084
-
1085
829
  /*
1086
830
  * memory2 implementation: xmlNode->_private holds a reference
1087
831
  * to the wrapping ruby object VALUE when there is one.
@@ -1279,32 +1023,32 @@ ruby_xml_node_next_set(VALUE self, VALUE rnode) {
1279
1023
 
1280
1024
  /*
1281
1025
  * call-seq:
1282
- * node.notation? -> (true|false)
1026
+ * node.ns? -> (true|false)
1283
1027
  *
1284
- * Determine whether this is a notation node
1028
+ * Determine whether this node has a namespace.
1285
1029
  */
1286
1030
  VALUE
1287
- ruby_xml_node_notation_q(VALUE self) {
1031
+ ruby_xml_node_ns_q(VALUE self) {
1288
1032
  xmlNodePtr xnode;
1289
1033
  Data_Get_Struct(self, xmlNode, xnode);
1290
- if (xnode->type == XML_NOTATION_NODE)
1291
- return(Qtrue);
1292
- else
1034
+ if (xnode->ns == NULL)
1293
1035
  return(Qfalse);
1036
+ else
1037
+ return(Qtrue);
1294
1038
  }
1295
1039
 
1296
-
1297
1040
  /*
1298
1041
  * call-seq:
1299
- * node.ns? -> (true|false)
1042
+ * node.ns_def? -> (true|false)
1300
1043
  *
1301
- * Determine whether this node is a namespace node.
1044
+ * Obtain an array of +XML::NS+ objects representing
1045
+ * this node's xmlns attributes
1302
1046
  */
1303
1047
  VALUE
1304
- ruby_xml_node_ns_q(VALUE self) {
1048
+ ruby_xml_node_ns_def_q(VALUE self) {
1305
1049
  xmlNodePtr xnode;
1306
1050
  Data_Get_Struct(self, xmlNode, xnode);
1307
- if (xnode->ns == NULL)
1051
+ if (xnode->nsDef == NULL)
1308
1052
  return(Qfalse);
1309
1053
  else
1310
1054
  return(Qtrue);
@@ -1328,24 +1072,6 @@ ruby_xml_node_ns_def_get(VALUE self) {
1328
1072
  }
1329
1073
 
1330
1074
 
1331
- /*
1332
- * call-seq:
1333
- * node.ns_def? -> (true|false)
1334
- *
1335
- * Obtain an array of +XML::NS+ objects representing
1336
- * this node's xmlns attributes
1337
- */
1338
- VALUE
1339
- ruby_xml_node_ns_def_q(VALUE self) {
1340
- xmlNodePtr xnode;
1341
- Data_Get_Struct(self, xmlNode, xnode);
1342
- if (xnode->nsDef == NULL)
1343
- return(Qfalse);
1344
- else
1345
- return(Qtrue);
1346
- }
1347
-
1348
-
1349
1075
  /*
1350
1076
  * call-seq:
1351
1077
  * node.parent -> XML::Node
@@ -1386,23 +1112,6 @@ ruby_xml_node_path(VALUE self) {
1386
1112
  }
1387
1113
 
1388
1114
 
1389
- /*
1390
- * call-seq:
1391
- * node.pi? -> (true|false)
1392
- *
1393
- * Determine whether this is a processing instruction node.
1394
- */
1395
- VALUE
1396
- ruby_xml_node_pi_q(VALUE self) {
1397
- xmlNodePtr xnode;
1398
- Data_Get_Struct(self, xmlNode, xnode);
1399
- if (xnode->type == XML_PI_NODE)
1400
- return(Qtrue);
1401
- else
1402
- return(Qfalse);
1403
- }
1404
-
1405
-
1406
1115
  /*
1407
1116
  * call-seq:
1408
1117
  * node.pointer -> XML::Node_set
@@ -1477,7 +1186,6 @@ ruby_xml_node_prev_set(VALUE self, VALUE rnode) {
1477
1186
  return(ruby_xml_node2_wrap(cXMLNode, ret));
1478
1187
  }
1479
1188
 
1480
-
1481
1189
  /*
1482
1190
  * call-seq:
1483
1191
  * node.attributes -> attributes
@@ -1489,12 +1197,7 @@ ruby_xml_node_attributes_get(VALUE self) {
1489
1197
  xmlNodePtr xnode;
1490
1198
 
1491
1199
  Data_Get_Struct(self, xmlNode, xnode);
1492
-
1493
- if (xnode->type == XML_ELEMENT_NODE) {
1494
- return ruby_xml_attributes_new(xnode);
1495
- } else {
1496
- return(Qnil);
1497
- }
1200
+ return ruby_xml_attributes_new(xnode);
1498
1201
  }
1499
1202
 
1500
1203
  /*
@@ -1523,24 +1226,6 @@ ruby_xml_node_property_set(VALUE self, VALUE name, VALUE value) {
1523
1226
  }
1524
1227
 
1525
1228
 
1526
- /*
1527
- * call-seq:
1528
- * node.attributes? -> (true|false)
1529
- *
1530
- * Determine whether this node has properties
1531
- * (attributes).
1532
- */
1533
- VALUE
1534
- ruby_xml_node_attributes_q(VALUE self) {
1535
- xmlNodePtr xnode;
1536
- Data_Get_Struct(self, xmlNode, xnode);
1537
- if (xnode->type == XML_ELEMENT_NODE && xnode->properties != NULL)
1538
- return(Qtrue);
1539
- else
1540
- return(Qfalse);
1541
- }
1542
-
1543
-
1544
1229
  /*
1545
1230
  * call-seq:
1546
1231
  * node.remove! -> nil
@@ -1653,24 +1338,6 @@ ruby_xml_node_space_preserve_set(VALUE self, VALUE bool) {
1653
1338
  return(Qnil);
1654
1339
  }
1655
1340
 
1656
-
1657
- /*
1658
- * call-seq:
1659
- * node.text? -> (true|false)
1660
- *
1661
- * Determine whether this node has text.
1662
- */
1663
- VALUE
1664
- ruby_xml_node_text_q(VALUE self) {
1665
- xmlNodePtr xnode;
1666
- Data_Get_Struct(self, xmlNode, xnode);
1667
- if (xnode == NULL)
1668
- return(Qnil);
1669
-
1670
- return((xmlNodeIsText(xnode) == 1) ? Qtrue : Qfalse);
1671
- }
1672
-
1673
-
1674
1341
  /*
1675
1342
  * call-seq:
1676
1343
  * node.to_s -> "string"
@@ -1708,38 +1375,6 @@ ruby_xml_node_type(VALUE self) {
1708
1375
  }
1709
1376
 
1710
1377
 
1711
- /*
1712
- * call-seq:
1713
- * node.xinclude_end? -> num
1714
- *
1715
- * Determine whether this node is an xinclude end node.
1716
- */
1717
- VALUE
1718
- ruby_xml_node_xinclude_end_q(VALUE self) {
1719
- xmlNodePtr xnode;
1720
- Data_Get_Struct(self, xmlNode, xnode);
1721
- if (xnode->type == XML_XINCLUDE_END)
1722
- return(Qtrue);
1723
- else
1724
- return(Qfalse);
1725
- }
1726
-
1727
-
1728
- /*
1729
- * call-seq:
1730
- * node.xinclude_start? -> num
1731
- *
1732
- * Determine whether this node is an xinclude start node.
1733
- */
1734
- VALUE
1735
- ruby_xml_node_xinclude_start_q(VALUE self) {
1736
- xmlNodePtr xnode;
1737
- Data_Get_Struct(self, xmlNode, xnode);
1738
- if (xnode->type == XML_XINCLUDE_START)
1739
- return(Qtrue);
1740
- else
1741
- return(Qfalse);
1742
- }
1743
1378
 
1744
1379
 
1745
1380
  /*
@@ -1898,34 +1533,19 @@ ruby_init_xml_node(void) {
1898
1533
 
1899
1534
 
1900
1535
  /* Rest of the node api */
1901
- rb_define_method(cXMLNode, "attribute?", ruby_xml_node_attribute_q, 0);
1902
- rb_define_method(cXMLNode, "attribute_decl?", ruby_xml_node_attribute_decl_q, 0);
1903
1536
  rb_define_method(cXMLNode, "attributes", ruby_xml_node_attributes_get, 0);
1904
- rb_define_method(cXMLNode, "attributes?", ruby_xml_node_attributes_q, 0);
1905
1537
  rb_define_method(cXMLNode, "base", ruby_xml_node_base_get, 0);
1906
1538
  rb_define_method(cXMLNode, "base=", ruby_xml_node_base_set, 1);
1907
1539
  rb_define_method(cXMLNode, "blank?", ruby_xml_node_empty_q, 0);
1908
- rb_define_method(cXMLNode, "cdata?", ruby_xml_node_cdata_q, 0);
1909
- rb_define_method(cXMLNode, "comment?", ruby_xml_node_comment_q, 0);
1910
1540
  rb_define_method(cXMLNode, "copy", ruby_xml_node_copy, 1);
1911
1541
  rb_define_method(cXMLNode, "content", ruby_xml_node_content_get, 0);
1912
1542
  rb_define_method(cXMLNode, "content=", ruby_xml_node_content_set, 1);
1913
1543
  rb_define_method(cXMLNode, "content_stripped", ruby_xml_node_content_stripped_get, 0);
1914
1544
  rb_define_method(cXMLNode, "doc", ruby_xml_node_doc, 0);
1915
- rb_define_method(cXMLNode, "docbook_doc?", ruby_xml_node_docbook_doc_q, 0);
1916
- rb_define_method(cXMLNode, "doctype?", ruby_xml_node_doctype_q, 0);
1917
- rb_define_method(cXMLNode, "document?", ruby_xml_node_document_q, 0);
1918
- rb_define_method(cXMLNode, "dtd?", ruby_xml_node_dtd_q, 0);
1919
1545
  rb_define_method(cXMLNode, "dump", ruby_xml_node_dump, 0);
1920
1546
  rb_define_method(cXMLNode, "debug_dump", ruby_xml_node_debug_dump, 0);
1921
- rb_define_method(cXMLNode, "element?", ruby_xml_node_element_q, 0);
1922
- rb_define_method(cXMLNode, "element_decl?", ruby_xml_node_element_decl_q, 0);
1923
1547
  rb_define_method(cXMLNode, "empty?", ruby_xml_node_empty_q, 0);
1924
- rb_define_method(cXMLNode, "entity?", ruby_xml_node_entity_q, 0);
1925
- rb_define_method(cXMLNode, "entity_ref?", ruby_xml_node_entity_ref_q, 0);
1926
1548
  rb_define_method(cXMLNode, "eql?", ruby_xml_node_eql_q, 1);
1927
- rb_define_method(cXMLNode, "fragment?", ruby_xml_node_fragment_q, 0);
1928
- rb_define_method(cXMLNode, "html_doc?", ruby_xml_node_html_doc_q, 0);
1929
1549
  rb_define_method(cXMLNode, "lang", ruby_xml_node_lang_get, 0);
1930
1550
  rb_define_method(cXMLNode, "lang=", ruby_xml_node_lang_set, 1);
1931
1551
  rb_define_method(cXMLNode, "line_num", ruby_xml_node_line_num, 0);
@@ -1933,32 +1553,25 @@ ruby_init_xml_node(void) {
1933
1553
  rb_define_method(cXMLNode, "name=", ruby_xml_node_name_set, 1);
1934
1554
  rb_define_method(cXMLNode, "namespace", ruby_xml_node_namespace_get, 0);
1935
1555
  rb_define_method(cXMLNode, "namespace_node", ruby_xml_node_namespace_get_node, 0);
1936
- rb_define_method(cXMLNode, "namespace?", ruby_xml_node_namespace_q, 0);
1937
1556
  rb_define_method(cXMLNode, "namespace=", ruby_xml_node_namespace_set, -1);
1938
1557
  rb_define_method(cXMLNode, "node_type", ruby_xml_node_type, 0);
1939
- rb_define_method(cXMLNode, "notation?", ruby_xml_node_notation_q, 0);
1940
1558
  rb_define_method(cXMLNode, "ns", ruby_xml_node_namespace_get, 0);
1941
1559
  rb_define_method(cXMLNode, "ns?", ruby_xml_node_ns_q, 0);
1942
- rb_define_method(cXMLNode, "ns_def", ruby_xml_node_ns_def_get, 0);
1943
1560
  rb_define_method(cXMLNode, "ns_def?", ruby_xml_node_ns_def_q, 0);
1561
+ rb_define_method(cXMLNode, "ns_def", ruby_xml_node_ns_def_get, 0);
1944
1562
  rb_define_method(cXMLNode, "path", ruby_xml_node_path, 0);
1945
- rb_define_method(cXMLNode, "pi?", ruby_xml_node_pi_q, 0);
1946
1563
  rb_define_method(cXMLNode, "pointer", ruby_xml_node_pointer, 1);
1947
1564
  rb_define_method(cXMLNode, "remove!", ruby_xml_node_remove_ex, 0);
1948
1565
  rb_define_method(cXMLNode, "search_ns", ruby_xml_node_search_ns, 1);
1949
1566
  rb_define_method(cXMLNode, "search_href", ruby_xml_node_search_href, 1);
1950
1567
  rb_define_method(cXMLNode, "space_preserve", ruby_xml_node_space_preserve_get, 0);
1951
1568
  rb_define_method(cXMLNode, "space_preserve=", ruby_xml_node_space_preserve_set, 1);
1952
- rb_define_method(cXMLNode, "text?", ruby_xml_node_text_q, 0);
1953
1569
  rb_define_method(cXMLNode, "to_s", ruby_xml_node_to_s, 0);
1954
- rb_define_method(cXMLNode, "xinclude_end?", ruby_xml_node_xinclude_end_q, 0);
1955
- rb_define_method(cXMLNode, "xinclude_start?", ruby_xml_node_xinclude_start_q, 0);
1956
1570
  rb_define_method(cXMLNode, "xlink?", ruby_xml_node_xlink_q, 0);
1957
1571
  rb_define_method(cXMLNode, "xlink_type", ruby_xml_node_xlink_type, 0);
1958
1572
  rb_define_method(cXMLNode, "xlink_type_name", ruby_xml_node_xlink_type_name, 0);
1959
1573
 
1960
1574
  rb_define_alias(cXMLNode, "==", "eql?");
1961
- rb_define_alias(cXMLNode, "properties?", "attributes?");
1962
1575
 
1963
1576
  /* :nodoc: */
1964
1577
  {