diff options
author | Dimitri van Heesch <doxygen@gmail.com> | 2020-04-27 07:21:21 (GMT) |
---|---|---|
committer | Dimitri van Heesch <doxygen@gmail.com> | 2020-04-27 07:21:21 (GMT) |
commit | 6f7443e86a2b6633fafeba5e8baa0941c22c757d (patch) | |
tree | 5a4d269570b40e3ab12d0733a44f04175fb79e7f /src/membername.h | |
parent | 30f8609975062896b0cd43b739310ab8d667ea82 (diff) | |
download | Doxygen-6f7443e86a2b6633fafeba5e8baa0941c22c757d.zip Doxygen-6f7443e86a2b6633fafeba5e8baa0941c22c757d.tar.gz Doxygen-6f7443e86a2b6633fafeba5e8baa0941c22c757d.tar.bz2 |
Refactoring: Improve encapsulation of MemberInfo class
Diffstat (limited to 'src/membername.h')
-rw-r--r-- | src/membername.h | 40 |
1 files changed, 29 insertions, 11 deletions
diff --git a/src/membername.h b/src/membername.h index 8d0ad7c..aa2ce5f 100644 --- a/src/membername.h +++ b/src/membername.h @@ -63,18 +63,36 @@ class MemberNameLinkedMap : public LinkedMap<MemberName> }; /** Data associated with a MemberDef in an inheritance relation. */ -struct MemberInfo +class MemberInfo { - MemberInfo(MemberDef *md,Protection p,Specifier v,bool inh) : - memberDef(md), prot(p), virt(v), inherited(inh), ambigClass(0) {} - ~MemberInfo() {} - MemberDef *memberDef; - Protection prot; - Specifier virt; - bool inherited; - QCString scopePath; - QCString ambiguityResolutionScope; - ClassDef *ambigClass; + public: + MemberInfo(MemberDef *md,Protection p,Specifier v,bool inh) : + m_memberDef(md), m_prot(p), m_virt(v), m_inherited(inh) {} + ~MemberInfo() {} + + // getters + MemberDef *memberDef() { return m_memberDef; } + const MemberDef *memberDef() const { return m_memberDef; } + Protection prot() const { return m_prot; } + Specifier virt() const { return m_virt; } + bool inherited() const { return m_inherited; } + QCString scopePath() const { return m_scopePath; } + QCString ambiguityResolutionScope() const { return m_ambiguityResolutionScope; } + const ClassDef *ambigClass() const { return m_ambigClass; } + + // setters + void setAmbiguityResolutionScope(const QCString &s) { m_ambiguityResolutionScope = s; } + void setScopePath(const QCString &s) { m_scopePath = s; } + void setAmbigClass(const ClassDef *cd) { m_ambigClass = cd; } + + private: + MemberDef *m_memberDef; + Protection m_prot; + Specifier m_virt; + bool m_inherited; + QCString m_scopePath; + QCString m_ambiguityResolutionScope; + const ClassDef *m_ambigClass = 0; }; /** Class representing all MemberInfo objects with the same name */ |