module Nokogiri::LibXML::XmlNodeSetMixin
def self.included(base)
def self.included(base) base.class_eval do layout( :nodeNr, :int, :nodeMax, :int, :nodeTab, :pointer ) end end
def document
def document p = self[:doc] p.null? ? nil : LibXML::XmlDocumentCast.new(p) end
def nodeAt(index)
def nodeAt(index) self[:nodeTab].get_pointer(LibXML.pointer_offset(index)) end
def nodeTab
def nodeTab self[:nodeTab].null? ? [] : self[:nodeTab].read_array_of_pointer(self[:nodeNr]) end
def nodeTab=(array)
def nodeTab=(array) # TODO: do we need to check nodeMax and allocate more memory? probably. self[:nodeTab].write_array_of_pointer(array) end