new file
This commit is contained in:
		
							
								
								
									
										42
									
								
								doc/examples/list_serialization.cxx
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										42
									
								
								doc/examples/list_serialization.cxx
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,42 @@ | ||||
| /*! @file | ||||
|  | ||||
|     @id $Id: inherit_serialization.cxx 26 2009-04-24 07:13:10Z  $ | ||||
| */ | ||||
| //       1         2         3         4         5         6         7         8 | ||||
| // 45678901234567890123456789012345678901234567890123456789012345678901234567890 | ||||
|  | ||||
| // g++ -I../../src ../../src/xml.cxx list_serialization.cxx | ||||
|  | ||||
| #include <xml-cxx/xml.hxx> | ||||
| #include <iostream> | ||||
| #include <sstream> | ||||
| #include <list> | ||||
|  | ||||
| class A: public xml::Serialize { | ||||
|   public: | ||||
|     std::list<std::string> list; | ||||
|   protected: | ||||
|     void initXmlMembers() { | ||||
|       className("A"); | ||||
|       persist(list, "list", "item"); | ||||
|     } | ||||
| }; | ||||
|  | ||||
| int main(int, char**) { | ||||
|   std::stringstream ss("<A>\n" | ||||
|                        "\t<list>\n" | ||||
|                        "\t\t<item>Hello</item>\n" | ||||
|                        "\t\t<item>World</item>\n" | ||||
|                        "\t\t<item>how</item>\n" | ||||
|                        "\t\t<item>are</item>\n" | ||||
|                        "\t\t<item>you</item>\n" | ||||
|                        "\t</list>\n" | ||||
|                        "</A>"); | ||||
|   A a; | ||||
|   std::cout<<"Schema:\n"<<a.schema()<<std::endl; | ||||
|   a.loadXml(ss); | ||||
|   if (a.list.front()=="Hello") a.list.front()="Good Bye"; | ||||
|   if (a.list.back()=="you") a.list.back()="we"; | ||||
|   a.saveXml(std::cout)<<std::endl; | ||||
|   return 0; | ||||
| } | ||||
		Reference in New Issue
	
	Block a user