module Nokogiri::LibXML::CommonNode

def document

def document
  p = self[:doc]
  p.null? ? nil : LibXML::XmlDocumentCast.new(p)
end

def keep_reference_from_document! # equivalent to NOKOGIRI_ROOT_NODE

equivalent to NOKOGIRI_ROOT_NODE
def keep_reference_from_document! # equivalent to NOKOGIRI_ROOT_NODE
  doc = self.document
  raise "no document to add reference to" unless doc
  LibXML.xmlXPathNodeSetAdd(doc.unlinked_nodes, self)
end

def ruby_node

def ruby_node
  self[:_private] != 0 ? ObjectSpace._id2ref(self[:_private]) : nil
end

def ruby_node= object

def ruby_node= object
  self[:_private] = object.object_id
end