Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members

serializers.h

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 #define S11N_DEFAULT_BASE_SERIALIZER s11n::io::base_serializer 00053 00054 #define SERIALIZER_TYPE S11N_DEFAULT_BASE_SERIALIZER 00055 #define SERIALIZER_BASE S11N_DEFAULT_BASE_SERIALIZER 00056 #define SERIALIZER_ABSTRACT 1 00057 #define SERIALIZER_NAME "s11n::io::data_node_serializer<s11n::data_node>" 00058 #include <s11n/reg_serializer.h> 00059 00060 00061 #define SERIALIZER_BASE S11N_DEFAULT_BASE_SERIALIZER 00062 #define SERIALIZER_TYPE s11n::io::compact_serializer<s11n::data_node > 00063 #define SERIALIZER_NAME "s11n::io::compact_serializer<s11n::data_node>" 00064 #define SERIALIZER_ALIAS "compact" 00065 #define SERIALIZER_MAGIC_COOKIE MAGIC_COOKIE_COMPACT 00066 #include <s11n/reg_serializer.h> 00067 00068 #define SERIALIZER_BASE S11N_DEFAULT_BASE_SERIALIZER 00069 #define SERIALIZER_TYPE s11n::io::funtxt_serializer< s11n::data_node > 00070 #define SERIALIZER_NAME "s11n::io::funtxt_serializer<s11n::data_node>" 00071 #define SERIALIZER_ALIAS "funtxt" 00072 #define SERIALIZER_MAGIC_COOKIE MAGIC_COOKIE_FUNTXT 00073 #include <s11n/reg_serializer.h> 00074 00075 #define SERIALIZER_BASE S11N_DEFAULT_BASE_SERIALIZER 00076 #define SERIALIZER_TYPE s11n::io::funxml_serializer< s11n::data_node > 00077 #define SERIALIZER_NAME "s11n::io::funxml_serializer<s11n::data_node>" 00078 #define SERIALIZER_ALIAS "funxml" 00079 #define SERIALIZER_MAGIC_COOKIE MAGIC_COOKIE_FUNXML 00080 #include <s11n/reg_serializer.h> 00081 00082 #define SERIALIZER_BASE S11N_DEFAULT_BASE_SERIALIZER 00083 #define SERIALIZER_TYPE s11n::io::parens_serializer< s11n::data_node > 00084 #define SERIALIZER_NAME "s11n::io::parens_serializer<s11n::data_node>" 00085 #define SERIALIZER_ALIAS "parens" 00086 #define SERIALIZER_MAGIC_COOKIE MAGIC_COOKIE_PARENS 00087 #include <s11n/reg_serializer.h> 00088 00089 #define SERIALIZER_BASE S11N_DEFAULT_BASE_SERIALIZER 00090 #define SERIALIZER_TYPE s11n::io::simplexml_serializer< s11n::data_node > 00091 #define SERIALIZER_NAME "s11n::io::simplexml_serializer<s11n::data_node>" 00092 #define SERIALIZER_ALIAS "simplexml" 00093 #define SERIALIZER_MAGIC_COOKIE MAGIC_COOKIE_SIMPLEXML 00094 #include <s11n/reg_serializer.h> 00095 00096 00097 00098 #undef S11N_DEFAULT_BASE_SERIALIZER 00099 #endif // s11n_SERIALIZERS_H_INCLUDED

Generated on Wed Jul 28 16:04:15 2004 for s11n by doxygen 1.3.7