The Slop
decorator implements method missing such that a methods may be used instead of XPath or CSS
. See Nokogiri
.Slop
The default XPath search context for Slop
# File lib/nokogiri/decorators/slop.rb, line 12 def method_missing name, *args, &block if args.empty? list = xpath("#{XPATH_PREFIX}#{name.to_s.sub(/^_/, '')}") elsif args.first.is_a? Hash hash = args.first if hash[:css] list = css("#{name}#{hash[:css]}") elsif hash[:xpath] conds = Array(hash[:xpath]).join(' and ') list = xpath("#{XPATH_PREFIX}#{name}[#{conds}]") end else CSS::Parser.without_cache do list = xpath( *CSS.xpath_for("#{name}#{args.first}", :prefix => XPATH_PREFIX) ) end end super if list.empty? list.length == 1 ? list.first : list end
look for node with name
. See Nokogiri
.Slop
# File lib/nokogiri/decorators/slop.rb, line 35 def respond_to_missing? name, include_private = false list = xpath("#{XPATH_PREFIX}#{name.to_s.sub(/^_/, '')}") !list.empty? end
© 2008–2018 Aaron Patterson, Mike Dalessio, Charles Nutter, Sergio Arbeo,
Patrick Mahoney, Yoko Harada, Akinori MUSHA, John Shahid, Lars Kanis
Licensed under the MIT License.