Sha256: f174d5bc30c42ef4cd8eefc3da6fbbc558783752081d3f84ec6fd8653d9b4eb4

Contents?: true

Size: 1.82 KB

Versions: 22

Compression:

Stored size: 1.82 KB

Contents

## 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

Version data entries

22 entries across 22 versions & 3 rubygems

Version Path
libxml-ruby-r19mingw-1.1.4 lib/libxml/hpricot.rb
libxml-ruby-1.1.4 lib/libxml/hpricot.rb
libxml-ruby-1.1.4-x86-mswin32-60 lib/libxml/hpricot.rb
coupa-libxml-ruby-1.1.4 lib/libxml/hpricot.rb
libxml-ruby-0.9.6-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-0.9.6 lib/libxml/hpricot.rb
libxml-ruby-0.9.7 lib/libxml/hpricot.rb
libxml-ruby-0.9.7-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-1.0.0-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-1.1.0 lib/libxml/hpricot.rb
libxml-ruby-1.1.0-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-0.9.8-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-0.9.9 lib/libxml/hpricot.rb
libxml-ruby-0.9.9-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-1.0.0 lib/libxml/hpricot.rb
libxml-ruby-0.9.8 lib/libxml/hpricot.rb
libxml-ruby-1.1.2-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-1.1.3 lib/libxml/hpricot.rb
libxml-ruby-1.1.3-x86-mswin32-60 lib/libxml/hpricot.rb
libxml-ruby-1.1.1 lib/libxml/hpricot.rb