diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2020-04-25 19:42:51 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2020-04-25 19:42:51 (GMT) |
commit | 9165a15b7ee8e9e8f1e50412b8dacebf77432ea1 (patch) | |
tree | 2681ae8f8060088361ef9ae7a1c28081b1895d4c /src | |
parent | 44a19079003d62fb600e8d952a2ea7b6b2b23d22 (diff) | |
download | Doxygen-9165a15b7ee8e9e8f1e50412b8dacebf77432ea1.zip Doxygen-9165a15b7ee8e9e8f1e50412b8dacebf77432ea1.tar.gz Doxygen-9165a15b7ee8e9e8f1e50412b8dacebf77432ea1.tar.bz2 |
Refactor: better encapsulation for MemberName
Diffstat (limited to 'src')
-rw-r--r-- | src/arguments.h | 2 | ||||
-rw-r--r-- | src/membername.h | 27 |
2 files changed, 28 insertions, 1 deletions
diff --git a/src/arguments.h b/src/arguments.h index 2da6cc9..491b582 100644 --- a/src/arguments.h +++ b/src/arguments.h @@ -87,6 +87,8 @@ class ArgumentList iterator end() { return m_args.end(); } const_iterator begin() const { return m_args.cbegin(); } const_iterator end() const { return m_args.cend(); } + const_iterator cbegin() const { return m_args.cbegin(); } + const_iterator cend() const { return m_args.cend(); } bool empty() const { return m_args.empty(); } int size() const { return m_args.size(); } void clear() { m_args.clear(); } diff --git a/src/membername.h b/src/membername.h index 4094132..8d0ad7c 100644 --- a/src/membername.h +++ b/src/membername.h @@ -23,13 +23,38 @@ #include "sortdict.h" #include "linkedmap.h" -class MemberName : public std::vector< std::unique_ptr<MemberDef> > +class MemberName { public: + using Ptr = std::unique_ptr<MemberDef>; + using Vec = std::vector<Ptr>; + using iterator = typename Vec::iterator; + using const_iterator = typename Vec::const_iterator; + using reverse_iterator = typename Vec::reverse_iterator; + using const_reverse_iterator = typename Vec::const_reverse_iterator; + MemberName(const char *name) : m_name(name) {} const char *memberName() const { return m_name; } + + iterator begin() { return m_members.begin(); } + iterator end() { return m_members.end(); } + const_iterator cbegin() const { return m_members.cbegin(); } + const_iterator cend() const { return m_members.cend(); } + reverse_iterator rbegin() { return m_members.rbegin(); } + reverse_iterator rend() { return m_members.rend(); } + const_reverse_iterator crbegin() const { return m_members.crbegin(); } + const_reverse_iterator crend() const { return m_members.crend(); } + bool empty() const { return m_members.empty(); } + int size() const { return m_members.size(); } + Ptr &back() { return m_members.back(); } + const Ptr &back() const { return m_members.back(); } + Ptr &front() { return m_members.front(); } + const Ptr &front() const { return m_members.front(); } + void push_back(Ptr &&p) { m_members.push_back(std::move(p)); } + private: QCString m_name; + Vec m_members; }; /** Ordered dictionary of MemberName objects. */ |