00001 #ifndef s11n_SERIALIZERS_H_INCLUDED 00002 #define s11n_SERIALIZERS_H_INCLUDED 1 00003 00004 //////////////////////////////////////////////////////////////////////////////// 00005 // serializers.h 00006 // Includes headers for all serializers shipped with s11n. 00007 // Also handles classloader registration. 00008 // 00009 // License: Public Domain 00010 // Author: stephan@s11n.net 00011 //////////////////////////////////////////////////////////////////////////////// 00012 00013 //////////////////////////////////////////////////////////////////////////////// 00014 // The default serializers supported by s11n: 00015 #include "compact_serializer.h" // binary-like grammar 00016 #include "funxml_serializer.h" // robust-yet-simple XML grammar 00017 #include "funtxt_serializer.h" // almost-config-file-style grammar 00018 #include "parens_serializer.h" // compact lisp-like grammar 00019 #include "simplexml_serializer.h" // a simpler XML grammar 00020 //////////////////////////////////////////////////////////////////////////////// 00021 00022 00023 //////////////////////////////////////////////////////////////////////////////// 00024 #include "data_node.h"// reference node implementation. 00025 // data_node.h is ONLY here for purposes of registering 00026 // with the classloader for i/o default handlers, 00027 // not because have a specific dependency on the it. 00028 //////////////////////////////////////////////////////////////////////////////// 00029 00030 namespace s11n { 00031 struct data_node; 00032 namespace io { 00033 //////////////////////////////////////////////////// 00034 // export some friendly names. 00035 // And document them so doxygen won't bitch. :/ 00036 //////////////////////////////////////////////////// 00037 /** Short-form name of the base serializer type for s11n::data_node. */ 00038 typedef s11n::io::data_node_serializer<s11n::data_node> base_serializer; 00039 /** Short-form name of the compact_serializer for s11n::data_node. */ 00040 typedef s11n::io::compact_serializer<s11n::data_node> compact; 00041 /** Short-form name of the funtxt_serializer for s11n::data_node. */ 00042 typedef s11n::io::funtxt_serializer<s11n::data_node> funtxt; 00043 /** Short-form name of the funxml_serializer for s11n::data_node. */ 00044 typedef s11n::io::funxml_serializer<s11n::data_node> funxml; 00045 /** Short-form name of the parens_serializer for s11n::data_node. */ 00046 typedef s11n::io::parens_serializer<s11n::data_node> parens; 00047 /** Short-form name of the simplexml_serializer for s11n::data_node. */ 00048 typedef s11n::io::simplexml_serializer<s11n::data_node> simplexml; 00049 } 00050 } 00051 00052 #endif // s11n_SERIALIZERS_H_INCLUDED