From: Patrick Donnelly Date: Wed, 23 Jan 2019 01:04:31 +0000 (-0800) Subject: include/xlist: privatize item members X-Git-Tag: v14.1.0~279^2~1 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=f8335d78efa4275f1598311d7f9a17aadce1c87f;p=ceph.git include/xlist: privatize item members Signed-off-by: Patrick Donnelly --- diff --git a/src/include/xlist.h b/src/include/xlist.h index 69c6e1c640c0..2e18df2e1a70 100644 --- a/src/include/xlist.h +++ b/src/include/xlist.h @@ -24,21 +24,16 @@ template class xlist { public: - struct item { - T _item; - item *_prev, *_next; - xlist *_list; - - item(T i) : _item(i), _prev(0), _next(0), _list(0) {} + class item { + public: + item(T i) : _item(i) {} ~item() { ceph_assert(!is_on_list()); - //remove_myself(); } item(const item& other) = delete; const item& operator= (const item& right) = delete; - xlist* get_list() { return _list; } bool is_on_list() const { return _list ? true:false; } bool remove_myself() { @@ -57,6 +52,12 @@ public: ceph_assert(_list); _list->push_back(this); } + + private: + friend xlist; + T _item; + item *_prev = nullptr, *_next = nullptr; + xlist *_list = nullptr; }; typedef item* value_type;