]> git.sesse.net Git - xml-template/commitdiff
Add a C++0x attribute test. Does not pass yet.
authorsgunderson@bigfoot.com <>
Wed, 21 Sep 2011 22:18:58 +0000 (00:18 +0200)
committersgunderson@bigfoot.com <>
Wed, 21 Sep 2011 22:18:58 +0000 (00:18 +0200)
c++0x/Makefile
c++0x/attribute.cpp [new file with mode: 0644]

index 939c74828cb853beb0c401397c7140a6c8d6844d..ee41b660a1d5badeba31ae545166ed6c3ab4e61e 100644 (file)
@@ -11,3 +11,6 @@ simple: simple.o $(LIBS)
 
 clone: clone.o $(LIBS)
        $(CXX) -o $@ $< $(LIBS) $(LDFLAGS)
+
+attribute: attribute.o $(LIBS)
+       $(CXX) -o $@ $< $(LIBS) $(LDFLAGS)
diff --git a/c++0x/attribute.cpp b/c++0x/attribute.cpp
new file mode 100644 (file)
index 0000000..70b2391
--- /dev/null
@@ -0,0 +1,33 @@
+#include <stdio.h>
+
+#include "xml-template.h"
+
+using namespace std;
+
+int main(int argc, char **argv)
+{
+       Substitute master_directive = {
+               make_pair("color", new Replace("blue")),
+               make_pair("#things", new Clone {
+                       new Substitute {
+                               make_pair("li", new Replace("Raindrops on roses")),
+                               make_pair("li/class", new Replace("odd")),
+                       },
+                       new Substitute {
+                               make_pair("li", new Replace("Whiskers on kittens")),
+                               make_pair("li/class", new Replace("even")),
+                       },
+                       new Substitute {
+                               make_pair("li", new Replace("Bright copper kettles")),
+                               make_pair("li/class", new Replace("odd")),
+                       },
+                       new Substitute {
+                               make_pair("li", new Replace("Warm, woolen mittens")),
+                               make_pair("li/class", new Replace("even")),
+                       },
+               }),
+       };
+
+       process_file("../xml/clone.xml", argv[1], &master_directive);
+       return(0);
+}