commit 014bc7805e8a9eca1096db67b1e9d26e1ff6c7e2
Author: Richard Heck <[email protected]>
Date:   Wed Oct 19 18:11:58 2016 -0400

    Use a typedef for vector<Format const *>, which is what gets used
    for lists of exportable and importable formats.
---
 src/BufferParams.cpp              |   24 +++++++++++-------------
 src/BufferParams.h                |    2 +-
 src/Converter.cpp                 |   30 ++++++++++++++----------------
 src/Converter.h                   |   20 +++++++++++---------
 src/frontends/qt4/GuiDocument.cpp |    3 ++-
 src/frontends/qt4/GuiSendto.cpp   |    5 +++--
 src/frontends/qt4/Menus.cpp       |    3 +--
 src/frontends/qt4/Toolbars.cpp    |    2 +-
 8 files changed, 44 insertions(+), 45 deletions(-)

diff --git a/src/BufferParams.cpp b/src/BufferParams.cpp
index dab711d..bae97f6 100644
--- a/src/BufferParams.cpp
+++ b/src/BufferParams.cpp
@@ -355,9 +355,8 @@ public:
        VSpace defskip;
        PDFOptions pdfoptions;
        LayoutFileIndex baseClass_;
-       /// Caching for exportableFormats, which seems to be slow.
-       std::vector<Format const *> exportableFormatList;
-       std::vector<Format const *> viewableFormatList;
+       FormatList exportableFormatList;
+       FormatList viewableFormatList;
        bool isViewCacheValid;
        bool isExportCacheValid;
 };
@@ -2403,9 +2402,9 @@ bool BufferParams::isExportable(string const & format) 
const
 }
 
 
-vector<Format const *> const & BufferParams::exportableFormats(bool 
only_viewable) const
+FormatList const & BufferParams::exportableFormats(bool only_viewable) const
 {
-       vector<Format const *> & cached = only_viewable ?
+       FormatList & cached = only_viewable ?
                        pimpl_->viewableFormatList : 
pimpl_->exportableFormatList;
        bool & valid = only_viewable ? 
                        pimpl_->isViewCacheValid : pimpl_->isExportCacheValid;
@@ -2418,12 +2417,12 @@ vector<Format const *> const & 
BufferParams::exportableFormats(bool only_viewabl
                excludes.insert("latex");
                excludes.insert("pdflatex");
        }
-       vector<Format const *> result =
+       FormatList result =
                theConverters().getReachable(backs[0], only_viewable, true, 
excludes);
        for (vector<string>::const_iterator it = backs.begin() + 1;
             it != backs.end(); ++it) {
-               vector<Format const *>  r =
-                       theConverters().getReachable(*it, only_viewable, false, 
excludes);
+               FormatList r = theConverters().getReachable(*it, only_viewable, 
+                               false, excludes);
                result.insert(result.end(), r.begin(), r.end());
        }
        sort(result.begin(), result.end(), Format::formatSorter);
@@ -2435,10 +2434,9 @@ vector<Format const *> const & 
BufferParams::exportableFormats(bool only_viewabl
 
 bool BufferParams::isExportableFormat(string const & format) const
 {
-       typedef vector<Format const *> Formats;
-       Formats const & formats = exportableFormats(true);
-       Formats::const_iterator fit = formats.begin();
-       Formats::const_iterator end = formats.end();
+       FormatList const & formats = exportableFormats(true);
+       FormatList::const_iterator fit = formats.begin();
+       FormatList::const_iterator end = formats.end();
        for (; fit != end ; ++fit) {
                if ((*fit)->name() == format)
                        return true;
@@ -2533,7 +2531,7 @@ string BufferParams::getDefaultOutputFormat() const
                return default_output_format;
        if (isDocBook()
            || encoding().package() == Encoding::japanese) {
-               vector<Format const *> const & formats = 
exportableFormats(true);
+               FormatList const & formats = exportableFormats(true);
                if (formats.empty())
                        return string();
                // return the first we find
diff --git a/src/BufferParams.h b/src/BufferParams.h
index ea2cd5d..dcf4517 100644
--- a/src/BufferParams.h
+++ b/src/BufferParams.h
@@ -555,7 +555,7 @@ private:
         *  mathdots, stackrel, stmaryrd and undertilde.
         */
        PackageMap use_packages;
-       
+
        /** Use the Pimpl idiom to hide those member variables that would 
otherwise
         *  drag in other header files.
         */
diff --git a/src/Converter.cpp b/src/Converter.cpp
index 465e256..58e486e 100644
--- a/src/Converter.cpp
+++ b/src/Converter.cpp
@@ -717,14 +717,13 @@ void Converters::buildGraph()
 }
 
 
-vector<Format const *> const
-Converters::intToFormat(vector<int> const & input)
+FormatList const Converters::intToFormat(vector<int> const & input)
 {
-       vector<Format const *> result(input.size());
+       FormatList result(input.size());
 
        vector<int>::const_iterator it = input.begin();
        vector<int>::const_iterator const end = input.end();
-       vector<Format const *>::iterator rit = result.begin();
+       FormatList::iterator rit = result.begin();
        for ( ; it != end; ++it, ++rit) {
                *rit = &formats.get(*it);
        }
@@ -732,8 +731,8 @@ Converters::intToFormat(vector<int> const & input)
 }
 
 
-vector<Format const *> const
-Converters::getReachableTo(string const & target, bool const clear_visited)
+FormatList const Converters::getReachableTo(string const & target, 
+               bool const clear_visited)
 {
        vector<int> const & reachablesto =
                G_.getReachableTo(formats.getNumber(target), clear_visited);
@@ -742,9 +741,9 @@ Converters::getReachableTo(string const & target, bool 
const clear_visited)
 }
 
 
-vector<Format const *> const
-Converters::getReachable(string const & from, bool const only_viewable,
-                        bool const clear_visited, set<string> const & excludes)
+FormatList const Converters::getReachable(string const & from, 
+               bool const only_viewable, bool const clear_visited, 
+               set<string> const & excludes)
 {
        set<int> excluded_numbers;
 
@@ -777,29 +776,28 @@ Graph::EdgePath Converters::getPath(string const & from, 
string const & to)
 }
 
 
-vector<Format const *> Converters::importableFormats()
+FormatList Converters::importableFormats()
 {
        vector<string> l = loaders();
-       vector<Format const *> result = getReachableTo(l[0], true);
+       FormatList result = getReachableTo(l[0], true);
        vector<string>::const_iterator it = l.begin() + 1;
        vector<string>::const_iterator en = l.end();
        for (; it != en; ++it) {
-               vector<Format const *> r = getReachableTo(*it, false);
+               FormatList r = getReachableTo(*it, false);
                result.insert(result.end(), r.begin(), r.end());
        }
        return result;
 }
 
 
-vector<Format const *> Converters::exportableFormats(bool only_viewable)
+FormatList Converters::exportableFormats(bool only_viewable)
 {
        vector<string> s = savers();
-       vector<Format const *> result = getReachable(s[0], only_viewable, true);
+       FormatList result = getReachable(s[0], only_viewable, true);
        vector<string>::const_iterator it = s.begin() + 1;
        vector<string>::const_iterator en = s.end();
        for (; it != en; ++it) {
-               vector<Format const *> r =
-                       getReachable(*it, only_viewable, false);
+                FormatList r = getReachable(*it, only_viewable, false);
                result.insert(result.end(), r.begin(), r.end());
        }
        return result;
diff --git a/src/Converter.h b/src/Converter.h
index 082b2d3..c9c4423 100644
--- a/src/Converter.h
+++ b/src/Converter.h
@@ -30,6 +30,8 @@ class ErrorList;
 class Format;
 class Formats;
 
+typedef std::vector<Format const *> FormatList;
+
 
 ///
 class Converter {
@@ -131,16 +133,16 @@ public:
        //
        void erase(std::string const & from, std::string const & to);
        ///
-       std::vector<Format const *> const
-       getReachableTo(std::string const & target, bool clear_visited);
+       FormatList const 
+               getReachableTo(std::string const & target, bool clear_visited);
        ///
-       std::vector<Format const *> const
-       getReachable(std::string const & from, bool only_viewable,
-              bool clear_visited,
-              std::set<std::string> const & excludes = 
std::set<std::string>());
+       FormatList const
+               getReachable(std::string const & from, bool only_viewable,
+                   bool clear_visited,
+                   std::set<std::string> const & excludes = 
std::set<std::string>());
 
-       std::vector<Format const *> importableFormats();
-       std::vector<Format const *> exportableFormats(bool only_viewable);
+       FormatList importableFormats();
+       FormatList exportableFormats(bool only_viewable);
 
        std::vector<std::string> loaders() const;
        std::vector<std::string> savers() const;
@@ -181,7 +183,7 @@ public:
        void buildGraph();
 private:
        ///
-       std::vector<Format const *> const
+       FormatList const
        intToFormat(std::vector<int> const & input);
        ///
        bool scanLog(Buffer const & buffer, std::string const & command,
diff --git a/src/frontends/qt4/GuiDocument.cpp 
b/src/frontends/qt4/GuiDocument.cpp
index a3002f0..2a40873 100644
--- a/src/frontends/qt4/GuiDocument.cpp
+++ b/src/frontends/qt4/GuiDocument.cpp
@@ -31,6 +31,7 @@
 #include "BufferView.h"
 #include "Color.h"
 #include "ColorCache.h"
+#include "Converter.h"
 #include "Cursor.h"
 #include "Encoding.h"
 #include "FloatPlacement.h"
@@ -2561,7 +2562,7 @@ void GuiDocument::updateDefaultFormat()
        outputModule->defaultFormatCO->clear();
        outputModule->defaultFormatCO->addItem(qt_("Default"),
                                QVariant(QString("default")));
-       vector<Format const *> const & formats =
+       FormatList const & formats =
                                param_copy.exportableFormats(true);
        for (Format const * f : formats)
                outputModule->defaultFormatCO->addItem
diff --git a/src/frontends/qt4/GuiSendto.cpp b/src/frontends/qt4/GuiSendto.cpp
index a3c125e..92814f0 100644
--- a/src/frontends/qt4/GuiSendto.cpp
+++ b/src/frontends/qt4/GuiSendto.cpp
@@ -16,6 +16,7 @@
 
 #include "Buffer.h"
 #include "BufferParams.h"
+#include "Converter.h"
 #include "Format.h"
 #include "FuncRequest.h"
 
@@ -71,7 +72,7 @@ void GuiSendTo::changed_adaptor()
 
 void GuiSendTo::updateContents()
 {
-       vector<Format const *> const & all_formats = 
+       FormatList const & all_formats = 
            buffer().params().exportableFormats(false);
        // Save the current selection if any
        Format const * current_format = nullptr;
@@ -101,7 +102,7 @@ void GuiSendTo::applyView()
        if (line < 0 || line > formatLW->count())
                return;
 
-       vector<Format const *> const & all_formats = 
+       FormatList const & all_formats = 
            buffer().params().exportableFormats(false);
        format_ = all_formats[line];
        command_ = command;
diff --git a/src/frontends/qt4/Menus.cpp b/src/frontends/qt4/Menus.cpp
index 16182e6..53a8455 100644
--- a/src/frontends/qt4/Menus.cpp
+++ b/src/frontends/qt4/Menus.cpp
@@ -1026,8 +1026,7 @@ void MenuDefinition::expandFormats(MenuItem::Kind const 
kind, Buffer const * buf
        if (!buf && kind != MenuItem::ImportFormats)
                return;
 
-       typedef vector<Format const *> Formats;
-       Formats formats;
+       FormatList formats;
        FuncCode action = LFUN_NOACTION;
 
        switch (kind) {
diff --git a/src/frontends/qt4/Toolbars.cpp b/src/frontends/qt4/Toolbars.cpp
index b2a9c37..2c0d2ab 100644
--- a/src/frontends/qt4/Toolbars.cpp
+++ b/src/frontends/qt4/Toolbars.cpp
@@ -194,7 +194,7 @@ ToolbarInfo & ToolbarInfo::read(Lexer & lex)
                case TO_IMPORTFORMATS:
                case TO_UPDATEFORMATS:
                case TO_VIEWFORMATS: {
-                       vector<Format const *> formats = (code == 
TO_IMPORTFORMATS) ?
+                       FormatList formats = (code == TO_IMPORTFORMATS) ?
                                theConverters().importableFormats() :
                                theConverters().exportableFormats(true);
                        sort(formats.begin(), formats.end());

Reply via email to