remove typedef to simplify code

This commit is contained in:
Evgeniy Dushistov
2013-07-07 15:24:28 +00:00
parent f9c34e438e
commit a1f5ebeee2
5 changed files with 27 additions and 31 deletions

View File

@@ -5,7 +5,7 @@
#include "file.hpp" #include "file.hpp"
static void __for_each_file(const std::string& dirname, const std::string& suff, static void __for_each_file(const std::string& dirname, const std::string& suff,
const List& order_list, const List& disable_list, const std::list<std::string>& order_list, const std::list<std::string>& disable_list,
const std::function<void (const std::string&, bool)>& f) const std::function<void (const std::string&, bool)>& f)
{ {
GDir *dir = g_dir_open(dirname.c_str(), 0, nullptr); GDir *dir = g_dir_open(dirname.c_str(), 0, nullptr);
@@ -30,8 +30,8 @@ static void __for_each_file(const std::string& dirname, const std::string& suff,
} }
void for_each_file(const List& dirs_list, const std::string& suff, void for_each_file(const std::list<std::string>& dirs_list, const std::string& suff,
const List& order_list, const List& disable_list, const std::list<std::string>& order_list, const std::list<std::string>& disable_list,
const std::function<void (const std::string&, bool)>& f) const std::function<void (const std::string&, bool)>& f)
{ {
for (const std::string & item : order_list) { for (const std::string & item : order_list) {

View File

@@ -4,9 +4,7 @@
#include <string> #include <string>
#include <functional> #include <functional>
typedef std::list<std::string> List; extern void for_each_file(const std::list<std::string>& dirs_list, const std::string& suff,
const std::list<std::string>& order_list, const std::list<std::string>& disable_list,
extern void for_each_file(const List& dirs_list, const std::string& suff,
const List& order_list, const List& disable_list,
const std::function<void (const std::string&, bool)>& f); const std::function<void (const std::string&, bool)>& f);

View File

@@ -482,7 +482,7 @@ namespace {
const gchar *get_first_on_page_key(glong page_idx); const gchar *get_first_on_page_key(glong page_idx);
bool load_cache(const std::string& url); bool load_cache(const std::string& url);
bool save_cache(const std::string& url); bool save_cache(const std::string& url);
static strlist_t get_cache_variant(const std::string& url); static std::list<std::string> get_cache_variant(const std::string& url);
}; };
const char *OffsetIndex::CACHE_MAGIC = "StarDict's Cache, Version: 0.1"; const char *OffsetIndex::CACHE_MAGIC = "StarDict's Cache, Version: 0.1";
@@ -548,7 +548,7 @@ namespace {
bool OffsetIndex::load_cache(const std::string& url) bool OffsetIndex::load_cache(const std::string& url)
{ {
const strlist_t vars = get_cache_variant(url); const std::list<std::string> vars = get_cache_variant(url);
for (const std::string& item : vars) { for (const std::string& item : vars) {
struct ::stat idxstat, cachestat; struct ::stat idxstat, cachestat;
@@ -570,9 +570,9 @@ namespace {
return false; return false;
} }
strlist_t OffsetIndex::get_cache_variant(const std::string& url) std::list<std::string> OffsetIndex::get_cache_variant(const std::string& url)
{ {
strlist_t res = {url + ".oft"}; std::list<std::string> res = {url + ".oft"};
if (!g_file_test(g_get_user_cache_dir(), G_FILE_TEST_EXISTS) && if (!g_file_test(g_get_user_cache_dir(), G_FILE_TEST_EXISTS) &&
g_mkdir(g_get_user_cache_dir(), 0700)==-1) g_mkdir(g_get_user_cache_dir(), 0700)==-1)
return res; return res;
@@ -593,7 +593,7 @@ namespace {
bool OffsetIndex::save_cache(const std::string& url) bool OffsetIndex::save_cache(const std::string& url)
{ {
const strlist_t vars = get_cache_variant(url); const std::list<std::string> vars = get_cache_variant(url);
for (const std::string& item : vars) { for (const std::string& item : vars) {
FILE *out=fopen(item.c_str(), "wb"); FILE *out=fopen(item.c_str(), "wb");
if (!out) if (!out)
@@ -897,9 +897,9 @@ void Libs::load_dict(const std::string& url)
delete lib; delete lib;
} }
void Libs::load(const strlist_t& dicts_dirs, void Libs::load(const std::list<std::string>& dicts_dirs,
const strlist_t& order_list, const std::list<std::string>& order_list,
const strlist_t& disable_list) const std::list<std::string>& disable_list)
{ {
for_each_file(dicts_dirs, ".ifo", order_list, disable_list, for_each_file(dicts_dirs, ".ifo", order_list, disable_list,
[this](const std::string& url, bool disable) -> void { [this](const std::string& url, bool disable) -> void {
@@ -908,9 +908,9 @@ void Libs::load(const strlist_t& dicts_dirs,
}); });
} }
void Libs::reload(const strlist_t& dicts_dirs, void Libs::reload(const std::list<std::string>& dicts_dirs,
const strlist_t& order_list, const std::list<std::string>& order_list,
const strlist_t& disable_list) const std::list<std::string>& disable_list)
{ {
std::vector<Dict *> prev(oLib); std::vector<Dict *> prev(oLib);
oLib.clear(); oLib.clear();

View File

@@ -111,8 +111,6 @@ private:
bool load_ifofile(const std::string& ifofilename, gulong &idxfilesize); bool load_ifofile(const std::string& ifofilename, gulong &idxfilesize);
}; };
typedef std::list<std::string> strlist_t;
class Libs { class Libs {
public: public:
Libs(std::function<void(void)> f = std::function<void(void)>()) { Libs(std::function<void(void)> f = std::function<void(void)>()) {
@@ -124,12 +122,12 @@ public:
Libs& operator=(const Libs&) = delete; Libs& operator=(const Libs&) = delete;
void load_dict(const std::string& url); void load_dict(const std::string& url);
void load(const strlist_t& dicts_dirs, void load(const std::list<std::string>& dicts_dirs,
const strlist_t& order_list, const std::list<std::string>& order_list,
const strlist_t& disable_list); const std::list<std::string>& disable_list);
void reload(const strlist_t& dicts_dirs, void reload(const std::list<std::string>& dicts_dirs,
const strlist_t& order_list, const std::list<std::string>& order_list,
const strlist_t& disable_list); const std::list<std::string>& disable_list);
glong narticles(int idict) const { return oLib[idict]->narticles(); } glong narticles(int idict) const { return oLib[idict]->narticles(); }
const std::string& dict_name(int idict) const { return oLib[idict]->dict_name(); } const std::string& dict_name(int idict) const { return oLib[idict]->dict_name(); }

View File

@@ -130,14 +130,14 @@ int main(int argc, char *argv[])
if (!homedir) if (!homedir)
homedir = g_get_home_dir (); homedir = g_get_home_dir ();
const strlist_t dicts_dir_list = { const std::list<std::string> dicts_dir_list = {
std::string(homedir) + G_DIR_SEPARATOR + ".stardict" + G_DIR_SEPARATOR + "dic", std::string(homedir) + G_DIR_SEPARATOR + ".stardict" + G_DIR_SEPARATOR + "dic",
data_dir data_dir
}; };
if (show_list_dicts) { if (show_list_dicts) {
printf(_("Dictionary's name Word count\n")); printf(_("Dictionary's name Word count\n"));
strlist_t order_list, disable_list; std::list<std::string> order_list, disable_list;
for_each_file(dicts_dir_list, ".ifo", order_list, for_each_file(dicts_dir_list, ".ifo", order_list,
disable_list, [](const std::string& filename, bool) -> void { disable_list, [](const std::string& filename, bool) -> void {
DictInfo dict_info; DictInfo dict_info;
@@ -150,10 +150,10 @@ int main(int argc, char *argv[])
return EXIT_SUCCESS; return EXIT_SUCCESS;
} }
strlist_t disable_list; std::list<std::string> disable_list;
if (use_dict_list) { if (use_dict_list) {
strlist_t empty_list; std::list<std::string> empty_list;
for_each_file(dicts_dir_list, ".ifo", empty_list, empty_list, for_each_file(dicts_dir_list, ".ifo", empty_list, empty_list,
[&disable_list, &use_dict_list](const std::string& filename, bool) -> void { [&disable_list, &use_dict_list](const std::string& filename, bool) -> void {
@@ -175,7 +175,7 @@ int main(int argc, char *argv[])
Library lib(utf8_input, utf8_output, colorize); Library lib(utf8_input, utf8_output, colorize);
strlist_t empty_list; std::list<std::string> empty_list;
lib.load(dicts_dir_list, empty_list, disable_list); lib.load(dicts_dir_list, empty_list, disable_list);
std::unique_ptr<IReadLine> io(create_readline_object()); std::unique_ptr<IReadLine> io(create_readline_object());