#include "xml-template.h"
#include <string.h>
+#include <libxml/parser.h>
using namespace std;
if (strcmp(reinterpret_cast<const char *>(attr->ns->href), "http://template.sesse.net/") == 0 &&
strcmp(reinterpret_cast<const char *>(attr->name), "id") == 0) {
id = reinterpret_cast<const char *>(xmlNodeGetContent(attr->children));
+
+ if (clean) {
+ if (attr->prev == NULL) {
+ child->properties = attr->next;
+ } else {
+ attr->prev->next = attr->next;
+ }
+ }
}
}
}
}
}
+
+void process_file(const string &input_filename,
+ const string &output_filename,
+ Directive *root_directive)
+{
+ LIBXML_TEST_VERSION
+
+ xmlDocPtr doc = xmlParseFile(input_filename.c_str());
+ root_directive->process(xmlDocGetRootElement(doc), true);
+ xmlSaveFile(output_filename.c_str(), doc);
+
+ xmlCleanupParser();
+ xmlMemoryDump();
+}