mirror of
https://github.com/Dushistov/sdcv.git
synced 2025-12-15 17:31:56 +00:00
remove typedef to simplify code
This commit is contained in:
@@ -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) {
|
||||||
|
|||||||
@@ -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);
|
||||||
|
|
||||||
|
|||||||
@@ -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();
|
||||||
|
|||||||
@@ -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(); }
|
||||||
|
|||||||
10
src/sdcv.cpp
10
src/sdcv.cpp
@@ -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());
|
||||||
|
|||||||
Reference in New Issue
Block a user