summaryrefslogtreecommitdiffstats
path: root/src/docvisitor.cpp
diff options
context:
space:
mode:
authorDimitri van Heesch <doxygen@gmail.com>2021-01-16 20:14:16 (GMT)
committerDimitri van Heesch <doxygen@gmail.com>2021-01-22 20:45:20 (GMT)
commit302ea696fae93d7f05cf0f68ce3017cd8b7c4952 (patch)
tree7e2948659099ed832d32bfd494adaf3f158a3fd2 /src/docvisitor.cpp
parent31755d65806fda34a9b5f6b40dbfec54978d5b99 (diff)
downloadDoxygen-302ea696fae93d7f05cf0f68ce3017cd8b7c4952.zip
Doxygen-302ea696fae93d7f05cf0f68ce3017cd8b7c4952.tar.gz
Doxygen-302ea696fae93d7f05cf0f68ce3017cd8b7c4952.tar.bz2
Refactoring: move Doc*Visitor::push/popEnabled
New class & name: DocVisitor::push/popHidden
Diffstat (limited to 'src/docvisitor.cpp')
-rw-r--r--src/docvisitor.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/docvisitor.cpp b/src/docvisitor.cpp
index d46d8c0..5356faf 100644
--- a/src/docvisitor.cpp
+++ b/src/docvisitor.cpp
@@ -14,6 +14,7 @@
#include <unordered_map>
+#include <stack>
#include "parserintf.h"
#include "docvisitor.h"
@@ -25,6 +26,7 @@ struct DocVisitor::Private
{
int id;
std::unordered_map< std::string, std::unique_ptr<CodeParserInterface> > parserFactoryMap;
+ std::stack<bool> hidden;
};
DocVisitor::DocVisitor(int id) : m_p(std::make_unique<Private>())
@@ -56,3 +58,16 @@ int DocVisitor::id() const
{
return m_p->id;
}
+
+void DocVisitor::pushHidden(bool hide)
+{
+ m_p->hidden.push(hide);
+}
+
+bool DocVisitor::popHidden()
+{
+ if (m_p->hidden.empty()) return false;
+ bool v = m_p->hidden.top();
+ m_p->hidden.pop();
+ return v;
+}