// ProcessingInstruction createProcessingInstruction(in DOMString target,in DOMString data) raises(DOMException); static void _createProcessingInstruction(Request& r, MethodParams& params) { xmlChar* target=as_xmlchar(r, params, 0, XML_DATA_MUST_BE_STRING); xmlChar* data=as_xmlchar(r, params, 1, XML_DATA_MUST_BE_STRING); VXdoc& vdoc=GET_SELF(r, VXdoc); xmlDoc& xmldoc=vdoc.get_xmldoc(); xmlNode *node=xmlNewDocPI(&xmldoc, target, data); writeNode(r, vdoc, node); }
xmlNode* child_node_list::create_instruction_(const std::string& target, const std::string& value) { xmlNode* px = xmlNewDocPI( raw_->doc, detail::to_xml_chars(target.c_str()), detail::to_xml_chars(value.c_str()) ); if (px == 0) { std::string what = "fail to create libxml2 PI node for " + target; throw internal_dom_error(what); } else { return px; } }
Node * Document::AddProcessingInstruction(const ePub3::string &name, const ePub3::string &content, bool beforeRoot) { return AddNode(Wrapped<Node, _xmlNode>(xmlNewDocPI(xml(), name.utf8(), content.utf8())), beforeRoot); }