1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78
|
# encoding: UTF-8
## Provide hpricot API for libxml. Provided by Michael Guterl,
## inspired by http://thebogles.com/blog/an-hpricot-style-interface-to-libxml
#
#class String
# def to_libxml_doc
# xp = XML::Parser.new
# xp.string = self
# xp.parse
# end
#end
#
#module LibXML
# module XML
# class Document
# alias :search :find
# end
#
# class Node
# # find the child node with the given xpath
# def at(xpath)
# self.find_first(xpath)
# end
#
# # find the array of child nodes matching the given xpath
# def search(xpath)
# results = self.find(xpath).to_a
# if block_given?
# results.each do |result|
# yield result
# end
# end
# return results
# end
#
# def /(xpath)
# search(xpath)
# end
#
# # return the inner contents of this node as a string
# def inner_xml
# child.to_s
# end
#
# # alias for inner_xml
# def inner_html
# inner_xml
# end
#
# # return this node and its contents as an xml string
# def to_xml
# self.to_s
# end
#
# # alias for path
# def xpath
# self.path
# end
#
# def find_with_default_ns(xpath_expr, namespace=nil)
# find_base(xpath_expr, namespace || default_namespaces)
# end
#
# def find_first_with_default_ns(xpath_expr, namespace=nil)
# find_first_base(xpath_expr, namespace || default_namespaces)
# end
#
## alias_method :find_base, :find unless method_defined?(:find_base)
## alias_method :find, :find_with_default_ns
## alias_method :find_first_base, :find_first unless method_defined?(:find_first_base)
## alias_method :find_first, :find_first_with_default_ns
## alias :child? :first?
## alias :children? :first?
## alias :child :first
# end
# end
#end
|