summaryrefslogtreecommitdiffstats
path: root/src/memberdef.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/memberdef.cpp')
-rw-r--r--src/memberdef.cpp18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/memberdef.cpp b/src/memberdef.cpp
index 303d8f3..69bcf9f 100644
--- a/src/memberdef.cpp
+++ b/src/memberdef.cpp
@@ -1114,12 +1114,6 @@ void MemberDef::writeDocumentation(MemberList *ml,OutputList &ol,
}
Specifier lvirt=virtualness();
- MemberDef *rmd=reimplements();
- while (rmd && lvirt==Normal)
- {
- lvirt = rmd->virtualness()==Normal ? Normal : Virtual;
- rmd = rmd->reimplements();
- }
if (protection()!=Public || lvirt!=Normal ||
isFriend() || isRelated() || isExplicit() ||
@@ -1725,3 +1719,15 @@ void MemberDef::setSectionList(Definition *d, MemberList *sl)
classSectionSDict->append((int)d,sl);
}
+Specifier MemberDef::virtualness() const
+{
+ Specifier v = virt;
+ MemberDef *rmd = reimplements();
+ while (rmd && v==Normal)
+ {
+ v = rmd->virtualness()==Normal ? Normal : Virtual;
+ rmd = rmd->reimplements();
+ }
+ return v;
+}
+