From d8282c9adcd1c10b721bb72d6e4c8f993e862694 Mon Sep 17 00:00:00 2001 From: Julien Nabet Date: Sun, 26 Nov 2017 16:41:00 +0100 Subject: Replace lists by vector and deque (helpcompiler) Change-Id: I8d65947f3188ab7b54653eee887de2c5d4f8095d Reviewed-on: https://gerrit.libreoffice.org/45290 Tested-by: Jenkins Reviewed-by: Julien Nabet --- helpcompiler/inc/BasCodeTagger.hxx | 7 ++++--- helpcompiler/inc/HelpCompiler.hxx | 2 +- helpcompiler/source/BasCodeTagger.cxx | 6 ++---- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/helpcompiler/inc/BasCodeTagger.hxx b/helpcompiler/inc/BasCodeTagger.hxx index d8dbffa4cd49..7d485b166805 100644 --- a/helpcompiler/inc/BasCodeTagger.hxx +++ b/helpcompiler/inc/BasCodeTagger.hxx @@ -13,7 +13,8 @@ #include #include #include -#include +#include +#include #include #include #include @@ -28,7 +29,7 @@ class L10N_DLLPUBLIC BasicCodeTagger { private: xmlDocPtr m_pDocument; - std::list m_BasicCodeContainerTags; + std::vector m_BasicCodeContainerTags; LibXmlTreeWalker *m_pXmlTreeWalker; SyntaxHighlighter m_Highlighter; bool m_bTaggingCompleted; @@ -50,7 +51,7 @@ class L10N_DLLPUBLIC LibXmlTreeWalker { private: xmlNodePtr m_pCurrentNode; - std::list m_Queue; //!Queue for breath-first search + std::deque m_Queue; //!Queue for breath-first search public: LibXmlTreeWalker( xmlDocPtr doc ); diff --git a/helpcompiler/inc/HelpCompiler.hxx b/helpcompiler/inc/HelpCompiler.hxx index 356f8dc5b64d..952e58acc987 100644 --- a/helpcompiler/inc/HelpCompiler.hxx +++ b/helpcompiler/inc/HelpCompiler.hxx @@ -152,7 +152,7 @@ struct joaat_hash #define pref_hash joaat_hash typedef std::unordered_map Stringtable; -typedef std::list LinkedList; +typedef std::deque LinkedList; typedef std::vector HashSet; typedef std::unordered_map Hashtable; diff --git a/helpcompiler/source/BasCodeTagger.cxx b/helpcompiler/source/BasCodeTagger.cxx index 20a4f1bb8061..215ea49996f6 100644 --- a/helpcompiler/source/BasCodeTagger.cxx +++ b/helpcompiler/source/BasCodeTagger.cxx @@ -103,19 +103,17 @@ void BasicCodeTagger::getBasicCodeContainerNodes() void BasicCodeTagger::tagBasCodeParagraphs() { //helper variables - xmlNodePtr currBascodeNode; xmlNodePtr currParagraph; - while ( !m_BasicCodeContainerTags.empty() ) + for (auto const& currBascodeNode : m_BasicCodeContainerTags) { - currBascodeNode = m_BasicCodeContainerTags.front(); currParagraph = currBascodeNode->xmlChildrenNode; //first while ( currParagraph != nullptr ) { tagParagraph( currParagraph ); currParagraph=currParagraph->next; } - m_BasicCodeContainerTags.pop_front(); //next element } + m_BasicCodeContainerTags.clear(); } //! Used by tagBasCodeParagraphs(). It does the work on the current paragraph containing Basic code. -- cgit