Module: Wakizashi::Document::CreationMethods

Includes:
Options
Included in:
GDataXMLDocument
Defined in:
lib/wakizashi/xml_document.rb

Constant Summary

Constants included from Options

Options::DEFAULT_HTML_OPTIONS, Options::DEFAULT_XML_OPTIONS, Options::HTML_PARSE_COMPACT, Options::HTML_PARSE_IGNORE_ENC, Options::HTML_PARSE_NOBLANKS, Options::HTML_PARSE_NODEFDTD, Options::HTML_PARSE_NOERROR, Options::HTML_PARSE_NOIMPLIED, Options::HTML_PARSE_NONET, Options::HTML_PARSE_NOWARNING, Options::HTML_PARSE_OPTIONS, Options::HTML_PARSE_PEDANTIC, Options::HTML_PARSE_RECOVER, Options::XML_PARSE_COMPACT, Options::XML_PARSE_DTDATTR, Options::XML_PARSE_DTDLOAD, Options::XML_PARSE_DTDVALID, Options::XML_PARSE_HUGE, Options::XML_PARSE_IGNORE_ENC, Options::XML_PARSE_NOBASEFIX, Options::XML_PARSE_NOBLANKS, Options::XML_PARSE_NOCDATA, Options::XML_PARSE_NODICT, Options::XML_PARSE_NOENT, Options::XML_PARSE_NOERROR, Options::XML_PARSE_NONET, Options::XML_PARSE_NOWARNING, Options::XML_PARSE_NOXINCNODE, Options::XML_PARSE_NSCLEAN, Options::XML_PARSE_OLD10, Options::XML_PARSE_OLDSAX, Options::XML_PARSE_OPTIONS, Options::XML_PARSE_PEDANTIC, Options::XML_PARSE_RECOVER, Options::XML_PARSE_SAX1, Options::XML_PARSE_XINCLUDE

Instance Method Summary collapse

Instance Method Details

#with_html(html, *options) ⇒ Object



81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
# File 'lib/wakizashi/xml_document.rb', line 81

def with_html(html, *options)
  if options.size == 1 && options[0].is_a?(Fixnum)
    options_mask = options[0]
  else
    options = DEFAULT_HTML_OPTIONS if options.size == 0
    options_mask = option_to_mask(options, HTML_PARSE_OPTIONS)
  end
  error_ptr = Pointer.new(:id)
  if html.is_a?(NSData)
    elem = self.alloc.initWithHTMLData(html, error:error_ptr)
  else
    elem = self.alloc.initWithHTMLString(html, error:error_ptr)
  end
  raise Wakizashi::ParseError, error_ptr[0].description if error_ptr[0]
  elem
end

#with_xml(xml, *options) ⇒ Object



98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
# File 'lib/wakizashi/xml_document.rb', line 98

def with_xml(xml, *options)
  if options.size == 1 && options[0].is_a?(Fixnum)
    options_mask = options[0]
  else
    options = DEFAULT_XML_OPTIONS if options.size == 0
    options_mask = option_to_mask(options, XML_PARSE_OPTIONS)
  end
  error_ptr = Pointer.new(:id)
  if xml.is_a?(NSData)
    elem = self.alloc.initWithData(xml, error:error_ptr)
  else
    elem = self.alloc.initWithXMLString(xml, error:error_ptr)
  end
  raise Wakizashi::ParseError, error_ptr[0].description if error_ptr[0]
  elem
end