lmi-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[lmi-commits] [5498] Distinguish deserialized value type from std::strin


From: Greg Chicares
Subject: [lmi-commits] [5498] Distinguish deserialized value type from std::string
Date: Sat, 16 Jun 2012 21:50:28 +0000

Revision: 5498
          http://svn.sv.gnu.org/viewvc/?view=rev&root=lmi&revision=5498
Author:   chicares
Date:     2012-06-16 21:50:27 +0000 (Sat, 16 Jun 2012)
Log Message:
-----------
Distinguish deserialized value type from std::string

Modified Paths:
--------------
    lmi/trunk/xml_serializable.hpp
    lmi/trunk/xml_serializable.tpp

Modified: lmi/trunk/xml_serializable.hpp
===================================================================
--- lmi/trunk/xml_serializable.hpp      2012-06-16 12:10:18 UTC (rev 5497)
+++ lmi/trunk/xml_serializable.hpp      2012-06-16 21:50:27 UTC (rev 5498)
@@ -42,6 +42,9 @@
 template<typename T>
 class LMI_SO xml_serializable
 {
+    // For the nonce, value_type is guaranteed to be std::string.
+    typedef std::string value_type;
+
   public:
     virtual ~xml_serializable();
 
@@ -82,12 +85,12 @@
     virtual void redintegrate_ex_ante
         (int                file_version
         ,std::string const& name
-        ,std::string      & value
+        ,value_type       & value
         ) const;
     virtual void redintegrate_ex_post
-        (int                                       file_version
-        ,std::map<std::string, std::string> const& detritus_map
-        ,std::list<std::string>             const& residuary_names
+        (int                                     file_version
+        ,std::map<std::string,value_type> const& detritus_map
+        ,std::list<std::string>           const& residuary_names
         );
     virtual void redintegrate_ad_terminum();
 };

Modified: lmi/trunk/xml_serializable.tpp
===================================================================
--- lmi/trunk/xml_serializable.tpp      2012-06-16 12:10:18 UTC (rev 5497)
+++ lmi/trunk/xml_serializable.tpp      2012-06-16 21:50:27 UTC (rev 5498)
@@ -115,7 +115,7 @@
 
     std::ostringstream oss;
 
-    std::map<std::string, std::string> detritus_map;
+    std::map<std::string,value_type> detritus_map;
 
     std::list<std::string> residuary_names;
     std::copy
@@ -143,9 +143,10 @@
         else if(is_detritus(node_tag))
             {
             // Hold certain obsolete entities that must be translated.
-            std::string s = xml_lmi::get_content(*child);
-            redintegrate_ex_ante(file_version, node_tag, s);
-            detritus_map[node_tag] = s;
+            // For the nonce, value_type is guaranteed to be std::string.
+            value_type e = xml_lmi::get_content(*child);
+            redintegrate_ex_ante(file_version, node_tag, e);
+            detritus_map[node_tag] = e;
             }
         else
             {
@@ -243,6 +244,7 @@
     ,int                 file_version
     )
 {
+    // For the nonce, value_type is guaranteed to be std::string.
     std::string s = xml_lmi::get_content(e);
     redintegrate_ex_ante(file_version, name, s);
     t()[name] = s;
@@ -344,7 +346,7 @@
 void xml_serializable<T>::redintegrate_ex_ante
     (int                file_version
     ,std::string const& // name
-    ,std::string      & // value
+    ,value_type       & // value
     ) const
 {
     if(class_version() == file_version)
@@ -390,9 +392,9 @@
 
 template<typename T>
 void xml_serializable<T>::redintegrate_ex_post
-    (int                                       file_version
-    ,std::map<std::string, std::string> const& // detritus_map
-    ,std::list<std::string>             const& // residuary_names
+    (int                                     file_version
+    ,std::map<std::string,value_type> const& // detritus_map
+    ,std::list<std::string>           const& // residuary_names
     )
 {
     if(class_version() == file_version)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]