From 37f811afb43c0b02acd519c530adb404c145d67d Mon Sep 17 00:00:00 2001 From: "sgunderson@bigfoot.com" <> Date: Fri, 23 Sep 2011 23:49:02 +0200 Subject: [PATCH] In php5-swig, add a function to process a preparsed DOM node. --- php5-swig/xml-template.swig | 9 +++++++++ 1 file changed, 9 insertions(+) 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); -- 2.39.2