From: stephan b. <sg...@us...> - 2004-12-28 15:51:28
|
Update of /cvsroot/pclasses/pclasses2/src/s11n/proxy In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1931 Modified Files: createRegSerTraits.sh Log Message: added -ios shortcut for iostreamables. Index: createRegSerTraits.sh =================================================================== RCS file: /cvsroot/pclasses/pclasses2/src/s11n/proxy/createRegSerTraits.sh,v retrieving revision 1.2 retrieving revision 1.3 diff -u -d -r1.2 -r1.3 --- createRegSerTraits.sh 28 Dec 2004 01:10:47 -0000 1.2 +++ createRegSerTraits.sh 28 Dec 2004 15:51:17 -0000 1.3 @@ -62,6 +62,10 @@ Like -list-ios, but for maps. Both key and value types must be i/ostreamable. + -ios + Like -list, but installs a proxy which works using + the i/ostream operators of SerializableClass. + EOF } # show_help() @@ -71,7 +75,7 @@ i_proxy_list_s='${o_sns}::list::streamable_list_serializable_proxy' i_proxy_map='${o_sns}::map::map_serializable_proxy' i_proxy_map_s='${o_sns}::map::streamable_map_serializable_proxy' - +i_proxy_s='${o_sns}::streamable_type_serialization_proxy' ############################## args parsing... while test x != "x$1"; do @@ -111,6 +115,10 @@ shift continue ;; + -ios) + : ${o_proxy="$(eval echo ${i_proxy_s})"} + continue + ;; -list) : ${o_proxy="$(eval echo ${i_proxy_list})"} continue @@ -147,6 +155,7 @@ : ${o_base=${o_class}} : ${o_reg_h="<pclasses/s11n/reg_serializable_traits.h>"} : ${o_show_help=0} +: ${o_macro_prefix=P} # prefix for registration macros. Use 'P' for P::s11n @@ -163,13 +172,16 @@ do_proxy_reg=1 +DEFP=${o_macro_prefix} +test ${o_sns} = "s11n" && DEFP="" # the s11n.net tree + test x1 = "x${do_proxy_reg}" && { # Note the use of HARD TABS in the <<-EOF!!! cat <<-EOF - #define PS11N_TYPE ${o_class} - #define PS11N_TYPE_NAME "${o_clname}" - #define PS11N_SERIALIZE_FUNCTOR ${o_proxy} + #define ${DEFP}S11N_TYPE ${o_class} + #define ${DEFP}S11N_TYPE_NAME "${o_clname}" + #define ${DEFP}S11N_SERIALIZE_FUNCTOR ${o_proxy} EOF test "${o_class}" != "${o_base}" && \ |