]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
common/snap_types: un-inline methods to reduce header dependencies
authorMax Kellermann <max.kellermann@ionos.com>
Fri, 25 Oct 2024 06:23:32 +0000 (08:23 +0200)
committerMax Kellermann <max.kellermann@ionos.com>
Tue, 5 Aug 2025 08:28:01 +0000 (10:28 +0200)
Signed-off-by: Max Kellermann <max.kellermann@ionos.com>
src/common/snap_types.cc
src/common/snap_types.h

index dc634907b8ae61921bcfcc3eaaeaf16a8591052c..93c85f4c5c80aa92743fae672b8180b378d0c06c 100644 (file)
@@ -3,6 +3,7 @@
 
 #include "snap_types.h"
 #include "common/Formatter.h"
+#include "include/types.h" // for the ceph_mds_snap_realm encoder
 
 void SnapRealmInfo::encode(ceph::buffer::list& bl) const
 {
@@ -116,6 +117,18 @@ bool SnapContext::is_valid() const
   return true;
 }
 
+void SnapContext::encode(ceph::buffer::list& bl) const {
+  using ceph::encode;
+  encode(seq, bl);
+  encode(snaps, bl);
+}
+
+void SnapContext::decode(ceph::buffer::list::const_iterator& bl) {
+  using ceph::decode;
+  decode(seq, bl);
+  decode(snaps, bl);
+}
+
 void SnapContext::dump(ceph::Formatter *f) const
 {
   f->dump_unsigned("seq", seq);
@@ -135,3 +148,7 @@ void SnapContext::generate_test_instances(std::list<SnapContext*>& o)
   v.push_back(1);
   o.push_back(new SnapContext(20, v));
 }
+
+std::ostream& operator<<(std::ostream& out, const SnapContext& snapc) {
+  return out << snapc.seq << "=" << snapc.snaps;
+}
index 45502f9fa129b45ae1e6aa95ce01869d1f0e0a21..8e432ec94b0a8b98a6c6c327806f2b03a47e3075 100644 (file)
@@ -2,7 +2,6 @@
 #define __CEPH_SNAP_TYPES_H
 
 #include "include/object.h" // for struct snapid_t
-#include "include/types.h" // for the ceph_mds_snap_realm encoder
 #include "include/utime.h"
 #include "include/fs_types.h" // for struct inodeno_t
 
@@ -91,24 +90,14 @@ struct SnapContext {
   }
   bool empty() const { return seq == 0; }
 
-  void encode(ceph::buffer::list& bl) const {
-    using ceph::encode;
-    encode(seq, bl);
-    encode(snaps, bl);
-  }
-  void decode(ceph::buffer::list::const_iterator& bl) {
-    using ceph::decode;
-    decode(seq, bl);
-    decode(snaps, bl);
-  }
+  void encode(ceph::buffer::list& bl) const;
+  void decode(ceph::buffer::list::const_iterator& bl);
   void dump(ceph::Formatter *f) const;
   static void generate_test_instances(std::list<SnapContext*>& o);
 };
 WRITE_CLASS_ENCODER(SnapContext)
 
-inline std::ostream& operator<<(std::ostream& out, const SnapContext& snapc) {
-  return out << snapc.seq << "=" << snapc.snaps;
-}
+std::ostream& operator<<(std::ostream& out, const SnapContext& snapc);
 
 #if FMT_VERSION >= 90000
 template <> struct fmt::formatter<SnapContext> : fmt::ostream_formatter {};