Skip to content

Commit 20cacf8

Browse files
committed
Refactoring: optimize FileDef::isDocumentationFile() method
1 parent 40869ce commit 20cacf8

File tree

1 file changed

+7
-5
lines changed

1 file changed

+7
-5
lines changed

src/filedef.cpp

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,8 @@
1515
*
1616
*/
1717

18+
#include <unordered_set>
19+
1820
#include "memberlist.h"
1921
#include "classlist.h"
2022
#include "filedef.h"
@@ -1510,11 +1512,11 @@ void FileDefImpl::combineUsingRelations()
15101512

15111513
bool FileDefImpl::isDocumentationFile() const
15121514
{
1513-
return name().right(4)==".doc" ||
1514-
name().right(4)==".txt" ||
1515-
name().right(4)==".dox" ||
1516-
name().right(3)==".md" ||
1517-
name().right(9)==".markdown" ||
1515+
static const std::unordered_set<std::string> docExtensions =
1516+
{ "doc", "txt", "dox", "md", "markdown" };
1517+
1518+
int lastDot = name().findRev('.');
1519+
return (lastDot!=-1 && docExtensions.find(name().mid(lastDot+1).str())!=docExtensions.end()) ||
15181520
getLanguageFromFileName(getFileNameExtension(name())) == SrcLangExt_Markdown;
15191521
}
15201522

0 commit comments

Comments
 (0)