vtd_xml 0.0.3-java

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 (545) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +4 -0
  3. data/Gemfile.lock +23 -0
  4. data/LICENSE.txt +20 -0
  5. data/README.md +29 -0
  6. data/Rakefile +20 -0
  7. data/bundle/bundler/setup.rb +10 -0
  8. data/bundle/jruby/1.9/bin/convert_to_should_syntax +23 -0
  9. data/bundle/jruby/1.9/bin/nokogiri +23 -0
  10. data/bundle/jruby/1.9/bin/rake +23 -0
  11. data/bundle/jruby/1.9/build_info/mini_portile-0.5.2.info +1 -0
  12. data/bundle/jruby/1.9/build_info/nokogiri-1.6.1-java.info +1 -0
  13. data/bundle/jruby/1.9/build_info/rake-10.1.1.info +1 -0
  14. data/bundle/jruby/1.9/build_info/shoulda-context-1.1.6.info +1 -0
  15. data/bundle/jruby/1.9/cache/mini_portile-0.5.2.gem +0 -0
  16. data/bundle/jruby/1.9/cache/nokogiri-1.6.1-java.gem +0 -0
  17. data/bundle/jruby/1.9/cache/rake-10.1.1.gem +0 -0
  18. data/bundle/jruby/1.9/cache/shoulda-context-1.1.6.gem +0 -0
  19. data/bundle/jruby/1.9/gems/mini_portile-0.5.2/History.txt +65 -0
  20. data/bundle/jruby/1.9/gems/mini_portile-0.5.2/LICENSE.txt +20 -0
  21. data/bundle/jruby/1.9/gems/mini_portile-0.5.2/README.rdoc +169 -0
  22. data/bundle/jruby/1.9/gems/mini_portile-0.5.2/Rakefile +44 -0
  23. data/bundle/jruby/1.9/gems/mini_portile-0.5.2/examples/Rakefile +55 -0
  24. data/bundle/jruby/1.9/gems/mini_portile-0.5.2/lib/mini_portile.rb +404 -0
  25. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/CHANGELOG.ja.rdoc +828 -0
  26. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/CHANGELOG.rdoc +835 -0
  27. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/C_CODING_STYLE.rdoc +33 -0
  28. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/Gemfile +21 -0
  29. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/Manifest.txt +315 -0
  30. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/README.ja.rdoc +106 -0
  31. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/README.rdoc +175 -0
  32. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ROADMAP.md +90 -0
  33. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/Rakefile +248 -0
  34. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/STANDARD_RESPONSES.md +47 -0
  35. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/Y_U_NO_GEMSPEC.md +155 -0
  36. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/bin/nokogiri +78 -0
  37. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/build_all +105 -0
  38. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/dependencies.yml +4 -0
  39. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/EncodingHandler.java +124 -0
  40. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/HtmlDocument.java +189 -0
  41. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/HtmlElementDescription.java +145 -0
  42. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/HtmlEntityLookup.java +79 -0
  43. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/HtmlSaxParserContext.java +259 -0
  44. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/NokogiriService.java +605 -0
  45. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlAttr.java +190 -0
  46. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlAttributeDecl.java +130 -0
  47. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlCdata.java +84 -0
  48. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlComment.java +95 -0
  49. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlDocument.java +598 -0
  50. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlDocumentFragment.java +210 -0
  51. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlDtd.java +480 -0
  52. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlElement.java +88 -0
  53. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlElementContent.java +382 -0
  54. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlElementDecl.java +152 -0
  55. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlEntityDecl.java +162 -0
  56. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlEntityReference.java +101 -0
  57. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlNamespace.java +216 -0
  58. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlNode.java +1637 -0
  59. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlNodeSet.java +270 -0
  60. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlProcessingInstruction.java +99 -0
  61. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlReader.java +532 -0
  62. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlRelaxng.java +144 -0
  63. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlSaxParserContext.java +356 -0
  64. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlSaxPushParser.java +232 -0
  65. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlSchema.java +324 -0
  66. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlSyntaxError.java +136 -0
  67. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlText.java +107 -0
  68. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XmlXpathContext.java +203 -0
  69. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/XsltStylesheet.java +360 -0
  70. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/ClosedStreamException.java +10 -0
  71. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/HtmlDomParserContext.java +243 -0
  72. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriBlockingQueueInputStream.java +151 -0
  73. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriDocumentCache.java +73 -0
  74. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriDomParser.java +116 -0
  75. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriEncodingReaderWrapper.java +109 -0
  76. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriEntityResolver.java +123 -0
  77. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriErrorHandler.java +86 -0
  78. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriHandler.java +341 -0
  79. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriHelpers.java +826 -0
  80. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriNamespaceCache.java +180 -0
  81. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriNamespaceContext.java +130 -0
  82. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler.java +98 -0
  83. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriNonStrictErrorHandler4NekoHtml.java +121 -0
  84. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriStrictErrorHandler.java +79 -0
  85. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriXPathFunction.java +141 -0
  86. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriXPathFunctionResolver.java +73 -0
  87. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriXPathVariableResolver.java +67 -0
  88. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/NokogiriXsltErrorListener.java +87 -0
  89. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/ParserContext.java +289 -0
  90. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/ReaderNode.java +534 -0
  91. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/SaveContextVisitor.java +780 -0
  92. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/SchemaErrorHandler.java +76 -0
  93. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/UncloseableInputStream.java +102 -0
  94. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/XmlDeclHandler.java +42 -0
  95. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/XmlDomParserContext.java +275 -0
  96. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/XmlSaxParser.java +65 -0
  97. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/java/nokogiri/internals/XsltExtensionFunction.java +72 -0
  98. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/depend +358 -0
  99. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/extconf.rb +195 -0
  100. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_document.c +170 -0
  101. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_document.h +10 -0
  102. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_element_description.c +279 -0
  103. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_element_description.h +10 -0
  104. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_entity_lookup.c +32 -0
  105. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_entity_lookup.h +8 -0
  106. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_sax_parser_context.c +116 -0
  107. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_sax_parser_context.h +11 -0
  108. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_sax_push_parser.c +87 -0
  109. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/html_sax_push_parser.h +9 -0
  110. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/nokogiri.c +143 -0
  111. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/nokogiri.h +164 -0
  112. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_attr.c +94 -0
  113. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_attr.h +9 -0
  114. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_attribute_decl.c +70 -0
  115. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_attribute_decl.h +9 -0
  116. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_cdata.c +56 -0
  117. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_cdata.h +9 -0
  118. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_comment.c +54 -0
  119. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_comment.h +9 -0
  120. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_document.c +576 -0
  121. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_document.h +23 -0
  122. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_document_fragment.c +48 -0
  123. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_document_fragment.h +10 -0
  124. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_dtd.c +202 -0
  125. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_dtd.h +10 -0
  126. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_element_content.c +123 -0
  127. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_element_content.h +10 -0
  128. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_element_decl.c +69 -0
  129. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_element_decl.h +9 -0
  130. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_encoding_handler.c +79 -0
  131. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_encoding_handler.h +8 -0
  132. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_entity_decl.c +110 -0
  133. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_entity_decl.h +10 -0
  134. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_entity_reference.c +52 -0
  135. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_entity_reference.h +9 -0
  136. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_io.c +56 -0
  137. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_io.h +11 -0
  138. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_libxml2_hacks.c +112 -0
  139. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_libxml2_hacks.h +12 -0
  140. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_namespace.c +78 -0
  141. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_namespace.h +13 -0
  142. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_node.c +1534 -0
  143. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_node.h +13 -0
  144. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_node_set.c +467 -0
  145. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_node_set.h +14 -0
  146. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_processing_instruction.c +56 -0
  147. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_processing_instruction.h +9 -0
  148. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_reader.c +681 -0
  149. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_reader.h +10 -0
  150. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_relax_ng.c +161 -0
  151. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_relax_ng.h +9 -0
  152. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_sax_parser.c +312 -0
  153. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_sax_parser.h +39 -0
  154. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_sax_parser_context.c +222 -0
  155. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_sax_parser_context.h +10 -0
  156. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_sax_push_parser.c +115 -0
  157. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_sax_push_parser.h +9 -0
  158. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_schema.c +205 -0
  159. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_schema.h +9 -0
  160. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_syntax_error.c +58 -0
  161. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_syntax_error.h +13 -0
  162. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_text.c +52 -0
  163. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_text.h +9 -0
  164. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_xpath_context.c +319 -0
  165. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xml_xpath_context.h +10 -0
  166. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xslt_stylesheet.c +270 -0
  167. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/ext/nokogiri/xslt_stylesheet.h +14 -0
  168. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/isorelax.jar +0 -0
  169. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/jing.jar +0 -0
  170. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nekodtd.jar +0 -0
  171. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nekohtml.jar +0 -0
  172. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/node.rb +102 -0
  173. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/parser.rb +720 -0
  174. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/parser.y +258 -0
  175. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/parser_extras.rb +91 -0
  176. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/syntax_error.rb +7 -0
  177. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/tokenizer.rb +152 -0
  178. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/tokenizer.rex +55 -0
  179. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css/xpath_visitor.rb +171 -0
  180. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/css.rb +27 -0
  181. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/decorators/slop.rb +35 -0
  182. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/builder.rb +35 -0
  183. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/document.rb +254 -0
  184. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/document_fragment.rb +41 -0
  185. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/element_description.rb +23 -0
  186. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/element_description_defaults.rb +671 -0
  187. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/entity_lookup.rb +13 -0
  188. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/sax/parser.rb +52 -0
  189. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/sax/parser_context.rb +16 -0
  190. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html/sax/push_parser.rb +16 -0
  191. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/html.rb +37 -0
  192. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/nokogiri.jar +0 -0
  193. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/syntax_error.rb +4 -0
  194. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/version.rb +106 -0
  195. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/attr.rb +14 -0
  196. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/attribute_decl.rb +18 -0
  197. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/builder.rb +443 -0
  198. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/cdata.rb +11 -0
  199. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/character_data.rb +7 -0
  200. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/document.rb +279 -0
  201. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/document_fragment.rb +112 -0
  202. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/dtd.rb +22 -0
  203. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/element_content.rb +36 -0
  204. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/element_decl.rb +13 -0
  205. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/entity_decl.rb +19 -0
  206. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/namespace.rb +13 -0
  207. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/node/save_options.rb +61 -0
  208. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/node.rb +957 -0
  209. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/node_set.rb +355 -0
  210. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/notation.rb +6 -0
  211. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/parse_options.rb +98 -0
  212. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/pp/character_data.rb +18 -0
  213. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/pp/node.rb +56 -0
  214. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/pp.rb +2 -0
  215. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/processing_instruction.rb +8 -0
  216. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/reader.rb +112 -0
  217. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/relax_ng.rb +32 -0
  218. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/sax/document.rb +171 -0
  219. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/sax/parser.rb +123 -0
  220. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/sax/parser_context.rb +16 -0
  221. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/sax/push_parser.rb +60 -0
  222. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/sax.rb +4 -0
  223. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/schema.rb +63 -0
  224. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/syntax_error.rb +47 -0
  225. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/text.rb +9 -0
  226. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/xpath/syntax_error.rb +11 -0
  227. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/xpath.rb +10 -0
  228. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml/xpath_context.rb +16 -0
  229. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xml.rb +73 -0
  230. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xslt/stylesheet.rb +25 -0
  231. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri/xslt.rb +56 -0
  232. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/nokogiri.rb +128 -0
  233. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/xercesImpl.jar +0 -0
  234. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/lib/xsd/xmlparser/nokogiri.rb +102 -0
  235. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/tasks/cross_compile.rb +134 -0
  236. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/tasks/nokogiri.org.rb +24 -0
  237. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/tasks/test.rb +95 -0
  238. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/css/test_nthiness.rb +159 -0
  239. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/css/test_parser.rb +341 -0
  240. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/css/test_tokenizer.rb +198 -0
  241. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/css/test_xpath_visitor.rb +91 -0
  242. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/decorators/test_slop.rb +16 -0
  243. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/2ch.html +108 -0
  244. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/address_book.rlx +12 -0
  245. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/address_book.xml +10 -0
  246. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/bar/bar.xsd +4 -0
  247. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/bogus.xml +0 -0
  248. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/dont_hurt_em_why.xml +422 -0
  249. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/encoding.html +82 -0
  250. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/encoding.xhtml +84 -0
  251. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/exslt.xml +8 -0
  252. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/exslt.xslt +35 -0
  253. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/foo/foo.xsd +4 -0
  254. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/metacharset.html +10 -0
  255. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/noencoding.html +47 -0
  256. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/po.xml +32 -0
  257. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/po.xsd +66 -0
  258. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/saml/saml20assertion_schema.xsd +283 -0
  259. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/saml/saml20protocol_schema.xsd +302 -0
  260. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/saml/xenc_schema.xsd +146 -0
  261. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/saml/xmldsig_schema.xsd +318 -0
  262. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/shift_jis.html +10 -0
  263. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/shift_jis.xml +5 -0
  264. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/snuggles.xml +3 -0
  265. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/staff.dtd +10 -0
  266. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/staff.xml +59 -0
  267. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/staff.xslt +32 -0
  268. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/test_document_url/bar.xml +2 -0
  269. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/test_document_url/document.dtd +4 -0
  270. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/test_document_url/document.xml +6 -0
  271. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/tlm.html +850 -0
  272. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/to_be_xincluded.xml +2 -0
  273. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/valid_bar.xml +2 -0
  274. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/files/xinclude.xml +4 -0
  275. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/helper.rb +154 -0
  276. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/sax/test_parser.rb +141 -0
  277. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/sax/test_parser_context.rb +46 -0
  278. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_builder.rb +164 -0
  279. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_document.rb +552 -0
  280. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_document_encoding.rb +138 -0
  281. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_document_fragment.rb +261 -0
  282. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_element_description.rb +105 -0
  283. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_named_characters.rb +14 -0
  284. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_node.rb +196 -0
  285. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/html/test_node_encoding.rb +27 -0
  286. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/namespaces/test_additional_namespaces_in_builder_doc.rb +14 -0
  287. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/namespaces/test_namespaces_in_builder_doc.rb +75 -0
  288. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/namespaces/test_namespaces_in_created_doc.rb +75 -0
  289. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/namespaces/test_namespaces_in_parsed_doc.rb +66 -0
  290. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_convert_xpath.rb +135 -0
  291. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_css_cache.rb +45 -0
  292. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_encoding_handler.rb +46 -0
  293. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_memory_leak.rb +156 -0
  294. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_nokogiri.rb +132 -0
  295. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_reader.rb +555 -0
  296. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_soap4r_sax.rb +52 -0
  297. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/test_xslt_transforms.rb +254 -0
  298. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/node/test_save_options.rb +28 -0
  299. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/node/test_subclass.rb +44 -0
  300. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/sax/test_parser.rb +366 -0
  301. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/sax/test_parser_context.rb +106 -0
  302. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/sax/test_push_parser.rb +157 -0
  303. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_attr.rb +64 -0
  304. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_attribute_decl.rb +86 -0
  305. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_builder.rb +306 -0
  306. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_c14n.rb +151 -0
  307. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_cdata.rb +48 -0
  308. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_comment.rb +29 -0
  309. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_document.rb +868 -0
  310. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_document_encoding.rb +28 -0
  311. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_document_fragment.rb +223 -0
  312. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_dtd.rb +103 -0
  313. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_dtd_encoding.rb +33 -0
  314. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_element_content.rb +56 -0
  315. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_element_decl.rb +73 -0
  316. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_entity_decl.rb +122 -0
  317. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_entity_reference.rb +245 -0
  318. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_namespace.rb +95 -0
  319. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_node.rb +1137 -0
  320. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_node_attributes.rb +96 -0
  321. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_node_encoding.rb +107 -0
  322. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_node_inheritance.rb +32 -0
  323. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_node_reparenting.rb +374 -0
  324. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_node_set.rb +755 -0
  325. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_parse_options.rb +64 -0
  326. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_processing_instruction.rb +30 -0
  327. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_reader_encoding.rb +142 -0
  328. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_relax_ng.rb +60 -0
  329. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_schema.rb +103 -0
  330. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_syntax_error.rb +12 -0
  331. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_text.rb +45 -0
  332. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_unparented_node.rb +422 -0
  333. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_xinclude.rb +83 -0
  334. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xml/test_xpath.rb +295 -0
  335. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xslt/test_custom_functions.rb +133 -0
  336. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test/xslt/test_exception_handling.rb +37 -0
  337. data/bundle/jruby/1.9/gems/nokogiri-1.6.1-java/test_all +81 -0
  338. data/bundle/jruby/1.9/gems/rake-10.1.1/CHANGES +530 -0
  339. data/bundle/jruby/1.9/gems/rake-10.1.1/MIT-LICENSE +21 -0
  340. data/bundle/jruby/1.9/gems/rake-10.1.1/README.rdoc +187 -0
  341. data/bundle/jruby/1.9/gems/rake-10.1.1/Rakefile +374 -0
  342. data/bundle/jruby/1.9/gems/rake-10.1.1/TODO +21 -0
  343. data/bundle/jruby/1.9/gems/rake-10.1.1/bin/rake +33 -0
  344. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/command_line_usage.rdoc +152 -0
  345. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/example/Rakefile1 +38 -0
  346. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/example/Rakefile2 +35 -0
  347. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/example/a.c +6 -0
  348. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/example/b.c +6 -0
  349. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/example/main.c +11 -0
  350. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/glossary.rdoc +51 -0
  351. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/jamis.rb +591 -0
  352. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/proto_rake.rdoc +127 -0
  353. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/rake.1.gz +0 -0
  354. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/rakefile.rdoc +617 -0
  355. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/rational.rdoc +151 -0
  356. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.4.14.rdoc +23 -0
  357. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.4.15.rdoc +35 -0
  358. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.5.0.rdoc +53 -0
  359. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.5.3.rdoc +78 -0
  360. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.5.4.rdoc +46 -0
  361. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.6.0.rdoc +141 -0
  362. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.7.0.rdoc +119 -0
  363. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.7.1.rdoc +59 -0
  364. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.7.2.rdoc +121 -0
  365. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.7.3.rdoc +47 -0
  366. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.0.rdoc +114 -0
  367. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.2.rdoc +165 -0
  368. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.3.rdoc +112 -0
  369. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.4.rdoc +147 -0
  370. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.5.rdoc +53 -0
  371. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.6.rdoc +55 -0
  372. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.8.7.rdoc +55 -0
  373. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.0.rdoc +112 -0
  374. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.1.rdoc +52 -0
  375. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.2.2.rdoc +55 -0
  376. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.2.rdoc +49 -0
  377. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.3.rdoc +102 -0
  378. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.4.rdoc +110 -0
  379. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.5.rdoc +114 -0
  380. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-0.9.6.rdoc +127 -0
  381. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-10.0.0.rdoc +178 -0
  382. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-10.0.1.rdoc +187 -0
  383. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-10.0.2.rdoc +191 -0
  384. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-10.0.3.rdoc +191 -0
  385. data/bundle/jruby/1.9/gems/rake-10.1.1/doc/release_notes/rake-10.1.0.rdoc +61 -0
  386. data/bundle/jruby/1.9/gems/rake-10.1.1/install.rb +80 -0
  387. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/alt_system.rb +108 -0
  388. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/application.rb +728 -0
  389. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/backtrace.rb +20 -0
  390. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/clean.rb +55 -0
  391. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/cloneable.rb +16 -0
  392. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/contrib/compositepublisher.rb +21 -0
  393. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/contrib/ftptools.rb +139 -0
  394. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/contrib/publisher.rb +73 -0
  395. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/contrib/rubyforgepublisher.rb +16 -0
  396. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/contrib/sshpublisher.rb +50 -0
  397. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/contrib/sys.rb +2 -0
  398. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/default_loader.rb +10 -0
  399. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/dsl_definition.rb +157 -0
  400. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/early_time.rb +18 -0
  401. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/ext/core.rb +28 -0
  402. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/ext/module.rb +0 -0
  403. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/ext/string.rb +166 -0
  404. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/ext/time.rb +15 -0
  405. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/file_creation_task.rb +24 -0
  406. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/file_list.rb +416 -0
  407. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/file_task.rb +46 -0
  408. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/file_utils.rb +116 -0
  409. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/file_utils_ext.rb +144 -0
  410. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/gempackagetask.rb +2 -0
  411. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/invocation_chain.rb +57 -0
  412. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/invocation_exception_mixin.rb +16 -0
  413. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/linked_list.rb +103 -0
  414. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/loaders/makefile.rb +40 -0
  415. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/multi_task.rb +13 -0
  416. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/name_space.rb +25 -0
  417. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/packagetask.rb +190 -0
  418. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/pathmap.rb +1 -0
  419. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/phony.rb +15 -0
  420. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/private_reader.rb +20 -0
  421. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/promise.rb +99 -0
  422. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/pseudo_status.rb +29 -0
  423. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/rake_module.rb +37 -0
  424. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/rake_test_loader.rb +22 -0
  425. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/rdoctask.rb +2 -0
  426. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/ruby182_test_unit_fix.rb +27 -0
  427. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/rule_recursion_overflow_error.rb +20 -0
  428. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/runtest.rb +22 -0
  429. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/scope.rb +42 -0
  430. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/task.rb +378 -0
  431. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/task_argument_error.rb +7 -0
  432. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/task_arguments.rb +89 -0
  433. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/task_manager.rb +297 -0
  434. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/tasklib.rb +22 -0
  435. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/testtask.rb +201 -0
  436. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/thread_history_display.rb +48 -0
  437. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/thread_pool.rb +161 -0
  438. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/trace_output.rb +22 -0
  439. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/version.rb +9 -0
  440. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake/win32.rb +56 -0
  441. data/bundle/jruby/1.9/gems/rake-10.1.1/lib/rake.rb +73 -0
  442. data/bundle/jruby/1.9/gems/rake-10.1.1/test/file_creation.rb +34 -0
  443. data/bundle/jruby/1.9/gems/rake-10.1.1/test/helper.rb +128 -0
  444. data/bundle/jruby/1.9/gems/rake-10.1.1/test/support/rakefile_definitions.rb +444 -0
  445. data/bundle/jruby/1.9/gems/rake-10.1.1/test/support/ruby_runner.rb +33 -0
  446. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_private_reader.rb +42 -0
  447. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake.rb +40 -0
  448. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_application.rb +517 -0
  449. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_application_options.rb +457 -0
  450. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_backtrace.rb +113 -0
  451. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_clean.rb +46 -0
  452. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_definitions.rb +79 -0
  453. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_directory_task.rb +57 -0
  454. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_dsl.rb +40 -0
  455. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_early_time.rb +31 -0
  456. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_extension.rb +59 -0
  457. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_file_creation_task.rb +56 -0
  458. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_file_list.rb +627 -0
  459. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_file_list_path_map.rb +8 -0
  460. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_file_task.rb +122 -0
  461. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_file_utils.rb +309 -0
  462. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_ftp_file.rb +74 -0
  463. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_functional.rb +466 -0
  464. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_invocation_chain.rb +64 -0
  465. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_linked_list.rb +84 -0
  466. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_makefile_loader.rb +46 -0
  467. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_multi_task.rb +58 -0
  468. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_name_space.rb +43 -0
  469. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_package_task.rb +79 -0
  470. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_path_map.rb +168 -0
  471. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_path_map_explode.rb +34 -0
  472. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_path_map_partial.rb +18 -0
  473. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_pseudo_status.rb +21 -0
  474. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_rake_test_loader.rb +20 -0
  475. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_reduce_compat.rb +26 -0
  476. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_require.rb +40 -0
  477. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_rules.rb +362 -0
  478. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_scope.rb +44 -0
  479. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task.rb +376 -0
  480. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task_argument_parsing.rb +103 -0
  481. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task_arguments.rb +121 -0
  482. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task_lib.rb +9 -0
  483. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task_manager.rb +158 -0
  484. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task_manager_argument_resolution.rb +19 -0
  485. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_task_with_arguments.rb +171 -0
  486. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_test_task.rb +119 -0
  487. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_thread_pool.rb +142 -0
  488. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_top_level_functions.rb +71 -0
  489. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_rake_win32.rb +72 -0
  490. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_thread_history_display.rb +101 -0
  491. data/bundle/jruby/1.9/gems/rake-10.1.1/test/test_trace_output.rb +52 -0
  492. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/Appraisals +21 -0
  493. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/CONTRIBUTING.md +38 -0
  494. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/Gemfile +3 -0
  495. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/MIT-LICENSE +22 -0
  496. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/README.md +54 -0
  497. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/Rakefile +21 -0
  498. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/bin/convert_to_should_syntax +42 -0
  499. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/3.0.gemfile +7 -0
  500. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/3.0.gemfile.lock +91 -0
  501. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/3.1.gemfile +9 -0
  502. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/3.1.gemfile.lock +112 -0
  503. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/3.2.gemfile +9 -0
  504. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/3.2.gemfile.lock +111 -0
  505. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/4.0.gemfile +9 -0
  506. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/gemfiles/4.0.gemfile.lock +107 -0
  507. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/init.rb +1 -0
  508. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/assertions.rb +96 -0
  509. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/autoload_macros.rb +46 -0
  510. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/context.rb +481 -0
  511. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/proc_extensions.rb +14 -0
  512. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/tasks/list_tests.rake +29 -0
  513. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/tasks/yaml_to_shoulda.rake +28 -0
  514. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/tasks.rb +3 -0
  515. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context/version.rb +5 -0
  516. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda/context.rb +33 -0
  517. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/lib/shoulda-context.rb +1 -0
  518. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/rails/init.rb +4 -0
  519. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/shoulda-context.gemspec +27 -0
  520. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/tasks/shoulda.rake +1 -0
  521. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/fake_rails_root/test/shoulda_macros/custom_macro.rb +6 -0
  522. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/shoulda/autoload_macro_test.rb +18 -0
  523. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/shoulda/context_test.rb +360 -0
  524. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/shoulda/convert_to_should_syntax_test.rb +63 -0
  525. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/shoulda/helpers_test.rb +190 -0
  526. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/shoulda/should_test.rb +291 -0
  527. data/bundle/jruby/1.9/gems/shoulda-context-1.1.6/test/test_helper.rb +11 -0
  528. data/bundle/jruby/1.9/specifications/mini_portile-0.5.2.gemspec +22 -0
  529. data/bundle/jruby/1.9/specifications/nokogiri-1.6.1-java.gemspec +69 -0
  530. data/bundle/jruby/1.9/specifications/rake-10.1.1.gemspec +35 -0
  531. data/bundle/jruby/1.9/specifications/shoulda-context-1.1.6.gemspec +44 -0
  532. data/lib/vtd-xml-2.11.jar +0 -0
  533. data/lib/vtd_xml/document.rb +124 -0
  534. data/lib/vtd_xml/extraction_error.rb +4 -0
  535. data/lib/vtd_xml/modify_error.rb +5 -0
  536. data/lib/vtd_xml/parse_error.rb +5 -0
  537. data/lib/vtd_xml/version.rb +4 -0
  538. data/lib/vtd_xml/xpath_error.rb +4 -0
  539. data/lib/vtd_xml.rb +8 -0
  540. data/pkg/vtd_xml-0.0.3-java.gem +0 -0
  541. data/test/test_load_paths.rb +18 -0
  542. data/test/unit/vtd_xml/document_test.rb +266 -0
  543. data/vtd_xml.gemspec +25 -0
  544. data/vtd_xml.iml +16 -0
  545. metadata +648 -0
@@ -0,0 +1,210 @@
1
+ /**
2
+ * (The MIT License)
3
+ *
4
+ * Copyright (c) 2008 - 2011:
5
+ *
6
+ * * {Aaron Patterson}[http://tenderlovemaking.com]
7
+ * * {Mike Dalessio}[http://mike.daless.io]
8
+ * * {Charles Nutter}[http://blog.headius.com]
9
+ * * {Sergio Arbeo}[http://www.serabe.com]
10
+ * * {Patrick Mahoney}[http://polycrystal.org]
11
+ * * {Yoko Harada}[http://yokolet.blogspot.com]
12
+ *
13
+ * Permission is hereby granted, free of charge, to any person obtaining
14
+ * a copy of this software and associated documentation files (the
15
+ * 'Software'), to deal in the Software without restriction, including
16
+ * without limitation the rights to use, copy, modify, merge, publish,
17
+ * distribute, sublicense, and/or sell copies of the Software, and to
18
+ * permit persons to whom the Software is furnished to do so, subject to
19
+ * the following conditions:
20
+ *
21
+ * The above copyright notice and this permission notice shall be
22
+ * included in all copies or substantial portions of the Software.
23
+ *
24
+ * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
25
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
27
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
28
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
29
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
30
+ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
+ */
32
+
33
+ package nokogiri;
34
+
35
+ import static nokogiri.internals.NokogiriHelpers.getLocalNameForNamespace;
36
+ import static nokogiri.internals.NokogiriHelpers.getNokogiriClass;
37
+ import static nokogiri.internals.NokogiriHelpers.getPrefix;
38
+ import static nokogiri.internals.NokogiriHelpers.isNamespace;
39
+ import static nokogiri.internals.NokogiriHelpers.rubyStringToString;
40
+
41
+ import java.util.HashMap;
42
+ import java.util.Map;
43
+ import java.util.Set;
44
+ import java.util.regex.Matcher;
45
+ import java.util.regex.Pattern;
46
+
47
+ import org.jruby.Ruby;
48
+ import org.jruby.RubyArray;
49
+ import org.jruby.RubyClass;
50
+ import org.jruby.RubyString;
51
+ import org.jruby.anno.JRubyClass;
52
+ import org.jruby.anno.JRubyMethod;
53
+ import org.jruby.javasupport.util.RuntimeHelpers;
54
+ import org.jruby.runtime.ThreadContext;
55
+ import org.jruby.runtime.builtin.IRubyObject;
56
+ import org.w3c.dom.Attr;
57
+ import org.w3c.dom.Document;
58
+ import org.w3c.dom.NamedNodeMap;
59
+
60
+ /**
61
+ * Class for Nokogiri::XML::DocumentFragment
62
+ *
63
+ * @author sergio
64
+ * @author Yoko Harada <yokolet@gmail.com>
65
+ */
66
+ @JRubyClass(name="Nokogiri::XML::DocumentFragment", parent="Nokogiri::XML::Node")
67
+ public class XmlDocumentFragment extends XmlNode {
68
+ private XmlElement fragmentContext = null;
69
+
70
+ public XmlDocumentFragment(Ruby ruby) {
71
+ this(ruby, getNokogiriClass(ruby, "Nokogiri::XML::DocumentFragment"));
72
+ }
73
+
74
+ public XmlDocumentFragment(Ruby ruby, RubyClass klazz) {
75
+ super(ruby, klazz);
76
+ }
77
+
78
+ @JRubyMethod(name="new", meta = true, required=1, optional=2)
79
+ public static IRubyObject rbNew(ThreadContext context, IRubyObject cls, IRubyObject[] args) {
80
+
81
+ if(args.length < 1) {
82
+ throw context.getRuntime().newArgumentError(args.length, 1);
83
+ }
84
+
85
+ if(!(args[0] instanceof XmlDocument)){
86
+ throw context.getRuntime().newArgumentError("first parameter must be a Nokogiri::XML::Document instance");
87
+ }
88
+
89
+ XmlDocument doc = (XmlDocument) args[0];
90
+
91
+ // make wellformed fragment, ignore invalid namespace, or add appropriate namespace to parse
92
+ if (args.length > 1 && args[1] instanceof RubyString) {
93
+ args[1] = trim(context, doc, (RubyString)args[1]);
94
+ if (XmlDocumentFragment.isTag((RubyString)args[1])) {
95
+ args[1] = RubyString.newString(context.getRuntime(), addNamespaceDeclIfNeeded(doc, rubyStringToString(args[1])));
96
+ }
97
+ }
98
+
99
+ XmlDocumentFragment fragment = (XmlDocumentFragment) NokogiriService.XML_DOCUMENT_FRAGMENT_ALLOCATOR.allocate(context.getRuntime(), (RubyClass)cls);
100
+ fragment.setDocument(context, doc);
101
+ fragment.setNode(context, doc.getDocument().createDocumentFragment());
102
+
103
+ //TODO: Get namespace definitions from doc.
104
+ if (args.length == 3 && args[2] != null && args[2] instanceof XmlElement) {
105
+ fragment.fragmentContext = (XmlElement)args[2];
106
+ }
107
+ RuntimeHelpers.invoke(context, fragment, "initialize", args);
108
+ return fragment;
109
+ }
110
+
111
+ private static IRubyObject trim(ThreadContext context, XmlDocument xmlDocument, RubyString str) {
112
+ // checks whether schema is given. if exists, allows whitespace processing to a parser
113
+ Document document = (Document)xmlDocument.node;
114
+ if (document.getDoctype() != null) return str;
115
+ // strips trailing \n off forcefully
116
+ // not to return new object in case of no chomp needed, chomp! is used here.
117
+ IRubyObject result;
118
+ if (context.getRuntime().is1_9()) result = str.chomp_bang19(context);
119
+ else result = str.chomp_bang(context);
120
+ return result.isNil() ? str : result;
121
+ }
122
+
123
+ private static boolean isTag(RubyString ruby_string) {
124
+ String str = rubyStringToString(ruby_string);
125
+ if (str.startsWith("<") && str.endsWith(">")) return true;
126
+ return false;
127
+ }
128
+
129
+ private static Pattern qname_pattern = Pattern.compile("[^</:>\\s]+:[^</:>=\\s]+");
130
+ private static Pattern starttag_pattern = Pattern.compile("<[^</>]+>");
131
+
132
+ private static boolean isNamespaceDefined(String qName, NamedNodeMap nodeMap) {
133
+ if (isNamespace(qName.intern())) return true;
134
+ for (int i=0; i < nodeMap.getLength(); i++) {
135
+ Attr attr = (Attr)nodeMap.item(i);
136
+ if (isNamespace(attr.getNodeName())) {
137
+ String localPart = getLocalNameForNamespace(attr.getNodeName());
138
+ if (getPrefix(qName).equals(localPart)) {
139
+ return true;
140
+ }
141
+ }
142
+ }
143
+ return false;
144
+ }
145
+
146
+ private static String addNamespaceDeclIfNeeded(XmlDocument doc, String tags) {
147
+ if (doc.getDocument() == null) return tags;
148
+ if (doc.getDocument().getDocumentElement() == null) return tags;
149
+ Matcher matcher = starttag_pattern.matcher(tags);
150
+ Map<String, String> rewriteTable = new HashMap<String, String>();
151
+ while(matcher.find()) {
152
+ String start_tag = matcher.group();
153
+ Matcher matcher2 = qname_pattern.matcher(start_tag);
154
+ while(matcher2.find()) {
155
+ String qName = matcher2.group();
156
+ NamedNodeMap nodeMap = doc.getDocument().getDocumentElement().getAttributes();
157
+ if (isNamespaceDefined(qName, nodeMap)) {
158
+ String namespaceDecl = getNamespceDecl(getPrefix(qName), nodeMap);
159
+ if (namespaceDecl != null) {
160
+ rewriteTable.put("<"+qName+">", "<"+qName + " " + namespaceDecl+">");
161
+ }
162
+ }
163
+ }
164
+ }
165
+ Set<String> keys = rewriteTable.keySet();
166
+ for (String key : keys) {
167
+ tags = tags.replace(key, rewriteTable.get(key));
168
+ }
169
+
170
+ return tags;
171
+ }
172
+
173
+ private static String getNamespceDecl(String prefix, NamedNodeMap nodeMap) {
174
+ for (int i=0; i < nodeMap.getLength(); i++) {
175
+ Attr attr = (Attr)nodeMap.item(i);
176
+ if (prefix.equals(attr.getLocalName())) {
177
+ return attr.getName() + "=\"" + attr.getValue() + "\"";
178
+ }
179
+ }
180
+ return null;
181
+ }
182
+
183
+ public XmlElement getFragmentContext() {
184
+ return fragmentContext;
185
+ }
186
+
187
+ //@Override
188
+ public void add_child(ThreadContext context, XmlNode child) {
189
+ // Some magic for DocumentFragment
190
+
191
+ Ruby ruby = context.getRuntime();
192
+ XmlNodeSet children = (XmlNodeSet) child.children(context);
193
+
194
+ long length = children.length();
195
+
196
+ RubyArray childrenArray = children.convertToArray();
197
+
198
+ if(length != 0) {
199
+ for(int i = 0; i < length; i++) {
200
+ XmlNode item = (XmlNode) ((XmlNode) childrenArray.aref(ruby.newFixnum(i))).dup_implementation(context, true);
201
+ add_child(context, item);
202
+ }
203
+ }
204
+ }
205
+
206
+ @Override
207
+ public void relink_namespace(ThreadContext context) {
208
+ ((XmlNodeSet) children(context)).relink_namespace(context);
209
+ }
210
+ }
@@ -0,0 +1,480 @@
1
+ /**
2
+ * (The MIT License)
3
+ *
4
+ * Copyright (c) 2008 - 2011:
5
+ *
6
+ * * {Aaron Patterson}[http://tenderlovemaking.com]
7
+ * * {Mike Dalessio}[http://mike.daless.io]
8
+ * * {Charles Nutter}[http://blog.headius.com]
9
+ * * {Sergio Arbeo}[http://www.serabe.com]
10
+ * * {Patrick Mahoney}[http://polycrystal.org]
11
+ * * {Yoko Harada}[http://yokolet.blogspot.com]
12
+ *
13
+ * Permission is hereby granted, free of charge, to any person obtaining
14
+ * a copy of this software and associated documentation files (the
15
+ * 'Software'), to deal in the Software without restriction, including
16
+ * without limitation the rights to use, copy, modify, merge, publish,
17
+ * distribute, sublicense, and/or sell copies of the Software, and to
18
+ * permit persons to whom the Software is furnished to do so, subject to
19
+ * the following conditions:
20
+ *
21
+ * The above copyright notice and this permission notice shall be
22
+ * included in all copies or substantial portions of the Software.
23
+ *
24
+ * THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
25
+ * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
26
+ * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
27
+ * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
28
+ * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
29
+ * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
30
+ * SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
31
+ */
32
+
33
+ package nokogiri;
34
+
35
+ import static nokogiri.internals.NokogiriHelpers.getNokogiriClass;
36
+ import static nokogiri.internals.NokogiriHelpers.nonEmptyStringOrNil;
37
+ import static nokogiri.internals.NokogiriHelpers.stringOrNil;
38
+ import static org.jruby.javasupport.util.RuntimeHelpers.invoke;
39
+ import nokogiri.internals.NokogiriHelpers;
40
+ import nokogiri.internals.SaveContextVisitor;
41
+
42
+ import org.apache.xerces.xni.QName;
43
+ import org.cyberneko.dtd.DTDConfiguration;
44
+ import org.jruby.Ruby;
45
+ import org.jruby.RubyArray;
46
+ import org.jruby.RubyClass;
47
+ import org.jruby.RubyHash;
48
+ import org.jruby.anno.JRubyClass;
49
+ import org.jruby.anno.JRubyMethod;
50
+ import org.jruby.runtime.ThreadContext;
51
+ import org.jruby.runtime.builtin.IRubyObject;
52
+ import org.w3c.dom.Document;
53
+ import org.w3c.dom.DocumentType;
54
+ import org.w3c.dom.Element;
55
+ import org.w3c.dom.Node;
56
+
57
+ /**
58
+ * Class for Nokogiri::XML::DTD
59
+ *
60
+ * @author sergio
61
+ * @author Patrick Mahoney <pat@polycrystal.org>
62
+ * @author Yoko Harada <yokolet@gmail.com>
63
+ */
64
+
65
+ @JRubyClass(name="Nokogiri::XML::DTD", parent="Nokogiri::XML::Node")
66
+ public class XmlDtd extends XmlNode {
67
+ protected RubyArray allDecls = null;
68
+
69
+ /** cache of children, Nokogiri::XML::NodeSet */
70
+ protected IRubyObject children = null;
71
+
72
+ /** cache of name => XmlAttributeDecl */
73
+ protected RubyHash attributes = null;
74
+
75
+ /** cache of name => XmlElementDecl */
76
+ protected RubyHash elements = null;
77
+
78
+ /** cache of name => XmlEntityDecl */
79
+ protected RubyHash entities = null;
80
+
81
+ /** cache of name => Nokogiri::XML::Notation */
82
+ protected RubyHash notations = null;
83
+ protected RubyClass notationClass;
84
+
85
+ /** temporary store of content models before they are added to
86
+ * their XmlElementDecl. */
87
+ protected RubyHash contentModels;
88
+
89
+ /** node name */
90
+ protected IRubyObject name;
91
+
92
+ /** public ID (or external ID) */
93
+ protected IRubyObject pubId;
94
+
95
+ /** system ID */
96
+ protected IRubyObject sysId;
97
+
98
+ public XmlDtd(Ruby ruby, RubyClass rubyClass) {
99
+ super(ruby, rubyClass);
100
+ }
101
+
102
+ public void setNode(Ruby runtime, Node dtd) {
103
+ this.node = dtd;
104
+ notationClass = (RubyClass) runtime.getClassFromPath("Nokogiri::XML::Notation");
105
+
106
+ name = pubId = sysId = runtime.getNil();
107
+ if (dtd == null) return;
108
+
109
+ // This is the dtd declaration stored in the document; it
110
+ // contains the DTD name (root element) and public and system
111
+ // ids. The actual declarations are in the NekoDTD 'dtd'
112
+ // variable. I don't know of a way to consolidate the two.
113
+
114
+ DocumentType otherDtd = dtd.getOwnerDocument().getDoctype();
115
+ if (otherDtd != null) {
116
+ name = stringOrNil(runtime, otherDtd.getNodeName());
117
+ pubId = nonEmptyStringOrNil(runtime, otherDtd.getPublicId());
118
+ sysId = nonEmptyStringOrNil(runtime, otherDtd.getSystemId());
119
+ }
120
+ }
121
+
122
+ public XmlDtd(Ruby ruby, RubyClass rubyClass, Node dtd) {
123
+ super(ruby, rubyClass, dtd);
124
+ setNode(ruby, dtd);
125
+ }
126
+
127
+ public static XmlDtd newEmpty(Ruby runtime,
128
+ Document doc,
129
+ IRubyObject name,
130
+ IRubyObject external_id,
131
+ IRubyObject system_id) {
132
+
133
+ DocumentType placeholder = null;
134
+ if (doc.getDoctype() == null) {
135
+ String javaName = NokogiriHelpers.rubyStringToString(name);
136
+ String javaExternalId = NokogiriHelpers.rubyStringToString(external_id);
137
+ String javaSystemId = NokogiriHelpers.rubyStringToString(system_id);
138
+ placeholder = doc.getImplementation().createDocumentType(javaName, javaExternalId, javaSystemId);
139
+ doc.appendChild(placeholder);
140
+ } else {
141
+ placeholder = doc.getDoctype();
142
+ }
143
+ // FIXME: what if the document had a doc type, why are we here ?
144
+ XmlDtd dtd = (XmlDtd) NokogiriService.XML_DTD_ALLOCATOR.allocate(runtime, getNokogiriClass(runtime, "Nokogiri::XML::DTD"));
145
+ dtd.setNode(runtime, placeholder);
146
+ dtd.name = name;
147
+ dtd.pubId = external_id;
148
+ dtd.sysId = system_id;
149
+ return dtd;
150
+ }
151
+
152
+
153
+ /**
154
+ * Create an unparented element that contains DTD declarations
155
+ * parsed from the internal subset attached as user data to
156
+ * <code>doc</code>. The attached dtd must be the tree from
157
+ * NekoDTD. The owner document of the returned tree will be
158
+ * <code>doc</doc>.
159
+ *
160
+ * NekoDTD parser returns a new document node containing elements
161
+ * representing the dtd declarations. The plan is to get the root
162
+ * element and adopt it into the correct document, stipping the
163
+ * Document provided by NekoDTD.
164
+ *
165
+ */
166
+ public static XmlDtd newFromInternalSubset(Ruby runtime, Document doc) {
167
+ Object dtdTree_ = doc.getUserData(XmlDocument.DTD_RAW_DOCUMENT);
168
+ if (dtdTree_ == null) {
169
+ XmlDtd xmlDtd = (XmlDtd) NokogiriService.XML_DTD_ALLOCATOR.allocate(runtime, getNokogiriClass(runtime, "Nokogiri::XML::DTD"));
170
+ xmlDtd.setNode(runtime, null);
171
+ return xmlDtd;
172
+ }
173
+
174
+ Node dtdTree = (Node) dtdTree_;
175
+ Node dtd = getInternalSubset(dtdTree);
176
+ if (dtd == null) {
177
+ XmlDtd xmlDtd = (XmlDtd) NokogiriService.XML_DTD_ALLOCATOR.allocate(runtime, getNokogiriClass(runtime, "Nokogiri::XML::DTD"));
178
+ xmlDtd.setNode(runtime, null);
179
+ return xmlDtd;
180
+ } else {
181
+ // Import the node into doc so it has the correct owner document.
182
+ dtd = doc.importNode(dtd, true);
183
+ XmlDtd xmlDtd = (XmlDtd) NokogiriService.XML_DTD_ALLOCATOR.allocate(runtime, getNokogiriClass(runtime, "Nokogiri::XML::DTD"));
184
+ xmlDtd.setNode(runtime, dtd);
185
+ return xmlDtd;
186
+ }
187
+ }
188
+
189
+ public static IRubyObject newFromExternalSubset(Ruby runtime, Document doc) {
190
+ Object dtdTree_ = doc.getUserData(XmlDocument.DTD_RAW_DOCUMENT);
191
+ if (dtdTree_ == null) {
192
+ return runtime.getNil();
193
+ }
194
+
195
+ Node dtdTree = (Node) dtdTree_;
196
+ Node dtd = getExternalSubset(dtdTree);
197
+ if (dtd == null) {
198
+ return runtime.getNil();
199
+ } else if (!dtd.hasChildNodes()) {
200
+ return runtime.getNil();
201
+ } else {
202
+ // Import the node into doc so it has the correct owner document.
203
+ dtd = doc.importNode(dtd, true);
204
+ XmlDtd xmlDtd = (XmlDtd) NokogiriService.XML_DTD_ALLOCATOR.allocate(runtime, getNokogiriClass(runtime, "Nokogiri::XML::DTD"));
205
+ xmlDtd.setNode(runtime, dtd);
206
+ return xmlDtd;
207
+ }
208
+ }
209
+
210
+ /*
211
+ * <code>dtd</code> is the document node of a NekoDTD tree.
212
+ * NekoDTD tree looks like this:
213
+ *
214
+ * <code><pre>
215
+ * [#document: null]
216
+ * [#comment: ...]
217
+ * [#comment: ...]
218
+ * [dtd: null] // a DocumentType; isDTD(node) => false
219
+ * [dtd: null] // root of dtd, an Element node; isDTD(node) => true
220
+ * ... decls, content models, etc. ...
221
+ * [externalSubset: null] pubid="the pubid" sysid="the sysid"
222
+ * ... external subset decls, etc. ...
223
+ * </pre></code>
224
+ */
225
+ protected static Node getInternalSubset(Node dtdTree) {
226
+ Node root;
227
+ for (root = dtdTree.getFirstChild(); ; root = root.getNextSibling()) {
228
+ if (root == null)
229
+ return null;
230
+ else if (isDTD(root))
231
+ return root; // we have second dtd which is root
232
+ }
233
+ }
234
+
235
+ protected static Node getExternalSubset(Node dtdTree) {
236
+ Node dtd = getInternalSubset(dtdTree);
237
+ if (dtd == null) return null;
238
+ for (Node ext = dtd.getFirstChild(); ; ext = ext.getNextSibling()) {
239
+ if (ext == null)
240
+ return null;
241
+ else if (isExternalSubset(ext))
242
+ return ext;
243
+ }
244
+ }
245
+
246
+ /**
247
+ * This overrides the #attributes method defined in
248
+ * lib/nokogiri/xml/node.rb.
249
+ */
250
+ @JRubyMethod
251
+ public IRubyObject attributes(ThreadContext context) {
252
+ if (attributes == null) extractDecls(context);
253
+
254
+ return attributes;
255
+ }
256
+
257
+ @JRubyMethod
258
+ public IRubyObject elements(ThreadContext context) {
259
+ if (elements == null) extractDecls(context);
260
+
261
+ return elements;
262
+ }
263
+
264
+ @JRubyMethod
265
+ public IRubyObject entities(ThreadContext context) {
266
+ if (entities == null) extractDecls(context);
267
+
268
+ return entities;
269
+ }
270
+
271
+ @JRubyMethod
272
+ public IRubyObject notations(ThreadContext context) {
273
+ if (notations == null) extractDecls(context);
274
+
275
+ return notations;
276
+ }
277
+
278
+ /**
279
+ * Our "node" object is as-returned by NekoDTD. The actual
280
+ * "children" that we're interested in (Attribute declarations,
281
+ * etc.) are a few layers deep.
282
+ */
283
+ @Override
284
+ @JRubyMethod
285
+ public IRubyObject children(ThreadContext context) {
286
+ if (children == null) extractDecls(context);
287
+
288
+ return children;
289
+ }
290
+
291
+ /**
292
+ * Returns the name of the dtd.
293
+ */
294
+ @Override
295
+ @JRubyMethod
296
+ public IRubyObject node_name(ThreadContext context) {
297
+ return name;
298
+ }
299
+
300
+ @Override
301
+ @JRubyMethod(name = "node_name=")
302
+ public IRubyObject node_name_set(ThreadContext context, IRubyObject name) {
303
+ throw context.getRuntime()
304
+ .newRuntimeError("cannot change name of DTD");
305
+ }
306
+
307
+ @JRubyMethod
308
+ public IRubyObject system_id(ThreadContext context) {
309
+ return sysId;
310
+ }
311
+
312
+ @JRubyMethod
313
+ public IRubyObject external_id(ThreadContext context) {
314
+ return pubId;
315
+ }
316
+
317
+ @JRubyMethod
318
+ public IRubyObject validate(ThreadContext context, IRubyObject doc) {
319
+ RubyArray errors = RubyArray.newArray(context.getRuntime());
320
+ if (doc instanceof XmlDocument) {
321
+ errors = (RubyArray) ((XmlDocument)doc).getInstanceVariable("@errors");
322
+ }
323
+ return errors;
324
+ }
325
+
326
+ public static boolean nameEquals(Node node, QName name) {
327
+ return name.localpart.equals(node.getNodeName());
328
+ }
329
+
330
+ public static boolean isExternalSubset(Node node) {
331
+ return nameEquals(node, DTDConfiguration.E_EXTERNAL_SUBSET);
332
+ }
333
+
334
+ /**
335
+ * Checks instanceof Element so we return false for a DocumentType
336
+ * node (NekoDTD uses Element for all its nodes).
337
+ */
338
+ public static boolean isDTD(Node node) {
339
+ return (node instanceof Element &&
340
+ nameEquals(node, DTDConfiguration.E_DTD));
341
+ }
342
+
343
+ public static boolean isAttributeDecl(Node node) {
344
+ return nameEquals(node, DTDConfiguration.E_ATTRIBUTE_DECL);
345
+ }
346
+
347
+ public static boolean isElementDecl(Node node) {
348
+ return nameEquals(node, DTDConfiguration.E_ELEMENT_DECL);
349
+ }
350
+
351
+ public static boolean isEntityDecl(Node node) {
352
+ return (nameEquals(node, DTDConfiguration.E_INTERNAL_ENTITY_DECL) ||
353
+ nameEquals(node, DTDConfiguration.E_UNPARSED_ENTITY_DECL));
354
+ }
355
+
356
+ public static boolean isNotationDecl(Node node) {
357
+ return nameEquals(node, DTDConfiguration.E_NOTATION_DECL);
358
+ }
359
+
360
+ public static boolean isContentModel(Node node) {
361
+ return nameEquals(node, DTDConfiguration.E_CONTENT_MODEL);
362
+ }
363
+
364
+ /**
365
+ * Recursively extract various DTD declarations and store them in
366
+ * the various collections.
367
+ */
368
+ protected void extractDecls(ThreadContext context) {
369
+ Ruby runtime = context.getRuntime();
370
+
371
+ // initialize data structures
372
+ allDecls = RubyArray.newArray(runtime);
373
+ attributes = RubyHash.newHash(runtime);
374
+ elements = RubyHash.newHash(runtime);
375
+ entities = RubyHash.newHash(runtime);
376
+ notations = RubyHash.newHash(runtime);
377
+ contentModels = RubyHash.newHash(runtime);
378
+ children = runtime.getNil();
379
+
380
+ // recursively extract decls
381
+ if (node == null) return; // leave all the decl hash's empty
382
+ extractDecls(context, node.getFirstChild());
383
+
384
+ // convert allDecls to a NodeSet
385
+ children = XmlNodeSet.newXmlNodeSet(context, allDecls);
386
+
387
+ // add attribute decls as attributes to the matching element decl
388
+ RubyArray keys = attributes.keys();
389
+ for (int i = 0; i < keys.getLength(); ++i) {
390
+ IRubyObject akey = keys.entry(i);
391
+ IRubyObject val;
392
+
393
+ val = attributes.op_aref(context, akey);
394
+ if (val.isNil()) continue;
395
+ XmlAttributeDecl attrDecl = (XmlAttributeDecl) val;
396
+ IRubyObject ekey = attrDecl.element_name(context);
397
+ val = elements.op_aref(context, ekey);
398
+ if (val.isNil()) continue;
399
+ XmlElementDecl elemDecl = (XmlElementDecl) val;
400
+
401
+ elemDecl.appendAttrDecl(attrDecl);
402
+ }
403
+
404
+ // add content models to the matching element decl
405
+ keys = contentModels.keys();
406
+ for (int i = 0; i < keys.getLength(); ++i) {
407
+ IRubyObject key = keys.entry(i);
408
+ IRubyObject cm = contentModels.op_aref(context, key);
409
+
410
+ IRubyObject elem = elements.op_aref(context, key);
411
+ if (elem.isNil()) continue;
412
+ if (((XmlElementDecl)elem).isEmpty()) continue;
413
+ ((XmlElementDecl) elem).setContentModel(cm);
414
+ }
415
+ }
416
+
417
+ /**
418
+ * The <code>node</code> is either the first child of the root dtd
419
+ * node (as returned by getInternalSubset()) or the first child of
420
+ * the external subset node (as returned by getExternalSubset()).
421
+ *
422
+ * This recursive function will not descend into an
423
+ * 'externalSubset' node, thus for an internal subset it only
424
+ * extracts nodes in the internal subset, and for an external
425
+ * subset it extracts everything and assumess <code>node</code>
426
+ * and all children are part of the external subset.
427
+ */
428
+ protected void extractDecls(ThreadContext context, Node node) {
429
+ while (node != null) {
430
+ if (isExternalSubset(node)) {
431
+ return;
432
+ } else if (isAttributeDecl(node)) {
433
+ XmlAttributeDecl decl = (XmlAttributeDecl)
434
+ XmlAttributeDecl.create(context, node);
435
+ attributes.op_aset(context, decl.attribute_name(context), decl);
436
+ allDecls.append(decl);
437
+ } else if (isElementDecl(node)) {
438
+ XmlElementDecl decl = (XmlElementDecl)
439
+ XmlElementDecl.create(context, node);
440
+ elements.op_aset(context, decl.element_name(context), decl);
441
+ allDecls.append(decl);
442
+ } else if (isEntityDecl(node)) {
443
+ XmlEntityDecl decl = (XmlEntityDecl)
444
+ XmlEntityDecl.create(context, node);
445
+ entities.op_aset(context, decl.node_name(context), decl);
446
+ allDecls.append(decl);
447
+ } else if (isNotationDecl(node)) {
448
+ XmlNode tmp = (XmlNode)
449
+ NokogiriHelpers.constructNode(context.getRuntime(), node);
450
+ IRubyObject decl = invoke(context, notationClass, "new",
451
+ tmp.getAttribute(context, "name"),
452
+ tmp.getAttribute(context, "pubid"),
453
+ tmp.getAttribute(context, "sysid"));
454
+ notations.op_aset(context,
455
+ tmp.getAttribute(context, "name"), decl);
456
+ allDecls.append(decl);
457
+ } else if (isContentModel(node)) {
458
+ XmlElementContent cm =
459
+ new XmlElementContent(context.getRuntime(),
460
+ (XmlDocument) document(context),
461
+ node);
462
+ contentModels.op_aset(context, cm.element_name(context), cm);
463
+ } else {
464
+ // recurse
465
+ extractDecls(context, node.getFirstChild());
466
+ }
467
+
468
+ node = node.getNextSibling();
469
+ }
470
+ }
471
+
472
+ @Override
473
+ public void accept(ThreadContext context, SaveContextVisitor visitor) {
474
+ // since we use nekoDTD to parse dtd, node might be ElementImpl type
475
+ // An external subset doesn't need to show up, so this method just see docType.
476
+ DocumentType docType = node.getOwnerDocument().getDoctype();
477
+ visitor.enter(docType);
478
+ visitor.leave(docType);
479
+ }
480
+ }