Skip to content

Commit 2925d57

Browse files
committed
Better type safety of enums
Inspired by #11049: Modernized the usage of enum class for better type safety.
1 parent 9d9d9f7 commit 2925d57

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

48 files changed

+574
-573
lines changed

src/classdef.cpp

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -951,25 +951,25 @@ void ClassDefImpl::internalInsertMember(MemberDef *md,
951951
{
952952
switch (md->memberType())
953953
{
954-
case MemberType_Service: // UNO IDL
954+
case MemberType::Service: // UNO IDL
955955
addMemberToList(MemberListType::Services(),md,TRUE);
956956
break;
957-
case MemberType_Interface: // UNO IDL
957+
case MemberType::Interface: // UNO IDL
958958
addMemberToList(MemberListType::Interfaces(),md,TRUE);
959959
break;
960-
case MemberType_Signal: // Qt specific
960+
case MemberType::Signal: // Qt specific
961961
addMemberToList(MemberListType::Signals(),md,TRUE);
962962
break;
963-
case MemberType_DCOP: // KDE2 specific
963+
case MemberType::DCOP: // KDE2 specific
964964
addMemberToList(MemberListType::DcopMethods(),md,TRUE);
965965
break;
966-
case MemberType_Property:
966+
case MemberType::Property:
967967
addMemberToList(MemberListType::Properties(),md,TRUE);
968968
break;
969-
case MemberType_Event:
969+
case MemberType::Event:
970970
addMemberToList(MemberListType::Events(),md,TRUE);
971971
break;
972-
case MemberType_Slot: // Qt specific
972+
case MemberType::Slot: // Qt specific
973973
switch (prot)
974974
{
975975
case Protection::Protected:
@@ -1112,23 +1112,23 @@ void ClassDefImpl::internalInsertMember(MemberDef *md,
11121112
{
11131113
switch (md->memberType())
11141114
{
1115-
case MemberType_Service: // UNO IDL
1115+
case MemberType::Service: // UNO IDL
11161116
addMemberToList(MemberListType::ServiceMembers(),md,FALSE);
11171117
break;
1118-
case MemberType_Interface: // UNO IDL
1118+
case MemberType::Interface: // UNO IDL
11191119
addMemberToList(MemberListType::InterfaceMembers(),md,FALSE);
11201120
break;
1121-
case MemberType_Property:
1121+
case MemberType::Property:
11221122
addMemberToList(MemberListType::PropertyMembers(),md,FALSE);
11231123
break;
1124-
case MemberType_Event:
1124+
case MemberType::Event:
11251125
addMemberToList(MemberListType::EventMembers(),md,FALSE);
11261126
break;
1127-
case MemberType_Signal: // fall through
1128-
case MemberType_DCOP:
1127+
case MemberType::Signal: // fall through
1128+
case MemberType::DCOP:
11291129
addMemberToList(MemberListType::FunctionMembers(),md,FALSE);
11301130
break;
1131-
case MemberType_Slot:
1131+
case MemberType::Slot:
11321132
if (protectionLevelVisible(prot))
11331133
{
11341134
addMemberToList(MemberListType::FunctionMembers(),md,FALSE);
@@ -1139,16 +1139,16 @@ void ClassDefImpl::internalInsertMember(MemberDef *md,
11391139
{
11401140
switch (md->memberType())
11411141
{
1142-
case MemberType_Typedef:
1142+
case MemberType::Typedef:
11431143
addMemberToList(MemberListType::TypedefMembers(),md,FALSE);
11441144
break;
1145-
case MemberType_Enumeration:
1145+
case MemberType::Enumeration:
11461146
addMemberToList(MemberListType::EnumMembers(),md,FALSE);
11471147
break;
1148-
case MemberType_EnumValue:
1148+
case MemberType::EnumValue:
11491149
addMemberToList(MemberListType::EnumValMembers(),md,FALSE);
11501150
break;
1151-
case MemberType_Function:
1151+
case MemberType::Function:
11521152
if (md->isConstructor() || md->isDestructor())
11531153
{
11541154
m_impl->memberLists.get(MemberListType::Constructors(),MemberListContainer::Class)->push_back(md);
@@ -1158,15 +1158,15 @@ void ClassDefImpl::internalInsertMember(MemberDef *md,
11581158
addMemberToList(MemberListType::FunctionMembers(),md,FALSE);
11591159
}
11601160
break;
1161-
case MemberType_Variable:
1161+
case MemberType::Variable:
11621162
addMemberToList(MemberListType::VariableMembers(),md,FALSE);
11631163
break;
1164-
case MemberType_Define:
1164+
case MemberType::Define:
11651165
warn(md->getDefFileName(),md->getDefLine()-1,"A define (%s) cannot be made a member of %s",
11661166
qPrint(md->name()), qPrint(this->name()));
11671167
break;
11681168
default:
1169-
err("Unexpected member type %d found!\n",md->memberType());
1169+
err("Unexpected member type '%s' found!\n",qPrint(md->memberTypeName()));
11701170
}
11711171
}
11721172
break;
@@ -1697,7 +1697,7 @@ void ClassDefImpl::writeInheritanceGraph(OutputList &ol) const
16971697
if (haveDot && (classGraph==CLASS_GRAPH_t::YES || classGraph==CLASS_GRAPH_t::GRAPH))
16981698
// write class diagram using dot
16991699
{
1700-
DotClassGraph inheritanceGraph(this,Inheritance);
1700+
DotClassGraph inheritanceGraph(this,GraphType::Inheritance);
17011701
if (inheritanceGraph.isTooBig())
17021702
{
17031703
warn_uncond("Inheritance graph for '%s' not generated, too many nodes (%d), threshold is %d. Consider increasing DOT_GRAPH_MAX_NODES.\n",
@@ -1823,7 +1823,7 @@ void ClassDefImpl::writeCollaborationGraph(OutputList &ol) const
18231823
{
18241824
if (Config_getBool(HAVE_DOT) && m_impl->hasCollaborationGraph /*&& Config_getBool(COLLABORATION_GRAPH)*/)
18251825
{
1826-
DotClassGraph usageImplGraph(this,Collaboration);
1826+
DotClassGraph usageImplGraph(this,GraphType::Collaboration);
18271827
if (usageImplGraph.isTooBig())
18281828
{
18291829
warn_uncond("Collaboration graph for '%s' not generated, too many nodes (%d), threshold is %d. Consider increasing DOT_GRAPH_MAX_NODES.\n",

src/defgen.cpp

Lines changed: 23 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ static void generateDEFForMember(const MemberDef *md,
7474
// - source referenced by
7575
// - include code
7676

77-
if (md->memberType()==MemberType_EnumValue) return;
77+
if (md->memberType()==MemberType::EnumValue) return;
7878

7979
QCString scopeName;
8080
if (md->getClassDef())
@@ -91,22 +91,22 @@ static void generateDEFForMember(const MemberDef *md,
9191
bool isFunc=FALSE;
9292
switch (md->memberType())
9393
{
94-
case MemberType_Define: memType="define"; break;
95-
case MemberType_EnumValue: ASSERT(0); break;
96-
case MemberType_Property: memType="property"; break;
97-
case MemberType_Event: memType="event"; break;
98-
case MemberType_Variable: memType="variable"; break;
99-
case MemberType_Typedef: memType="typedef"; break;
100-
case MemberType_Enumeration: memType="enum"; break;
101-
case MemberType_Interface: memType="interface"; break;
102-
case MemberType_Service: memType="service"; break;
103-
case MemberType_Sequence: memType="sequence"; break;
104-
case MemberType_Dictionary: memType="dictionary"; break;
105-
case MemberType_Function: memType="function"; isFunc=TRUE; break;
106-
case MemberType_Signal: memType="signal"; isFunc=TRUE; break;
107-
case MemberType_Friend: memType="friend"; isFunc=TRUE; break;
108-
case MemberType_DCOP: memType="dcop"; isFunc=TRUE; break;
109-
case MemberType_Slot: memType="slot"; isFunc=TRUE; break;
94+
case MemberType::Define: memType="define"; break;
95+
case MemberType::EnumValue: ASSERT(0); break;
96+
case MemberType::Property: memType="property"; break;
97+
case MemberType::Event: memType="event"; break;
98+
case MemberType::Variable: memType="variable"; break;
99+
case MemberType::Typedef: memType="typedef"; break;
100+
case MemberType::Enumeration: memType="enum"; break;
101+
case MemberType::Interface: memType="interface"; break;
102+
case MemberType::Service: memType="service"; break;
103+
case MemberType::Sequence: memType="sequence"; break;
104+
case MemberType::Dictionary: memType="dictionary"; break;
105+
case MemberType::Function: memType="function"; isFunc=TRUE; break;
106+
case MemberType::Signal: memType="signal"; isFunc=TRUE; break;
107+
case MemberType::Friend: memType="friend"; isFunc=TRUE; break;
108+
case MemberType::DCOP: memType="dcop"; isFunc=TRUE; break;
109+
case MemberType::Slot: memType="slot"; isFunc=TRUE; break;
110110
}
111111

112112
t << memPrefix << "kind = '" << memType << "';\n";
@@ -132,8 +132,8 @@ static void generateDEFForMember(const MemberDef *md,
132132
case Protection::Package: t << "package;\n"; break;
133133
}
134134

135-
if (md->memberType()!=MemberType_Define &&
136-
md->memberType()!=MemberType_Enumeration
135+
if (md->memberType()!=MemberType::Define &&
136+
md->memberType()!=MemberType::Enumeration
137137
)
138138
{
139139
QCString typeStr = replaceAnonymousScopes(md->typeString());
@@ -196,7 +196,7 @@ static void generateDEFForMember(const MemberDef *md,
196196
t << " }; /*" << fcnPrefix << "-param */\n";
197197
}
198198
}
199-
else if ( md->memberType()==MemberType_Define
199+
else if ( md->memberType()==MemberType::Define
200200
&& md->argsString()!=nullptr)
201201
{
202202
QCString defPrefix = " " + memPrefix + "def-";
@@ -214,7 +214,7 @@ static void generateDEFForMember(const MemberDef *md,
214214
<< md->initializer() << "\n_EnD_oF_dEf_TeXt_;\n";
215215
}
216216
// TODO: exceptions, const volatile
217-
if (md->memberType()==MemberType_Enumeration) // enum
217+
if (md->memberType()==MemberType::Enumeration) // enum
218218
{
219219
for (const auto &emd : md->enumFieldList())
220220
{
@@ -429,14 +429,14 @@ static void generateDEFForClass(const ClassDef *cd,TextStream &t)
429429
t << " cp-documentation = <<_EnD_oF_dEf_TeXt_\n"
430430
<< cd->documentation() << "\n_EnD_oF_dEf_TeXt_;\n";
431431

432-
DotClassGraph inheritanceGraph(cd,Inheritance);
432+
DotClassGraph inheritanceGraph(cd,GraphType::Inheritance);
433433
if (!inheritanceGraph.isTrivial())
434434
{
435435
t << " cp-inheritancegraph = <<_EnD_oF_dEf_TeXt_\n";
436436
inheritanceGraph.writeDEF(t);
437437
t << "\n_EnD_oF_dEf_TeXt_;\n";
438438
}
439-
DotClassGraph collaborationGraph(cd,Collaboration);
439+
DotClassGraph collaborationGraph(cd,GraphType::Collaboration);
440440
if (!collaborationGraph.isTrivial())
441441
{
442442
t << " cp-collaborationgraph = <<_EnD_oF_dEf_TeXt_\n";

src/definition.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1092,7 +1092,7 @@ void DefinitionImpl::writeInlineCode(OutputList &ol,const QCString &scopeName) c
10921092
{
10931093
ol.pushGeneratorState();
10941094
QCString codeFragment;
1095-
bool isMacro = thisMd && thisMd->memberType()==MemberType_Define;
1095+
bool isMacro = thisMd && thisMd->memberType()==MemberType::Define;
10961096
int actualStart=m_impl->body->startLine,actualEnd=m_impl->body->endLine;
10971097
if (readCodeFragment(m_impl->body->fileDef->absFilePath(),isMacro,
10981098
actualStart,actualEnd,codeFragment)

src/dia.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ void writeDiaGraphFromFile(const QCString &inFile,const QCString &outDir,
4040
QCString diaArgs;
4141
QCString extension;
4242
diaArgs+="-n ";
43-
if (format==DIA_BITMAP)
43+
if (format==DiaOutputFormat::BITMAP)
4444
{
4545
diaArgs+="-t png-libart";
4646
extension=".png";
4747
}
48-
else if (format==DIA_EPS)
48+
else if (format==DiaOutputFormat::EPS)
4949
{
5050
diaArgs+="-t eps";
5151
extension=".eps";
@@ -66,7 +66,7 @@ void writeDiaGraphFromFile(const QCString &inFile,const QCString &outDir,
6666
qPrint(diaExe),qPrint(inFile));
6767
goto error;
6868
}
69-
if ( (format==DIA_EPS) && (Config_getBool(USE_PDFLATEX)) )
69+
if ( (format==DiaOutputFormat::EPS) && (Config_getBool(USE_PDFLATEX)) )
7070
{
7171
QCString epstopdfArgs(maxCmdLine, QCString::ExplicitSize);
7272
epstopdfArgs.sprintf("\"%s.eps\" --outfile=\"%s.pdf\"",

src/dia.h

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@
2020

2121
class QCString;
2222

23-
enum DiaOutputFormat { DIA_BITMAP , DIA_EPS };
23+
enum class DiaOutputFormat { BITMAP , EPS };
24+
2425

2526
void writeDiaGraphFromFile(const QCString &inFile,const QCString &outDir,
2627
const QCString &outFile,DiaOutputFormat format,

src/docbookgen.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1254,7 +1254,7 @@ DB_GEN_C
12541254
void DocbookGenerator::endGroupCollaboration(DotGroupCollaboration &g)
12551255
{
12561256
DB_GEN_C
1257-
g.writeGraph(m_t,GOF_BITMAP,EOF_DocBook,dir(),fileName(),relPath,FALSE);
1257+
g.writeGraph(m_t,GraphOutputFormat::BITMAP,EmbeddedOutputFormat::DocBook,dir(),fileName(),relPath,FALSE);
12581258
}
12591259
void DocbookGenerator::startDotGraph()
12601260
{
@@ -1263,7 +1263,7 @@ DB_GEN_C
12631263
void DocbookGenerator::endDotGraph(DotClassGraph &g)
12641264
{
12651265
DB_GEN_C
1266-
g.writeGraph(m_t,GOF_BITMAP,EOF_DocBook,dir(),fileName(),relPath,TRUE,FALSE);
1266+
g.writeGraph(m_t,GraphOutputFormat::BITMAP,EmbeddedOutputFormat::DocBook,dir(),fileName(),relPath,TRUE,FALSE);
12671267
}
12681268
void DocbookGenerator::startInclDepGraph()
12691269
{
@@ -1272,7 +1272,7 @@ DB_GEN_C
12721272
void DocbookGenerator::endInclDepGraph(DotInclDepGraph &g)
12731273
{
12741274
DB_GEN_C
1275-
QCString fn = g.writeGraph(m_t,GOF_BITMAP,EOF_DocBook,dir(),fileName(),relPath,FALSE);
1275+
QCString fn = g.writeGraph(m_t,GraphOutputFormat::BITMAP,EmbeddedOutputFormat::DocBook,dir(),fileName(),relPath,FALSE);
12761276
}
12771277
void DocbookGenerator::startCallGraph()
12781278
{
@@ -1281,7 +1281,7 @@ DB_GEN_C
12811281
void DocbookGenerator::endCallGraph(DotCallGraph &g)
12821282
{
12831283
DB_GEN_C
1284-
QCString fn = g.writeGraph(m_t,GOF_BITMAP,EOF_DocBook,dir(),fileName(),relPath,FALSE);
1284+
QCString fn = g.writeGraph(m_t,GraphOutputFormat::BITMAP,EmbeddedOutputFormat::DocBook,dir(),fileName(),relPath,FALSE);
12851285
}
12861286
void DocbookGenerator::startDirDepGraph()
12871287
{
@@ -1290,7 +1290,7 @@ DB_GEN_C
12901290
void DocbookGenerator::endDirDepGraph(DotDirDeps &g)
12911291
{
12921292
DB_GEN_C
1293-
QCString fn = g.writeGraph(m_t,GOF_BITMAP,EOF_DocBook,dir(),fileName(),relPath,FALSE);
1293+
QCString fn = g.writeGraph(m_t,GraphOutputFormat::BITMAP,EmbeddedOutputFormat::DocBook,dir(),fileName(),relPath,FALSE);
12941294
}
12951295
void DocbookGenerator::startMemberDocList()
12961296
{

src/docbookvisitor.cpp

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1515,7 +1515,7 @@ void DocbookDocVisitor::writeMscFile(const QCString &baseName, const DocVerbatim
15151515
DB_VIS_C
15161516
QCString shortName = makeShortName(baseName);
15171517
QCString outDir = Config_getString(DOCBOOK_OUTPUT);
1518-
writeMscGraphFromFile(baseName+".msc",outDir,shortName,MSC_BITMAP,s.srcFile(),s.srcLine());
1518+
writeMscGraphFromFile(baseName+".msc",outDir,shortName,MscOutputFormat::BITMAP,s.srcFile(),s.srcLine());
15191519
visitPreStart(m_t, s.children(), s.hasCaption(), s.relPath() + shortName + ".png", s.width(), s.height());
15201520
visitCaption(s.children());
15211521
visitPostEnd(m_t, s.hasCaption());
@@ -1545,7 +1545,7 @@ DB_VIS_C
15451545
QCString baseName=makeBaseName(fileName);
15461546
baseName.prepend("msc_");
15471547
QCString outDir = Config_getString(DOCBOOK_OUTPUT);
1548-
writeMscGraphFromFile(fileName,outDir,baseName,MSC_BITMAP,srcFile,srcLine);
1548+
writeMscGraphFromFile(fileName,outDir,baseName,MscOutputFormat::BITMAP,srcFile,srcLine);
15491549
m_t << "<para>\n";
15501550
visitPreStart(m_t, children, hasCaption, baseName + ".png", width, height);
15511551
}
@@ -1563,7 +1563,7 @@ void DocbookDocVisitor::writeDiaFile(const QCString &baseName, const DocVerbatim
15631563
DB_VIS_C
15641564
QCString shortName = makeShortName(baseName);
15651565
QCString outDir = Config_getString(DOCBOOK_OUTPUT);
1566-
writeDiaGraphFromFile(baseName+".dia",outDir,shortName,DIA_BITMAP,s.srcFile(),s.srcLine());
1566+
writeDiaGraphFromFile(baseName+".dia",outDir,shortName,DiaOutputFormat::BITMAP,s.srcFile(),s.srcLine());
15671567
visitPreStart(m_t, s.children(), s.hasCaption(), shortName, s.width(),s.height());
15681568
visitCaption(s.children());
15691569
visitPostEnd(m_t, s.hasCaption());
@@ -1582,7 +1582,7 @@ DB_VIS_C
15821582
QCString baseName=makeBaseName(fileName);
15831583
baseName.prepend("dia_");
15841584
QCString outDir = Config_getString(DOCBOOK_OUTPUT);
1585-
writeDiaGraphFromFile(fileName,outDir,baseName,DIA_BITMAP,srcFile,srcLine);
1585+
writeDiaGraphFromFile(fileName,outDir,baseName,DiaOutputFormat::BITMAP,srcFile,srcLine);
15861586
m_t << "<para>\n";
15871587
visitPreStart(m_t, children, hasCaption, baseName + ".png", width, height);
15881588
}
@@ -1600,7 +1600,7 @@ void DocbookDocVisitor::writeDotFile(const QCString &baseName, const DocVerbatim
16001600
DB_VIS_C
16011601
QCString shortName = makeShortName(baseName);
16021602
QCString outDir = Config_getString(DOCBOOK_OUTPUT);
1603-
writeDotGraphFromFile(baseName+".dot",outDir,shortName,GOF_BITMAP,s.srcFile(),s.srcLine());
1603+
writeDotGraphFromFile(baseName+".dot",outDir,shortName,GraphOutputFormat::BITMAP,s.srcFile(),s.srcLine());
16041604
visitPreStart(m_t, s.children(), s.hasCaption(), s.relPath() + shortName + "." + getDotImageExtension(), s.width(),s.height());
16051605
visitCaption(s.children());
16061606
visitPostEnd(m_t, s.hasCaption());
@@ -1620,7 +1620,7 @@ DB_VIS_C
16201620
baseName.prepend("dot_");
16211621
QCString outDir = Config_getString(DOCBOOK_OUTPUT);
16221622
QCString imgExt = getDotImageExtension();
1623-
writeDotGraphFromFile(fileName,outDir,baseName,GOF_BITMAP,srcFile,srcLine);
1623+
writeDotGraphFromFile(fileName,outDir,baseName,GraphOutputFormat::BITMAP,srcFile,srcLine);
16241624
m_t << "<para>\n";
16251625
visitPreStart(m_t, children, hasCaption, baseName + "." + imgExt, width, height);
16261626
}

0 commit comments

Comments
 (0)