libxml-ruby 0.8.1 → 0.8.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (161) hide show
  1. data/CHANGES +21 -0
  2. data/RAKEFILE +213 -0
  3. data/README +32 -11
  4. data/doc/rdoc/classes/LibXML.html +4 -0
  5. data/doc/rdoc/classes/LibXML/XML.html +7 -0
  6. data/doc/rdoc/classes/LibXML/XML/Attr.html +187 -177
  7. data/doc/rdoc/classes/LibXML/XML/Attributes.html +62 -61
  8. data/doc/rdoc/classes/LibXML/XML/Document.html +318 -254
  9. data/doc/rdoc/classes/LibXML/XML/Dtd.html +62 -8
  10. data/doc/rdoc/classes/LibXML/XML/Error.html +6 -0
  11. data/doc/rdoc/classes/LibXML/XML/HTMLParser.html +59 -41
  12. data/doc/rdoc/classes/LibXML/XML/InputCallbacks.html +12 -6
  13. data/doc/rdoc/classes/LibXML/XML/NS.html +65 -50
  14. data/doc/rdoc/classes/LibXML/XML/Node.html +671 -630
  15. data/doc/rdoc/classes/LibXML/XML/Node/FailedModify.html +12 -0
  16. data/doc/rdoc/classes/LibXML/XML/Node/Set.html +64 -60
  17. data/doc/rdoc/classes/LibXML/XML/Node/SetNamespace.html +12 -0
  18. data/doc/rdoc/classes/LibXML/XML/Node/UnknownType.html +12 -0
  19. data/doc/rdoc/classes/LibXML/XML/Parser.html +407 -383
  20. data/doc/rdoc/classes/LibXML/XML/Parser/Context.html +241 -219
  21. data/doc/rdoc/classes/LibXML/XML/Parser/ParseError.html +12 -0
  22. data/doc/rdoc/classes/LibXML/XML/Reader.html +421 -331
  23. data/doc/rdoc/classes/LibXML/XML/RelaxNG.html +237 -0
  24. data/doc/rdoc/classes/LibXML/XML/SaxParser.html +79 -60
  25. data/doc/rdoc/classes/LibXML/XML/Schema.html +109 -22
  26. data/doc/rdoc/classes/LibXML/XML/State.html +6 -0
  27. data/doc/rdoc/classes/LibXML/XML/XInclude.html +6 -0
  28. data/doc/rdoc/classes/LibXML/XML/XInclude/Error.html +6 -0
  29. data/doc/rdoc/classes/LibXML/XML/XPath.html +4 -48
  30. data/doc/rdoc/classes/LibXML/XML/XPath/Context.html +6 -5
  31. data/doc/rdoc/classes/LibXML/XML/XPath/InvalidPath.html +61 -0
  32. data/doc/rdoc/classes/LibXML/XML/XPath/Object.html +12 -8
  33. data/doc/rdoc/classes/LibXML/XML/XPointer.html +14 -8
  34. data/doc/rdoc/classes/LibXML/XML/XPointer/Context.html +6 -0
  35. data/doc/rdoc/classes/LibXML/XML/XPointer/Context/InvalidPath.html +6 -0
  36. data/doc/rdoc/classes/LibXML/XML/XPointer/InvalidExpression.html +13 -0
  37. data/doc/rdoc/created.rid +1 -1
  38. data/doc/rdoc/files/CHANGES.html +38 -10
  39. data/doc/rdoc/files/LICENSE.html +1 -1
  40. data/doc/rdoc/files/README.html +57 -23
  41. data/doc/rdoc/files/VERSION.html +1 -1
  42. data/doc/rdoc/files/ext/libxml/cbg_c.html +1 -1
  43. data/doc/rdoc/files/ext/libxml/libxml_c.html +1 -1
  44. data/doc/rdoc/files/ext/libxml/ruby_xml_attr_c.html +1 -1
  45. data/doc/rdoc/files/ext/libxml/ruby_xml_attributes_c.html +1 -1
  46. data/doc/rdoc/files/ext/libxml/ruby_xml_document_c.html +1 -1
  47. data/doc/rdoc/files/ext/libxml/ruby_xml_dtd_c.html +1 -1
  48. data/doc/rdoc/files/ext/libxml/ruby_xml_html_parser_c.html +1 -1
  49. data/doc/rdoc/files/ext/libxml/ruby_xml_input_cbg_c.html +1 -1
  50. data/doc/rdoc/files/ext/libxml/ruby_xml_node_c.html +1 -1
  51. data/doc/rdoc/files/ext/libxml/ruby_xml_node_set_c.html +1 -1
  52. data/doc/rdoc/files/ext/libxml/ruby_xml_ns_c.html +1 -1
  53. data/doc/rdoc/files/ext/libxml/ruby_xml_parser_c.html +1 -1
  54. data/doc/rdoc/files/ext/libxml/ruby_xml_parser_context_c.html +1 -1
  55. data/doc/rdoc/files/ext/libxml/ruby_xml_reader_c.html +1 -1
  56. data/doc/rdoc/{classes/XML.html → files/ext/libxml/ruby_xml_relaxng_c.html} +16 -35
  57. data/doc/rdoc/files/ext/libxml/ruby_xml_sax_parser_c.html +1 -1
  58. data/doc/rdoc/files/ext/libxml/ruby_xml_schema_c.html +1 -1
  59. data/doc/rdoc/files/ext/libxml/ruby_xml_state_c.html +1 -1
  60. data/doc/rdoc/files/ext/libxml/ruby_xml_xinclude_c.html +1 -1
  61. data/doc/rdoc/files/ext/libxml/ruby_xml_xpath_c.html +1 -1
  62. data/doc/rdoc/files/ext/libxml/ruby_xml_xpath_context_c.html +1 -1
  63. data/doc/rdoc/files/ext/libxml/ruby_xml_xpath_object_c.html +1 -1
  64. data/doc/rdoc/files/ext/libxml/ruby_xml_xpointer_c.html +1 -1
  65. data/doc/rdoc/files/ext/libxml/ruby_xml_xpointer_context_c.html +1 -1
  66. data/doc/rdoc/files/lib/libxml/attr_rb.html +1 -1
  67. data/doc/rdoc/files/lib/libxml/attributes_rb.html +1 -1
  68. data/doc/rdoc/files/lib/libxml/document_rb.html +1 -1
  69. data/doc/rdoc/files/lib/libxml/node_rb.html +1 -1
  70. data/doc/rdoc/files/lib/libxml/node_set_rb.html +1 -1
  71. data/doc/rdoc/files/lib/libxml/parser_options_rb.html +1 -1
  72. data/doc/rdoc/files/lib/libxml/parser_rb.html +1 -1
  73. data/doc/rdoc/files/lib/libxml/properties_rb.html +1 -1
  74. data/doc/rdoc/files/lib/libxml/tree_rb.html +1 -1
  75. data/doc/rdoc/files/lib/libxml_rb.html +2 -2
  76. data/doc/rdoc/files/lib/xml/libxml_rb.html +12 -2
  77. data/doc/rdoc/files/lib/xml_rb.html +134 -0
  78. data/doc/rdoc/fr_class_index.html +1 -1
  79. data/doc/rdoc/fr_file_index.html +2 -0
  80. data/doc/rdoc/fr_method_index.html +349 -344
  81. data/ext/libxml/libxml.c +2 -1
  82. data/ext/libxml/ruby_libxml.h +1 -0
  83. data/ext/libxml/ruby_xml_attr.c +8 -2
  84. data/ext/libxml/ruby_xml_attributes.c +5 -5
  85. data/ext/libxml/ruby_xml_document.c +41 -2
  86. data/ext/libxml/ruby_xml_dtd.c +169 -169
  87. data/ext/libxml/ruby_xml_html_parser.c +449 -449
  88. data/ext/libxml/ruby_xml_input_cbg.c +165 -165
  89. data/ext/libxml/ruby_xml_node.c +1 -1
  90. data/ext/libxml/ruby_xml_node_set.c +172 -172
  91. data/ext/libxml/ruby_xml_ns.c +145 -145
  92. data/ext/libxml/ruby_xml_parser.c +1398 -1398
  93. data/ext/libxml/ruby_xml_parser_context.c +697 -697
  94. data/ext/libxml/ruby_xml_reader.c +44 -0
  95. data/ext/libxml/ruby_xml_reader.h +14 -14
  96. data/ext/libxml/ruby_xml_relaxng.c +97 -0
  97. data/ext/libxml/ruby_xml_relaxng.h +15 -0
  98. data/ext/libxml/ruby_xml_sax_parser.c +486 -486
  99. data/ext/libxml/ruby_xml_schema.c +1 -1
  100. data/ext/libxml/ruby_xml_state.c +4 -4
  101. data/ext/libxml/ruby_xml_xinclude.c +21 -21
  102. data/ext/libxml/ruby_xml_xpath.c +89 -89
  103. data/ext/libxml/ruby_xml_xpath_context.c +283 -283
  104. data/ext/libxml/ruby_xml_xpath_object.c +5 -5
  105. data/ext/libxml/ruby_xml_xpointer.c +104 -104
  106. data/ext/libxml/ruby_xml_xpointer_context.c +22 -22
  107. data/ext/libxml/version.h +2 -2
  108. data/ext/libxml/version.h.rej +17 -0
  109. data/ext/mingw/Rakefile +41 -0
  110. data/lib/libxml.rb +15 -4
  111. data/lib/xml.rb +14 -0
  112. data/lib/xml/libxml.rb +4 -1
  113. data/test/etc_doc_to_s.rb +1 -1
  114. data/test/ets_copy_bug.rb +1 -1
  115. data/test/ets_copy_bug3.rb +1 -1
  116. data/test/ets_doc_file.rb +1 -1
  117. data/test/ets_doc_to_s.rb +1 -1
  118. data/test/ets_node_gc.rb +1 -1
  119. data/test/ets_tsr.rb +1 -1
  120. data/test/model/shiporder.rnc +28 -0
  121. data/test/model/shiporder.rng +86 -0
  122. data/test/{tc_xml_attributes.rb → tc_attributes.rb} +1 -10
  123. data/test/{tc_xml_document.rb → tc_document.rb} +1 -1
  124. data/test/{tc_xml_document_write.rb → tc_document_write.rb} +1 -1
  125. data/test/{tc_xml_dtd.rb → tc_dtd.rb} +1 -1
  126. data/test/{tc_xml_html_parser.rb → tc_html_parser.rb} +1 -1
  127. data/test/{tc_xml_node.rb → tc_node.rb} +1 -1
  128. data/test/{tc_xml_node_attr.rb → tc_node_attr.rb} +1 -1
  129. data/test/{tc_xml_node_cdata.rb → tc_node_cdata.rb} +24 -5
  130. data/test/{tc_xml_node_comment.rb → tc_node_comment.rb} +1 -1
  131. data/test/{tc_xml_node_copy.rb → tc_node_copy.rb} +1 -1
  132. data/test/{tc_xml_node_edit.rb → tc_node_edit.rb} +1 -1
  133. data/test/{tc_xml_node_set.rb → tc_node_set.rb} +1 -1
  134. data/test/{tc_xml_node_set2.rb → tc_node_set2.rb} +1 -1
  135. data/test/{tc_xml_node_text.rb → tc_node_text.rb} +1 -1
  136. data/test/{tc_xml_node_xlink.rb → tc_node_xlink.rb} +2 -2
  137. data/test/{tc_xml_parser.rb → tc_parser.rb} +1 -1
  138. data/test/{tc_xml_parser_context.rb → tc_parser_context.rb} +1 -1
  139. data/test/{tc_xml_properties.rb → tc_properties.rb} +1 -7
  140. data/test/{tc_xml_reader.rb → tc_reader.rb} +1 -1
  141. data/test/tc_relaxng.rb +39 -0
  142. data/test/{tc_xml_sax_parser.rb → tc_sax_parser.rb} +1 -1
  143. data/test/{tc_xml_schema.rb → tc_schema.rb} +1 -1
  144. data/test/{tc_xml_traversal.rb → tc_traversal.rb} +1 -1
  145. data/test/{tc_xml_xinclude.rb → tc_xinclude.rb} +1 -1
  146. data/test/{tc_xml_xpath.rb → tc_xpath.rb} +1 -1
  147. data/test/{tc_xml_xpath_context.rb → tc_xpath_context.rb} +1 -1
  148. data/test/{tc_xml_xpointer.rb → tc_xpointer.rb} +1 -1
  149. data/test/test_suite.rb +26 -25
  150. metadata +100 -100
  151. data/benchmark/depixelate.rb +0 -632
  152. data/benchmark/hamlet.xml +0 -9055
  153. data/benchmark/sock_entries.xml +0 -507
  154. data/benchmark/throughput.rb +0 -39
  155. data/benchmark/xml_benchmarks.rb +0 -227
  156. data/mingw/libiconv-2.dll +0 -0
  157. data/mingw/libxml2-2.dll +0 -0
  158. data/mingw/libxml_ruby.so +0 -0
  159. data/test/gc.log +0 -0
  160. data/vc/libxml_ruby.sln +0 -20
  161. data/vc/libxml_ruby.vcproj +0 -389
@@ -78,6 +78,60 @@
78
78
 
79
79
  <div id="contextContent">
80
80
 
81
+ <div id="description">
82
+ <p>
83
+ SV * parse_string(CLASS, str, &#8230;)
84
+ </p>
85
+ <pre>
86
+ char * CLASS
87
+ char * str
88
+ PREINIT:
89
+ STRLEN n_a;
90
+ xmlDtdPtr res;
91
+ SV * encoding_sv;
92
+ xmlParserInputBufferPtr buffer;
93
+ xmlCharEncoding enc = XML_CHAR_ENCODING_NONE;
94
+ xmlChar * new_string;
95
+ STRLEN len;
96
+ CODE:
97
+ LibXML_init_error();
98
+ if (items &gt; 2) {
99
+ encoding_sv = ST(2);
100
+ if (items &gt; 3) {
101
+ croak(&quot;parse_string: too many parameters&quot;);
102
+ }
103
+ // warn(&quot;getting encoding...\n&quot;);
104
+ enc = xmlParseCharEncoding(SvPV(encoding_sv, n_a));
105
+ if (enc == XML_CHAR_ENCODING_ERROR) {
106
+ croak(&quot;Parse of encoding %s failed: %s&quot;, SvPV(encoding_sv, n_a), SvPV(LibXML_error, n_a));
107
+ }
108
+ }
109
+ buffer = xmlAllocParserInputBuffer(enc);
110
+ // buffer = xmlParserInputBufferCreateMem(str, xmlStrlen(str), enc);
111
+ if ( !buffer)
112
+ croak(&quot;cant create buffer!\n&quot; );
113
+
114
+ new_string = xmlStrdup((const xmlChar*)str);
115
+ xmlParserInputBufferPush(buffer, xmlStrlen(new_string), (const char*)new_string);
116
+
117
+ res = xmlIOParseDTD(NULL, buffer, enc);
118
+
119
+ // NOTE: For some reason freeing this InputBuffer causes a segfault!
120
+ // xmlFreeParserInputBuffer(buffer);
121
+ xmlFree(new_string);
122
+
123
+ sv_2mortal( LibXML_error );
124
+ LibXML_croak_error();
125
+
126
+ if (res == NULL) {
127
+ croak(&quot;no DTD parsed!&quot;);
128
+ }
129
+ RETVAL = PmmNodeToSv((xmlNodePtr)res, NULL);
130
+ OUTPUT:
131
+ RETVAL
132
+ </pre>
133
+
134
+ </div>
81
135
 
82
136
 
83
137
  </div>
@@ -86,7 +140,7 @@
86
140
  <h3 class="section-bar">Methods</h3>
87
141
 
88
142
  <div class="name-list">
89
- <a href="#M000319">new</a>&nbsp;&nbsp;
143
+ <a href="#M000323">new</a>&nbsp;&nbsp;
90
144
  </div>
91
145
  </div>
92
146
 
@@ -108,11 +162,11 @@
108
162
  <div id="methods">
109
163
  <h3 class="section-bar">Public Class methods</h3>
110
164
 
111
- <div id="method-M000319" class="method-detail">
112
- <a name="M000319"></a>
165
+ <div id="method-M000323" class="method-detail">
166
+ <a name="M000323"></a>
113
167
 
114
168
  <div class="method-heading">
115
- <a href="#M000319" class="method-signature">
169
+ <a href="#M000323" class="method-signature">
116
170
  <span class="method-name">XML::Dtd.new("public system") &rarr; dtd<br />
117
171
  XML::Dtd.new("public", "system") &rarr; dtd<br />
118
172
  </span>
@@ -121,12 +175,12 @@ XML::Dtd.new("public", "system") &rarr; dtd<br />
121
175
 
122
176
  <div class="method-description">
123
177
  <p>
124
- Create a new <a href="Dtd.html">Dtd</a> from the specified public and
125
- system identifiers.
178
+ Create a <a href="Dtd.html#M000323">new</a> <a href="Dtd.html">Dtd</a> from
179
+ the specified public and system identifiers.
126
180
  </p>
127
181
  <p><a class="source-toggle" href="#"
128
- onclick="toggleCode('M000319-source');return false;">[Source]</a></p>
129
- <div class="method-source-code" id="M000319-source">
182
+ onclick="toggleCode('M000323-source');return false;">[Source]</a></p>
183
+ <div class="method-source-code" id="M000323-source">
130
184
  <pre>
131
185
  /*
132
186
  * call-seq:
@@ -78,6 +78,12 @@
78
78
 
79
79
  <div id="contextContent">
80
80
 
81
+ <div id="description">
82
+ <p>
83
+ Some libxml memory goo that should be done before anything else
84
+ </p>
85
+
86
+ </div>
81
87
 
82
88
 
83
89
  </div>
@@ -78,6 +78,19 @@
78
78
 
79
79
  <div id="contextContent">
80
80
 
81
+ <div id="description">
82
+ <p>
83
+ call-seq:
84
+ </p>
85
+ <pre>
86
+ parser.string = &quot;string&quot;
87
+ </pre>
88
+ <p>
89
+ Set the <a href="HTMLParser.html#M000362">string</a> this parser works
90
+ with.
91
+ </p>
92
+
93
+ </div>
81
94
 
82
95
 
83
96
  </div>
@@ -86,12 +99,12 @@
86
99
  <h3 class="section-bar">Methods</h3>
87
100
 
88
101
  <div class="name-list">
89
- <a href="#M000359">context</a>&nbsp;&nbsp;
90
- <a href="#M000356">new</a>&nbsp;&nbsp;
91
- <a href="#M000358">parse</a>&nbsp;&nbsp;
92
- <a href="#M000357">string</a>&nbsp;&nbsp;
93
- <a href="#M000360">string</a>&nbsp;&nbsp;
94
- <a href="#M000361">string=</a>&nbsp;&nbsp;
102
+ <a href="#M000364">context</a>&nbsp;&nbsp;
103
+ <a href="#M000361">new</a>&nbsp;&nbsp;
104
+ <a href="#M000363">parse</a>&nbsp;&nbsp;
105
+ <a href="#M000362">string</a>&nbsp;&nbsp;
106
+ <a href="#M000365">string</a>&nbsp;&nbsp;
107
+ <a href="#M000366">string=</a>&nbsp;&nbsp;
95
108
  </div>
96
109
  </div>
97
110
 
@@ -113,11 +126,11 @@
113
126
  <div id="methods">
114
127
  <h3 class="section-bar">Public Class methods</h3>
115
128
 
116
- <div id="method-M000356" class="method-detail">
117
- <a name="M000356"></a>
129
+ <div id="method-M000361" class="method-detail">
130
+ <a name="M000361"></a>
118
131
 
119
132
  <div class="method-heading">
120
- <a href="#M000356" class="method-signature">
133
+ <a href="#M000361" class="method-signature">
121
134
  <span class="method-name">XML::HTMLParser.new &rarr; parser<br />
122
135
  </span>
123
136
  </a>
@@ -125,11 +138,12 @@
125
138
 
126
139
  <div class="method-description">
127
140
  <p>
128
- Create a new parser instance with no pre-determined source.
141
+ Create a <a href="HTMLParser.html#M000361">new</a> parser instance with no
142
+ pre-determined source.
129
143
  </p>
130
144
  <p><a class="source-toggle" href="#"
131
- onclick="toggleCode('M000356-source');return false;">[Source]</a></p>
132
- <div class="method-source-code" id="M000356-source">
145
+ onclick="toggleCode('M000361-source');return false;">[Source]</a></p>
146
+ <div class="method-source-code" id="M000361-source">
133
147
  <pre>
134
148
  /*
135
149
  * call-seq:
@@ -145,11 +159,11 @@ ruby_xml_html_parser_new(VALUE class) {
145
159
  </div>
146
160
  </div>
147
161
 
148
- <div id="method-M000357" class="method-detail">
149
- <a name="M000357"></a>
162
+ <div id="method-M000362" class="method-detail">
163
+ <a name="M000362"></a>
150
164
 
151
165
  <div class="method-heading">
152
- <a href="#M000357" class="method-signature">
166
+ <a href="#M000362" class="method-signature">
153
167
  <span class="method-name">XML::HTMLParser.string &rarr; parser<br />
154
168
  </span>
155
169
  </a>
@@ -157,11 +171,13 @@ ruby_xml_html_parser_new(VALUE class) {
157
171
 
158
172
  <div class="method-description">
159
173
  <p>
160
- Create a new parser instance that will parse the given string.
174
+ Create a <a href="HTMLParser.html#M000361">new</a> parser instance that
175
+ will <a href="HTMLParser.html#M000363">parse</a> the given <a
176
+ href="HTMLParser.html#M000362">string</a>.
161
177
  </p>
162
178
  <p><a class="source-toggle" href="#"
163
- onclick="toggleCode('M000357-source');return false;">[Source]</a></p>
164
- <div class="method-source-code" id="M000357-source">
179
+ onclick="toggleCode('M000362-source');return false;">[Source]</a></p>
180
+ <div class="method-source-code" id="M000362-source">
165
181
  <pre>
166
182
  /*
167
183
  * call-seq:
@@ -180,11 +196,11 @@ ruby_xml_html_parser_new_string(VALUE class, VALUE str) {
180
196
 
181
197
  <h3 class="section-bar">Public Instance methods</h3>
182
198
 
183
- <div id="method-M000359" class="method-detail">
184
- <a name="M000359"></a>
199
+ <div id="method-M000364" class="method-detail">
200
+ <a name="M000364"></a>
185
201
 
186
202
  <div class="method-heading">
187
- <a href="#M000359" class="method-signature">
203
+ <a href="#M000364" class="method-signature">
188
204
  <span class="method-name">parser.context &rarr; context<br />
189
205
  </span>
190
206
  </a>
@@ -196,8 +212,8 @@ Obtain the <a href="Parser/Context.html">XML::Parser::Context</a>
196
212
  associated with this parser.
197
213
  </p>
198
214
  <p><a class="source-toggle" href="#"
199
- onclick="toggleCode('M000359-source');return false;">[Source]</a></p>
200
- <div class="method-source-code" id="M000359-source">
215
+ onclick="toggleCode('M000364-source');return false;">[Source]</a></p>
216
+ <div class="method-source-code" id="M000364-source">
201
217
  <pre>
202
218
  /*
203
219
  * call-seq:
@@ -214,11 +230,11 @@ ruby_xml_html_parser_context_get(VALUE self) {
214
230
  </div>
215
231
  </div>
216
232
 
217
- <div id="method-M000358" class="method-detail">
218
- <a name="M000358"></a>
233
+ <div id="method-M000363" class="method-detail">
234
+ <a name="M000363"></a>
219
235
 
220
236
  <div class="method-heading">
221
- <a href="#M000358" class="method-signature">
237
+ <a href="#M000363" class="method-signature">
222
238
  <span class="method-name">parser.parse &rarr; document<br />
223
239
  </span>
224
240
  </a>
@@ -227,13 +243,13 @@ ruby_xml_html_parser_context_get(VALUE self) {
227
243
  <div class="method-description">
228
244
  <p>
229
245
  Parse the input <a href="../XML.html">XML</a> and create an <a
230
- href="Document.html">XML::Document</a> with it&#8217;s content. If an error
246
+ href="Document.html">XML::Document</a> with it&#8216;s content. If an error
231
247
  occurs, <a href="Parser/ParseError.html">XML::Parser::ParseError</a> is
232
248
  thrown.
233
249
  </p>
234
250
  <p><a class="source-toggle" href="#"
235
- onclick="toggleCode('M000358-source');return false;">[Source]</a></p>
236
- <div class="method-source-code" id="M000358-source">
251
+ onclick="toggleCode('M000363-source');return false;">[Source]</a></p>
252
+ <div class="method-source-code" id="M000363-source">
237
253
  <pre>
238
254
  /*
239
255
  * call-seq:
@@ -251,11 +267,11 @@ ruby_xml_html_parser_parse(VALUE self) {
251
267
  </div>
252
268
  </div>
253
269
 
254
- <div id="method-M000360" class="method-detail">
255
- <a name="M000360"></a>
270
+ <div id="method-M000365" class="method-detail">
271
+ <a name="M000365"></a>
256
272
 
257
273
  <div class="method-heading">
258
- <a href="#M000360" class="method-signature">
274
+ <a href="#M000365" class="method-signature">
259
275
  <span class="method-name">parser.string &rarr; "string"<br />
260
276
  </span>
261
277
  </a>
@@ -263,11 +279,12 @@ ruby_xml_html_parser_parse(VALUE self) {
263
279
 
264
280
  <div class="method-description">
265
281
  <p>
266
- Obtain the string this parser works with.
282
+ Obtain the <a href="HTMLParser.html#M000362">string</a> this parser works
283
+ with.
267
284
  </p>
268
285
  <p><a class="source-toggle" href="#"
269
- onclick="toggleCode('M000360-source');return false;">[Source]</a></p>
270
- <div class="method-source-code" id="M000360-source">
286
+ onclick="toggleCode('M000365-source');return false;">[Source]</a></p>
287
+ <div class="method-source-code" id="M000365-source">
271
288
  <pre>
272
289
  /*
273
290
  * call-seq:
@@ -283,11 +300,11 @@ ruby_xml_html_parser_str_get(VALUE self) {
283
300
  </div>
284
301
  </div>
285
302
 
286
- <div id="method-M000361" class="method-detail">
287
- <a name="M000361"></a>
303
+ <div id="method-M000366" class="method-detail">
304
+ <a name="M000366"></a>
288
305
 
289
306
  <div class="method-heading">
290
- <a href="#M000361" class="method-signature">
307
+ <a href="#M000366" class="method-signature">
291
308
  <span class="method-name">parser.string = "string"<br />
292
309
  </span>
293
310
  </a>
@@ -295,11 +312,12 @@ ruby_xml_html_parser_str_get(VALUE self) {
295
312
 
296
313
  <div class="method-description">
297
314
  <p>
298
- Set the string this parser works with.
315
+ Set the <a href="HTMLParser.html#M000362">string</a> this parser works
316
+ with.
299
317
  </p>
300
318
  <p><a class="source-toggle" href="#"
301
- onclick="toggleCode('M000361-source');return false;">[Source]</a></p>
302
- <div class="method-source-code" id="M000361-source">
319
+ onclick="toggleCode('M000366-source');return false;">[Source]</a></p>
320
+ <div class="method-source-code" id="M000366-source">
303
321
  <pre>
304
322
  /*
305
323
  * call-seq:
@@ -78,6 +78,12 @@
78
78
 
79
79
  <div id="contextContent">
80
80
 
81
+ <div id="description">
82
+ <p>
83
+ check the first one
84
+ </p>
85
+
86
+ </div>
81
87
 
82
88
 
83
89
  </div>
@@ -86,7 +92,7 @@
86
92
  <h3 class="section-bar">Methods</h3>
87
93
 
88
94
  <div class="name-list">
89
- <a href="#M000216">register</a>&nbsp;&nbsp;
95
+ <a href="#M000219">register</a>&nbsp;&nbsp;
90
96
  </div>
91
97
  </div>
92
98
 
@@ -108,11 +114,11 @@
108
114
  <div id="methods">
109
115
  <h3 class="section-bar">Public Class methods</h3>
110
116
 
111
- <div id="method-M000216" class="method-detail">
112
- <a name="M000216"></a>
117
+ <div id="method-M000219" class="method-detail">
118
+ <a name="M000219"></a>
113
119
 
114
120
  <div class="method-heading">
115
- <a href="#M000216" class="method-signature">
121
+ <a href="#M000219" class="method-signature">
116
122
  <span class="method-name">register<br />
117
123
  </span>
118
124
  </a>
@@ -123,8 +129,8 @@
123
129
  Register a new set of I/O callback for handling parser input.
124
130
  </p>
125
131
  <p><a class="source-toggle" href="#"
126
- onclick="toggleCode('M000216-source');return false;">[Source]</a></p>
127
- <div class="method-source-code" id="M000216-source">
132
+ onclick="toggleCode('M000219-source');return false;">[Source]</a></p>
133
+ <div class="method-source-code" id="M000219-source">
128
134
  <pre>
129
135
  /*
130
136
  * call-seq:
@@ -78,6 +78,19 @@
78
78
 
79
79
  <div id="contextContent">
80
80
 
81
+ <div id="description">
82
+ <p>
83
+ call-seq:
84
+ </p>
85
+ <pre>
86
+ ns.prefix? -&gt; (true|false)
87
+ </pre>
88
+ <p>
89
+ Determine whether this namespace has a <a
90
+ href="NS.html#M000227">prefix</a>.
91
+ </p>
92
+
93
+ </div>
81
94
 
82
95
 
83
96
  </div>
@@ -86,13 +99,13 @@
86
99
  <h3 class="section-bar">Methods</h3>
87
100
 
88
101
  <div class="name-list">
89
- <a href="#M000221">href</a>&nbsp;&nbsp;
90
- <a href="#M000222">href?</a>&nbsp;&nbsp;
91
- <a href="#M000220">new</a>&nbsp;&nbsp;
92
- <a href="#M000223">next</a>&nbsp;&nbsp;
93
- <a href="#M000224">prefix</a>&nbsp;&nbsp;
94
- <a href="#M000225">prefix?</a>&nbsp;&nbsp;
95
- <a href="#M000226">to_s</a>&nbsp;&nbsp;
102
+ <a href="#M000224">href</a>&nbsp;&nbsp;
103
+ <a href="#M000225">href?</a>&nbsp;&nbsp;
104
+ <a href="#M000223">new</a>&nbsp;&nbsp;
105
+ <a href="#M000226">next</a>&nbsp;&nbsp;
106
+ <a href="#M000227">prefix</a>&nbsp;&nbsp;
107
+ <a href="#M000228">prefix?</a>&nbsp;&nbsp;
108
+ <a href="#M000229">to_s</a>&nbsp;&nbsp;
96
109
  </div>
97
110
  </div>
98
111
 
@@ -114,11 +127,11 @@
114
127
  <div id="methods">
115
128
  <h3 class="section-bar">Public Class methods</h3>
116
129
 
117
- <div id="method-M000220" class="method-detail">
118
- <a name="M000220"></a>
130
+ <div id="method-M000223" class="method-detail">
131
+ <a name="M000223"></a>
119
132
 
120
133
  <div class="method-heading">
121
- <a href="#M000220" class="method-signature">
134
+ <a href="#M000223" class="method-signature">
122
135
  <span class="method-name">initialize(node, "href", "prefix")<br />
123
136
  </span>
124
137
  </a>
@@ -126,15 +139,16 @@
126
139
 
127
140
  <div class="method-description">
128
141
  <p>
129
- Create a new namespace attached to the specified node with the give prefix
130
- and namespace.
142
+ Create a <a href="NS.html#M000223">new</a> namespace attached to the
143
+ specified node with the give <a href="NS.html#M000227">prefix</a> and
144
+ namespace.
131
145
  </p>
132
146
  <pre>
133
147
  XML::NS.new(node, &quot;xlink&quot;, &quot;http://www.w3.org/1999/xlink&quot;)
134
148
  </pre>
135
149
  <p><a class="source-toggle" href="#"
136
- onclick="toggleCode('M000220-source');return false;">[Source]</a></p>
137
- <div class="method-source-code" id="M000220-source">
150
+ onclick="toggleCode('M000223-source');return false;">[Source]</a></p>
151
+ <div class="method-source-code" id="M000223-source">
138
152
  <pre>
139
153
  /*
140
154
  * call-seq:
@@ -155,11 +169,11 @@ ruby_xml_ns_initialize(VALUE self, VALUE node, VALUE href, VALUE prefix) {
155
169
 
156
170
  <h3 class="section-bar">Public Instance methods</h3>
157
171
 
158
- <div id="method-M000221" class="method-detail">
159
- <a name="M000221"></a>
172
+ <div id="method-M000224" class="method-detail">
173
+ <a name="M000224"></a>
160
174
 
161
175
  <div class="method-heading">
162
- <a href="#M000221" class="method-signature">
176
+ <a href="#M000224" class="method-signature">
163
177
  <span class="method-name">ns.href &rarr; "href"<br />
164
178
  </span>
165
179
  </a>
@@ -167,11 +181,11 @@ ruby_xml_ns_initialize(VALUE self, VALUE node, VALUE href, VALUE prefix) {
167
181
 
168
182
  <div class="method-description">
169
183
  <p>
170
- Obtain the namespace&#8217;s href.
184
+ Obtain the namespace&#8216;s <a href="NS.html#M000224">href</a>.
171
185
  </p>
172
186
  <p><a class="source-toggle" href="#"
173
- onclick="toggleCode('M000221-source');return false;">[Source]</a></p>
174
- <div class="method-source-code" id="M000221-source">
187
+ onclick="toggleCode('M000224-source');return false;">[Source]</a></p>
188
+ <div class="method-source-code" id="M000224-source">
175
189
  <pre>
176
190
  /*
177
191
  * call-seq:
@@ -187,11 +201,11 @@ ruby_xml_ns_href_get(VALUE self) {
187
201
  </div>
188
202
  </div>
189
203
 
190
- <div id="method-M000222" class="method-detail">
191
- <a name="M000222"></a>
204
+ <div id="method-M000225" class="method-detail">
205
+ <a name="M000225"></a>
192
206
 
193
207
  <div class="method-heading">
194
- <a href="#M000222" class="method-signature">
208
+ <a href="#M000225" class="method-signature">
195
209
  <span class="method-name">ns.href? &rarr; (true|false)<br />
196
210
  </span>
197
211
  </a>
@@ -199,11 +213,11 @@ ruby_xml_ns_href_get(VALUE self) {
199
213
 
200
214
  <div class="method-description">
201
215
  <p>
202
- Determine whether this namespace has an href.
216
+ Determine whether this namespace has an <a href="NS.html#M000224">href</a>.
203
217
  </p>
204
218
  <p><a class="source-toggle" href="#"
205
- onclick="toggleCode('M000222-source');return false;">[Source]</a></p>
206
- <div class="method-source-code" id="M000222-source">
219
+ onclick="toggleCode('M000225-source');return false;">[Source]</a></p>
220
+ <div class="method-source-code" id="M000225-source">
207
221
  <pre>
208
222
  /*
209
223
  * call-seq:
@@ -219,11 +233,11 @@ ruby_xml_ns_href_q(VALUE self) {
219
233
  </div>
220
234
  </div>
221
235
 
222
- <div id="method-M000223" class="method-detail">
223
- <a name="M000223"></a>
236
+ <div id="method-M000226" class="method-detail">
237
+ <a name="M000226"></a>
224
238
 
225
239
  <div class="method-heading">
226
- <a href="#M000223" class="method-signature">
240
+ <a href="#M000226" class="method-signature">
227
241
  <span class="method-name">ns.next &rarr; ns<br />
228
242
  </span>
229
243
  </a>
@@ -231,11 +245,11 @@ ruby_xml_ns_href_q(VALUE self) {
231
245
 
232
246
  <div class="method-description">
233
247
  <p>
234
- Obtain the next namespace.
248
+ Obtain the <a href="NS.html#M000226">next</a> namespace.
235
249
  </p>
236
250
  <p><a class="source-toggle" href="#"
237
- onclick="toggleCode('M000223-source');return false;">[Source]</a></p>
238
- <div class="method-source-code" id="M000223-source">
251
+ onclick="toggleCode('M000226-source');return false;">[Source]</a></p>
252
+ <div class="method-source-code" id="M000226-source">
239
253
  <pre>
240
254
  /*
241
255
  * call-seq:
@@ -251,11 +265,11 @@ ruby_xml_ns_next(VALUE self) {
251
265
  </div>
252
266
  </div>
253
267
 
254
- <div id="method-M000224" class="method-detail">
255
- <a name="M000224"></a>
268
+ <div id="method-M000227" class="method-detail">
269
+ <a name="M000227"></a>
256
270
 
257
271
  <div class="method-heading">
258
- <a href="#M000224" class="method-signature">
272
+ <a href="#M000227" class="method-signature">
259
273
  <span class="method-name">ns.prefix &rarr; "prefix"<br />
260
274
  ns.to_s &rarr; "prefix"<br />
261
275
  </span>
@@ -264,11 +278,11 @@ ns.to_s &rarr; "prefix"<br />
264
278
 
265
279
  <div class="method-description">
266
280
  <p>
267
- Obtain the namespace&#8217;s prefix.
281
+ Obtain the namespace&#8216;s <a href="NS.html#M000227">prefix</a>.
268
282
  </p>
269
283
  <p><a class="source-toggle" href="#"
270
- onclick="toggleCode('M000224-source');return false;">[Source]</a></p>
271
- <div class="method-source-code" id="M000224-source">
284
+ onclick="toggleCode('M000227-source');return false;">[Source]</a></p>
285
+ <div class="method-source-code" id="M000227-source">
272
286
  <pre>
273
287
  /*
274
288
  * call-seq:
@@ -285,11 +299,11 @@ ruby_xml_ns_prefix_get(VALUE self) {
285
299
  </div>
286
300
  </div>
287
301
 
288
- <div id="method-M000225" class="method-detail">
289
- <a name="M000225"></a>
302
+ <div id="method-M000228" class="method-detail">
303
+ <a name="M000228"></a>
290
304
 
291
305
  <div class="method-heading">
292
- <a href="#M000225" class="method-signature">
306
+ <a href="#M000228" class="method-signature">
293
307
  <span class="method-name">ns.prefix? &rarr; (true|false)<br />
294
308
  </span>
295
309
  </a>
@@ -297,11 +311,12 @@ ruby_xml_ns_prefix_get(VALUE self) {
297
311
 
298
312
  <div class="method-description">
299
313
  <p>
300
- Determine whether this namespace has a prefix.
314
+ Determine whether this namespace has a <a
315
+ href="NS.html#M000227">prefix</a>.
301
316
  </p>
302
317
  <p><a class="source-toggle" href="#"
303
- onclick="toggleCode('M000225-source');return false;">[Source]</a></p>
304
- <div class="method-source-code" id="M000225-source">
318
+ onclick="toggleCode('M000228-source');return false;">[Source]</a></p>
319
+ <div class="method-source-code" id="M000228-source">
305
320
  <pre>
306
321
  /*
307
322
  * call-seq:
@@ -317,11 +332,11 @@ ruby_xml_ns_prefix_q(VALUE self) {
317
332
  </div>
318
333
  </div>
319
334
 
320
- <div id="method-M000226" class="method-detail">
321
- <a name="M000226"></a>
335
+ <div id="method-M000229" class="method-detail">
336
+ <a name="M000229"></a>
322
337
 
323
338
  <div class="method-heading">
324
- <a href="#M000226" class="method-signature">
339
+ <a href="#M000229" class="method-signature">
325
340
  <span class="method-name">ns.prefix &rarr; "prefix"<br />
326
341
  ns.to_s &rarr; "prefix"<br />
327
342
  </span>
@@ -330,11 +345,11 @@ ns.to_s &rarr; "prefix"<br />
330
345
 
331
346
  <div class="method-description">
332
347
  <p>
333
- Obtain the namespace&#8217;s prefix.
348
+ Obtain the namespace&#8216;s <a href="NS.html#M000227">prefix</a>.
334
349
  </p>
335
350
  <p><a class="source-toggle" href="#"
336
- onclick="toggleCode('M000226-source');return false;">[Source]</a></p>
337
- <div class="method-source-code" id="M000226-source">
351
+ onclick="toggleCode('M000229-source');return false;">[Source]</a></p>
352
+ <div class="method-source-code" id="M000229-source">
338
353
  <pre>
339
354
  /*
340
355
  * call-seq: