]> git.sesse.net Git - xml-template/blobdiff - c++0x/simple.cpp
Tweak C++0x API a bit, to prepare for include. Also, output to stdout instead of...
[xml-template] / c++0x / simple.cpp
index cfc504181d25584d906fb61b922918ca15152bc1..0c895426383497494e362f9f8ddadd90d4827989 100644 (file)
@@ -1,6 +1,4 @@
 #include <stdio.h>
-#include <string.h>
-#include <libxml/parser.h>
 
 #include "xml-template.h"
 
@@ -8,17 +6,12 @@ using namespace std;
 
 int main(int argc, char **argv)
 {
-       LIBXML_TEST_VERSION
+       Substitute master_directive = {
+               make_pair("title", new Replace("A very basic example")),
+               make_pair("#hello", new Replace("Hello world!")),
+       };
 
-       unordered_map<string, Directive*> master_map;
-       master_map.insert(make_pair("title", new Replace("A very basic example")));
-       master_map.insert(make_pair("#hello", new Replace("Hello world!")));
-
-       xmlDocPtr doc = xmlParseFile("../xml/simple.xml");
-       Substitute(master_map).process(xmlDocGetRootElement(doc), false);
-       xmlSaveFile(argv[1], doc);
-
-       xmlCleanupParser();
-       xmlMemoryDump();
+       xmlDocPtr doc = process_file("../xml/simple.xml", &master_directive);
+       output_to_fd_and_free(doc, 1);
        return(0);
 }