/*
 * call-seq:
 *  node_set
 *
 * Fetch the node set associated with this xpath context.
 */
static VALUE node_set(VALUE self)
{
  xmlXPathObjectPtr xpath;
  Data_Get_Struct(self, xmlXPathObject, xpath);

  VALUE node_set = Qnil;

  if (xpath->nodesetval)
    node_set = Nokogiri_wrap_xml_node_set(xpath->nodesetval);

  if(Qnil == node_set)
    node_set = Nokogiri_wrap_xml_node_set(xmlXPathNodeSetCreate(NULL));

  rb_funcall(node_set, rb_intern("document="), 1, rb_iv_get(self, "@document"));

  return node_set;
}