From: sgunderson@bigfoot.com <> Date: Fri, 23 Sep 2011 21:49:02 +0000 (+0200) Subject: In php5-swig, add a function to process a preparsed DOM node. X-Git-Url: https://git.sesse.net/?p=xml-template;a=commitdiff_plain;h=37f811afb43c0b02acd519c530adb404c145d67d In php5-swig, add a function to process a preparsed DOM node. --- diff --git a/php5-swig/xml-template.swig b/php5-swig/xml-template.swig index 9c59ff8..5175951 100644 --- a/php5-swig/xml-template.swig +++ b/php5-swig/xml-template.swig @@ -95,6 +95,14 @@ XmlDocPtrWrapper XML_Template_process_file(const std::string &input_filename, Di return XmlDocPtrWrapper(new XmlDocWrapper { ret }); } +XmlDocPtrWrapper XML_Template_process(XmlDocPtrWrapper doc, Directive *root_directive, bool clean) +{ + xmlDocPtr new_doc = xmlCopyDoc(doc->ptr, 1); + root_directive->process(xmlDocGetRootElement(new_doc), clean); + delete root_directive; + return XmlDocPtrWrapper(new XmlDocWrapper { new_doc }); +} + namespace { int write_to_string(void *context, const char *buffer, int len) @@ -126,5 +134,6 @@ std::string XML_Template_convert_doc_to_string(XmlDocPtrWrapper doc) } XmlDocPtrWrapper XML_Template_process_file(const std::string &input_filename, Directive *root_directive, bool clean); +XmlDocPtrWrapper XML_Template_process(XmlDocPtrWrapper doc, Directive *root_directive, bool clean); std::string XML_Template_convert_doc_to_string(XmlDocPtrWrapper doc);