summaryrefslogtreecommitdiffstats
path: root/src/memberdef.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/memberdef.cpp')
-rw-r--r--src/memberdef.cpp10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/memberdef.cpp b/src/memberdef.cpp
index dc5d095..af05535 100644
--- a/src/memberdef.cpp
+++ b/src/memberdef.cpp
@@ -138,6 +138,7 @@ class MemberDefImpl : public DefinitionMixin<MemberDefMutable>
virtual bool isRetain() const;
virtual bool isWeak() const;
virtual bool isStrong() const;
+ virtual bool isEnumStruct() const;
virtual bool isUnretained() const;
virtual bool isNew() const;
virtual bool isSealed() const;
@@ -547,6 +548,8 @@ class MemberDefAliasImpl : public DefinitionAliasMixin<MemberDef>
{ return getMdAlias()->isWeak(); }
virtual bool isStrong() const
{ return getMdAlias()->isStrong(); }
+ virtual bool isEnumStruct() const
+ { return getMdAlias()->isEnumStruct(); }
virtual bool isUnretained() const
{ return getMdAlias()->isUnretained(); }
virtual bool isNew() const
@@ -3201,6 +3204,8 @@ void MemberDefImpl::writeDocumentation(const MemberList *ml,
}
else
{
+ if (isEnumStruct()) ldef.prepend("struct ");
+ else if (isStrong()) ldef.prepend("class ");
ldef.prepend("enum ");
if (isSliceLocal())
{
@@ -5065,6 +5070,11 @@ bool MemberDefImpl::isStrong() const
return (m_impl->memSpec&Entry::Strong)!=0;
}
+bool MemberDefImpl::isEnumStruct() const
+{
+ return (m_impl->memSpec&Entry::EnumStruct)!=0;
+}
+
bool MemberDefImpl::isStrongEnumValue() const
{
return m_impl->mtype==MemberType_EnumValue &&