class Nokogiri::XML::Node

def extract_params params # :nodoc:

:nodoc:
def extract_params params # :nodoc:
  # Pop off our custom function handler if it exists
  handler = params.find { |param|
    ![Hash, String, Symbol].include?(param.class)
  }
  params -= [handler] if handler
  hashes = []
  hashes << params.pop while Hash === params.last || params.last.nil?
  ns, binds = hashes.reverse
  ns ||= document.root ? document.root.namespaces : {}
  [params, handler, ns, binds]
end