Replace lists by vector and deque (helpcompiler)

Change-Id: I8d65947f3188ab7b54653eee887de2c5d4f8095d
Reviewed-on: https://gerrit.libreoffice.org/45290
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
This commit is contained in:
Julien Nabet 2017-11-26 16:41:00 +01:00
parent ae3a10fc86
commit d8282c9adc
3 changed files with 7 additions and 8 deletions

View file

@ -13,7 +13,8 @@
#include <iostream>
#include <cstdlib>
#include <string>
#include <list>
#include <deque>
#include <vector>
#include <libxml/xmlmemory.h>
#include <libxml/parser.h>
#include <rtl/ustring.hxx>
@ -28,7 +29,7 @@ class L10N_DLLPUBLIC BasicCodeTagger
{
private:
xmlDocPtr m_pDocument;
std::list<xmlNodePtr> m_BasicCodeContainerTags;
std::vector<xmlNodePtr> 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<xmlNodePtr> m_Queue; //!Queue for breath-first search
std::deque<xmlNodePtr> m_Queue; //!Queue for breath-first search
public:
LibXmlTreeWalker( xmlDocPtr doc );

View file

@ -152,7 +152,7 @@ struct joaat_hash
#define pref_hash joaat_hash
typedef std::unordered_map<std::string, std::string, pref_hash> Stringtable;
typedef std::list<std::string> LinkedList;
typedef std::deque<std::string> LinkedList;
typedef std::vector<std::string> HashSet;
typedef std::unordered_map<std::string, LinkedList, pref_hash> Hashtable;

View file

@ -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 <paragraph>
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.