]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
include/denc: define value_type to avoid repeating the type
authorKefu Chai <kchai@redhat.com>
Fri, 24 Mar 2017 03:45:15 +0000 (11:45 +0800)
committerKefu Chai <kchai@redhat.com>
Fri, 24 Mar 2017 05:38:29 +0000 (13:38 +0800)
Signed-off-by: Kefu Chai <kchai@redhat.com>
src/include/denc.h

index d9350c530c7e8eafe9a0a0fa745af3117e8be915..350178085b89d420b529b54857dd548f882d8412 100644 (file)
@@ -524,21 +524,24 @@ inline typename std::enable_if<traits::supported &&
 //
 template<typename A>
 struct denc_traits<std::basic_string<char,std::char_traits<char>,A>> {
+private:
+  using value_type = std::basic_string<char,std::char_traits<char>,A>;
+
+public:
   static constexpr bool supported = true;
   static constexpr bool featured = false;
   static constexpr bool bounded = false;
-  static void bound_encode(const std::basic_string<char,
-                          std::char_traits<char>,A>& s, size_t& p,
-                          uint64_t f=0) {
+
+  static void bound_encode(const value_type& s, size_t& p, uint64_t f=0) {
     p += sizeof(uint32_t) + s.size();
   }
-  static void encode(const std::basic_string<char,std::char_traits<char>,A>& s,
+  static void encode(const value_type& s,
                     buffer::list::contiguous_appender& p,
              uint64_t f=0) {
     ::denc((uint32_t)s.size(), p);
     memcpy(p.get_pos_add(s.size()), s.data(), s.size());
   }
-  static void decode(std::basic_string<char,std::char_traits<char>,A>& s,
+  static void decode(value_type& s,
                     buffer::ptr::iterator& p,
                     uint64_t f=0) {
     uint32_t len;