]> git.proxmox.com Git - ceph.git/blobdiff - ceph/src/boost/boost/spirit/home/support/utree/utree_traits.hpp
import new upstream nautilus stable release 14.2.8
[ceph.git] / ceph / src / boost / boost / spirit / home / support / utree / utree_traits.hpp
index 4f9f46f0261508fb1be981253e67462397177308..0e084780bea640795590173f1588deaf68ee2342 100644 (file)
@@ -1149,26 +1149,26 @@ namespace boost { namespace spirit { namespace traits
     template <>
     struct extract_from_container<utree, utf8_symbol_type>
     {
-        typedef std::string type;
+        typedef utf8_symbol_type type;
 
         template <typename Context>
         static type call(utree const& t, Context&)
         {
             utf8_symbol_range_type r = detail::get_or_deref<utf8_symbol_range_type>(t);
-            return std::string(traits::begin(r), traits::end(r));
+            return type(traits::begin(r), traits::end(r));
         }
     };
 
     template <>
     struct extract_from_container<utree, utf8_string_type>
     {
-        typedef std::string type;
+        typedef utf8_string_type type;
 
         template <typename Context>
         static type call(utree const& t, Context&)
         {
             utf8_string_range_type r = detail::get_or_deref<utf8_string_range_type>(t);
-            return std::string(traits::begin(r), traits::end(r));
+            return type(traits::begin(r), traits::end(r));
         }
     };
 
@@ -1264,24 +1264,24 @@ namespace boost { namespace spirit { namespace traits
     template <>
     struct transform_attribute<utree const, utf8_string_type, karma::domain>
     {
-        typedef std::string type;
+        typedef utf8_string_type type;
 
         static type pre(utree const& t)
         {
             utf8_string_range_type r = detail::get_or_deref<utf8_string_range_type>(t);
-            return std::string(traits::begin(r), traits::end(r));
+            return type(traits::begin(r), traits::end(r));
         }
     };
 
     template <>
     struct transform_attribute<utree const, utf8_symbol_type, karma::domain>
     {
-        typedef std::string type;
+        typedef utf8_symbol_type type;
 
         static type pre(utree const& t)
         {
             utf8_symbol_range_type r = detail::get_or_deref<utf8_symbol_range_type>(t);
-            return std::string(traits::begin(r), traits::end(r));
+            return type(traits::begin(r), traits::end(r));
         }
     };