diff --git a/configure.ac b/configure.ac index 430c15dd..82ff2b67 100644 --- a/configure.ac +++ b/configure.ac @@ -9,29 +9,30 @@ AM_PATH_CPPUNIT(1.9.6) AC_PROG_CXX AC_PROG_LIBTOOL -TORRENT_CHECK_CXXFLAGS() -TORRENT_ENABLE_DEBUG() -TORRENT_ENABLE_EXTRA_DEBUG() -TORRENT_ENABLE_WERROR() -TORRENT_ENABLE_TR1() -TORRENT_ENABLE_CXX11() +TORRENT_CHECK_CXXFLAGS +TORRENT_ENABLE_DEBUG +TORRENT_ENABLE_EXTRA_DEBUG +TORRENT_ENABLE_WERROR + +TORRENT_CHECK_CXX11 +TORRENT_CHECK_TR1_LIB TORRENT_DISABLE_IPV6 AC_SYS_LARGEFILE -TORRENT_CHECK_EXECINFO() -TORRENT_OTFD() +TORRENT_CHECK_EXECINFO +TORRENT_OTFD TORRENT_ENABLE_ARCH TORRENT_WITH_SYSROOT -TORRENT_WITHOUT_VARIABLE_FDSET() -TORRENT_WITHOUT_STATVFS() -TORRENT_WITHOUT_STATFS() +TORRENT_WITHOUT_VARIABLE_FDSET +TORRENT_WITHOUT_STATVFS +TORRENT_WITHOUT_STATFS AX_PTHREAD([], AC_MSG_ERROR([requires pthread])) -AX_WITH_CURSES() +AX_WITH_CURSES if test "x$ax_cv_ncursesw" != xyes && test "x$ax_cv_ncurses" != xyes; then AC_MSG_ERROR([requires either NcursesW or Ncurses library]) diff --git a/rak/functional_fun.h b/rak/functional_fun.h index cc1ee5f2..f793db53 100644 --- a/rak/functional_fun.h +++ b/rak/functional_fun.h @@ -53,8 +53,8 @@ #include #include -#include -#include +#include lt_tr1_functional +#include lt_tr1_memory namespace rak { @@ -98,13 +98,13 @@ public: bool is_valid() const { return m_base.get() != NULL; } - void set(base_type* base) { m_base = std::tr1::shared_ptr(base); } + void set(base_type* base) { m_base = std::shared_ptr(base); } base_type* release() { return m_base.release(); } Result operator () () { return (*m_base)(); } private: - std::tr1::shared_ptr m_base; + std::shared_ptr m_base; }; template @@ -115,13 +115,13 @@ public: bool is_valid() const { return m_base.get() != NULL; } - void set(base_type* base) { m_base = std::tr1::shared_ptr(base); } + void set(base_type* base) { m_base = std::shared_ptr(base); } base_type* release() { return m_base.release(); } Result operator () (Arg1 arg1) { return (*m_base)(arg1); } private: - std::tr1::shared_ptr m_base; + std::shared_ptr m_base; }; template @@ -132,13 +132,13 @@ public: bool is_valid() const { return m_base.get() != NULL; } - void set(base_type* base) { m_base = std::tr1::shared_ptr(base); } + void set(base_type* base) { m_base = std::shared_ptr(base); } base_type* release() { return m_base.release(); } Result operator () (Arg1 arg1, Arg2 arg2) { return (*m_base)(arg1, arg2); } private: - std::tr1::shared_ptr m_base; + std::shared_ptr m_base; }; template @@ -149,7 +149,7 @@ public: bool is_valid() const { return m_base.get() != NULL; } - void set(base_type* base) { m_base = std::tr1::shared_ptr(base); } + void set(base_type* base) { m_base = std::shared_ptr(base); } base_type* release() { return m_base.release(); } Result operator () (Arg2 arg2) { return (*m_base)(arg2); } @@ -158,7 +158,7 @@ public: Result operator () (Discard discard, Arg2 arg2) { return (*m_base)(arg2); } private: - std::tr1::shared_ptr m_base; + std::shared_ptr m_base; }; template @@ -169,13 +169,13 @@ public: bool is_valid() const { return m_base.get() != NULL; } - void set(base_type* base) { m_base = std::tr1::shared_ptr(base); } + void set(base_type* base) { m_base = std::shared_ptr(base); } base_type* release() { return m_base.release(); } Result operator () (Arg1 arg1, Arg2 arg2, Arg3 arg3) { return (*m_base)(arg1, arg2, arg3); } private: - std::tr1::shared_ptr m_base; + std::shared_ptr m_base; }; template diff --git a/rak/priority_queue.h b/rak/priority_queue.h index 69c89811..f4e1ed9c 100644 --- a/rak/priority_queue.h +++ b/rak/priority_queue.h @@ -60,6 +60,7 @@ public: using base_type::end; using base_type::size; using base_type::empty; + using base_type::clear; priority_queue(Compare l = Compare(), Equal e = Equal()) : m_compare(l), m_equal(e) {} diff --git a/rak/priority_queue_default.h b/rak/priority_queue_default.h index 420f5386..01a0070e 100644 --- a/rak/priority_queue_default.h +++ b/rak/priority_queue_default.h @@ -37,7 +37,7 @@ #ifndef RAK_PRIORITY_QUEUE_DEFAULT_H #define RAK_PRIORITY_QUEUE_DEFAULT_H -#include +#include lt_tr1_functional #include #include #include @@ -48,7 +48,7 @@ namespace rak { class priority_item { public: - typedef std::tr1::function slot_void; + typedef std::function slot_void; priority_item() {} ~priority_item() { diff --git a/scripts/checks.m4 b/scripts/checks.m4 index 598f39b3..10dd53dc 100644 --- a/scripts/checks.m4 +++ b/scripts/checks.m4 @@ -377,24 +377,78 @@ AC_DEFUN([TORRENT_CHECK_TR1], [ AC_DEFUN([TORRENT_CHECK_CXX11], [ AC_LANG_PUSH(C++) - AC_MSG_CHECKING(for C++11 support) + AC_MSG_CHECKING(C++11 support) AC_COMPILE_IFELSE([AC_LANG_SOURCE([ - #include - #include - class Foo; - typedef std::unordered_map Bar; - + #include + class Foo; typedef std::vector Bar; union test { Bar b1; }; - ])], - [ + ]) + ], [ AC_MSG_RESULT(yes) AC_DEFINE(HAVE_CXX11, 1, Define to 1 if your C++ compiler has support for C++11.) - ], - [ + ], [ + CXXFLAGS="$CXXFLAGS -std=c++11" + + AC_COMPILE_IFELSE([AC_LANG_SOURCE([ + #include + class Foo; typedef std::vector Bar; + union test { Bar b1; }; + ]) + ], [ + AC_MSG_RESULT([with -std=c++11]) + AC_DEFINE(HAVE_CXX11, 1, Define to 1 if your C++ compiler has support for C++11.) + ], [ + AC_MSG_ERROR([No support for C++11 found.]) + ]) + ]) + + AC_LANG_POP(C++) +]) + +AC_DEFUN([TORRENT_CHECK_TR1_LIB], [ + AC_LANG_PUSH(C++) + AC_MSG_CHECKING(should use TR1 headers) + + AC_COMPILE_IFELSE([AC_LANG_SOURCE([ + #include + class Foo; typedef std::unordered_map Bar; + Bar b1; + ]) + ], [ AC_MSG_RESULT(no) - ] - ) + AC_DEFINE(USE_TR1_LIB, 0, Define to 1 if you need to use TR1 containers.) + + AC_DEFINE([lt_tr1_array], [], [TR1 array]) + AC_DEFINE([lt_tr1_functional], [], [TR1 functional]) + AC_DEFINE([lt_tr1_memory], [], [TR1 memory]) + AC_DEFINE([lt_tr1_unordered_map], [], [TR1 unordered_map]) + + ], [ + AC_COMPILE_IFELSE([AC_LANG_SOURCE([ + #include + class Foo; typedef std::tr1::unordered_map Bar; + Bar b1; + ]) + ], [ + AC_MSG_RESULT([yes]) + AC_DEFINE(USE_TR1_LIB, 1, Define to 1 if you need to use TR1 containers.) + + AC_DEFINE([lt_tr1_array], [], [TR1 array]) + AC_DEFINE([lt_tr1_functional], [], [TR1 functional]) + AC_DEFINE([lt_tr1_memory], [], [TR1 memory]) + AC_DEFINE([lt_tr1_unordered_map], [], [TR1 unordered_map]) + + ], [ + AC_MSG_ERROR([No support for C++11 standard library nor TR1 extensions found.]) + ]) + ]) + + AH_VERBATIM(lt_tr1_zzz, [ +#if USE_TR1_LIB == 1 +namespace std { namespace tr1 {} using namespace tr1; } +#endif +]) AC_LANG_POP(C++) ]) diff --git a/src/command_download.cc b/src/command_download.cc index 9fa2157a..5a1b2ed3 100644 --- a/src/command_download.cc +++ b/src/command_download.cc @@ -356,7 +356,7 @@ f_multicall(core::Download* download, const torrent::Object::list_type& args) { if (args.front().is_list()) std::transform(args.front().as_list().begin(), args.front().as_list().end(), std::back_inserter(regex_list), - tr1::bind(&torrent::Object::as_string_c, tr1::placeholders::_1)); + std::bind(&torrent::Object::as_string_c, std::placeholders::_1)); else if (args.front().is_string() && !args.front().as_string().empty()) regex_list.push_back(args.front().as_string()); else @@ -365,7 +365,7 @@ f_multicall(core::Download* download, const torrent::Object::list_type& args) { for (torrent::FileList::const_iterator itr = download->file_list()->begin(), last = download->file_list()->end(); itr != last; itr++) { if (use_regex && std::find_if(regex_list.begin(), regex_list.end(), - tr1::bind(&rak::regex::operator(), tr1::placeholders::_1, (*itr)->path()->as_string())) == regex_list.end()) + std::bind(&rak::regex::operator(), std::placeholders::_1, (*itr)->path()->as_string())) == regex_list.end()) continue; torrent::Object::list_type& row = result.insert(result.end(), torrent::Object::create_list())->as_list(); @@ -581,52 +581,52 @@ d_list_remove(core::Download* download, const torrent::Object& rawArgs, const ch return torrent::Object(); } -#define CMD2_ON_INFO(func) tr1::bind(&torrent::DownloadInfo::func, tr1::bind(&core::Download::info, tr1::placeholders::_1)) -#define CMD2_ON_DATA(func) tr1::bind(&torrent::download_data::func, tr1::bind(&core::Download::data, tr1::placeholders::_1)) -#define CMD2_ON_DL(func) tr1::bind(&torrent::Download::func, tr1::bind(&core::Download::download, tr1::placeholders::_1)) -#define CMD2_ON_FL(func) tr1::bind(&torrent::FileList::func, tr1::bind(&core::Download::file_list, tr1::placeholders::_1)) +#define CMD2_ON_INFO(func) std::bind(&torrent::DownloadInfo::func, std::bind(&core::Download::info, std::placeholders::_1)) +#define CMD2_ON_DATA(func) std::bind(&torrent::download_data::func, std::bind(&core::Download::data, std::placeholders::_1)) +#define CMD2_ON_DL(func) std::bind(&torrent::Download::func, std::bind(&core::Download::download, std::placeholders::_1)) +#define CMD2_ON_FL(func) std::bind(&torrent::FileList::func, std::bind(&core::Download::file_list, std::placeholders::_1)) -#define CMD2_BIND_DL tr1::bind(&core::Download::download, tr1::placeholders::_1) -#define CMD2_BIND_CL tr1::bind(&core::Download::connection_list, tr1::placeholders::_1) -#define CMD2_BIND_FL tr1::bind(&core::Download::file_list, tr1::placeholders::_1) -#define CMD2_BIND_PL tr1::bind(&core::Download::c_peer_list, tr1::placeholders::_1) -#define CMD2_BIND_TL tr1::bind(&core::Download::tracker_list, tr1::placeholders::_1) -#define CMD2_BIND_TC tr1::bind(&core::Download::tracker_controller, tr1::placeholders::_1) +#define CMD2_BIND_DL std::bind(&core::Download::download, std::placeholders::_1) +#define CMD2_BIND_CL std::bind(&core::Download::connection_list, std::placeholders::_1) +#define CMD2_BIND_FL std::bind(&core::Download::file_list, std::placeholders::_1) +#define CMD2_BIND_PL std::bind(&core::Download::c_peer_list, std::placeholders::_1) +#define CMD2_BIND_TL std::bind(&core::Download::tracker_list, std::placeholders::_1) +#define CMD2_BIND_TC std::bind(&core::Download::tracker_controller, std::placeholders::_1) -#define CMD2_BIND_INFO tr1::bind(&core::Download::info, tr1::placeholders::_1) -#define CMD2_BIND_DATA tr1::bind(&core::Download::data, tr1::placeholders::_1) +#define CMD2_BIND_INFO std::bind(&core::Download::info, std::placeholders::_1) +#define CMD2_BIND_DATA std::bind(&core::Download::data, std::placeholders::_1) #define CMD2_DL_VAR_VALUE(key, first_key, second_key) \ - CMD2_DL(key, tr1::bind(&download_get_variable, tr1::placeholders::_1, first_key, second_key)); \ - CMD2_DL_VALUE_P(key ".set", tr1::bind(&download_set_variable_value, \ - tr1::placeholders::_1, tr1::placeholders::_2, \ + CMD2_DL(key, std::bind(&download_get_variable, std::placeholders::_1, first_key, second_key)); \ + CMD2_DL_VALUE_P(key ".set", std::bind(&download_set_variable_value, \ + std::placeholders::_1, std::placeholders::_2, \ first_key, second_key)); #define CMD2_DL_VAR_VALUE_PUBLIC(key, first_key, second_key) \ - CMD2_DL(key, tr1::bind(&download_get_variable, tr1::placeholders::_1, first_key, second_key)); \ - CMD2_DL_VALUE(key ".set", tr1::bind(&download_set_variable_value, \ - tr1::placeholders::_1, tr1::placeholders::_2, \ + CMD2_DL(key, std::bind(&download_get_variable, std::placeholders::_1, first_key, second_key)); \ + CMD2_DL_VALUE(key ".set", std::bind(&download_set_variable_value, \ + std::placeholders::_1, std::placeholders::_2, \ first_key, second_key)); #define CMD2_DL_TIMESTAMP(key, first_key, second_key) \ - CMD2_DL(key, tr1::bind(&download_get_variable, tr1::placeholders::_1, first_key, second_key)); \ - CMD2_DL_VALUE_P(key ".set", tr1::bind(&download_set_variable_value, \ - tr1::placeholders::_1, tr1::placeholders::_2, \ + CMD2_DL(key, std::bind(&download_get_variable, std::placeholders::_1, first_key, second_key)); \ + CMD2_DL_VALUE_P(key ".set", std::bind(&download_set_variable_value, \ + std::placeholders::_1, std::placeholders::_2, \ first_key, second_key)); \ - CMD2_DL_VALUE_P(key ".set_if_z", tr1::bind(&download_set_variable_value_ifz, \ - tr1::placeholders::_1, tr1::placeholders::_2, \ + CMD2_DL_VALUE_P(key ".set_if_z", std::bind(&download_set_variable_value_ifz, \ + std::placeholders::_1, std::placeholders::_2, \ first_key, second_key)); \ #define CMD2_DL_VAR_STRING(key, first_key, second_key) \ - CMD2_DL(key, tr1::bind(&download_get_variable, tr1::placeholders::_1, first_key, second_key)); \ - CMD2_DL_STRING_P(key ".set", tr1::bind(&download_set_variable_string, \ - tr1::placeholders::_1, tr1::placeholders::_2, \ + CMD2_DL(key, std::bind(&download_get_variable, std::placeholders::_1, first_key, second_key)); \ + CMD2_DL_STRING_P(key ".set", std::bind(&download_set_variable_string, \ + std::placeholders::_1, std::placeholders::_2, \ first_key, second_key)); #define CMD2_DL_VAR_STRING_PUBLIC(key, first_key, second_key) \ - CMD2_DL(key, tr1::bind(&download_get_variable, tr1::placeholders::_1, first_key, second_key)); \ - CMD2_DL_STRING(key ".set", tr1::bind(&download_set_variable_string, \ - tr1::placeholders::_1, tr1::placeholders::_2, \ + CMD2_DL(key, std::bind(&download_get_variable, std::placeholders::_1, first_key, second_key)); \ + CMD2_DL_STRING(key ".set", std::bind(&download_set_variable_string, \ + std::placeholders::_1, std::placeholders::_2, \ first_key, second_key)); int64_t cg_d_group(core::Download* download); @@ -635,12 +635,12 @@ void cg_d_group_set(core::Download* download, const torrent::Objec void initialize_command_download() { - CMD2_DL("d.hash", tr1::bind(&rak::transform_hex_str, CMD2_ON_INFO(hash))); - CMD2_DL("d.local_id", tr1::bind(&rak::transform_hex_str, CMD2_ON_INFO(local_id))); - CMD2_DL("d.local_id_html", tr1::bind(&rak::copy_escape_html_str, CMD2_ON_INFO(local_id))); - CMD2_DL("d.bitfield", tr1::bind(&retrieve_d_bitfield, tr1::placeholders::_1)); - CMD2_DL("d.base_path", tr1::bind(&retrieve_d_base_path, tr1::placeholders::_1)); - CMD2_DL("d.base_filename", tr1::bind(&retrieve_d_base_filename, tr1::placeholders::_1)); + CMD2_DL("d.hash", std::bind(&rak::transform_hex_str, CMD2_ON_INFO(hash))); + CMD2_DL("d.local_id", std::bind(&rak::transform_hex_str, CMD2_ON_INFO(local_id))); + CMD2_DL("d.local_id_html", std::bind(&rak::copy_escape_html_str, CMD2_ON_INFO(local_id))); + CMD2_DL("d.bitfield", std::bind(&retrieve_d_bitfield, std::placeholders::_1)); + CMD2_DL("d.base_path", std::bind(&retrieve_d_base_path, std::placeholders::_1)); + CMD2_DL("d.base_filename", std::bind(&retrieve_d_base_filename, std::placeholders::_1)); CMD2_DL("d.name", CMD2_ON_INFO(name)); CMD2_DL("d.creation_date", CMD2_ON_INFO(creation_date)); @@ -650,19 +650,19 @@ initialize_command_download() { // Network related: // - CMD2_DL ("d.up.rate", tr1::bind(&torrent::Rate::rate, CMD2_ON_INFO(up_rate))); - CMD2_DL ("d.up.total", tr1::bind(&torrent::Rate::total, CMD2_ON_INFO(up_rate))); - CMD2_DL ("d.down.rate", tr1::bind(&torrent::Rate::rate, CMD2_ON_INFO(down_rate))); - CMD2_DL ("d.down.total", tr1::bind(&torrent::Rate::total, CMD2_ON_INFO(down_rate))); - CMD2_DL ("d.skip.rate", tr1::bind(&torrent::Rate::rate, CMD2_ON_INFO(skip_rate))); - CMD2_DL ("d.skip.total", tr1::bind(&torrent::Rate::total, CMD2_ON_INFO(skip_rate))); + CMD2_DL ("d.up.rate", std::bind(&torrent::Rate::rate, CMD2_ON_INFO(up_rate))); + CMD2_DL ("d.up.total", std::bind(&torrent::Rate::total, CMD2_ON_INFO(up_rate))); + CMD2_DL ("d.down.rate", std::bind(&torrent::Rate::rate, CMD2_ON_INFO(down_rate))); + CMD2_DL ("d.down.total", std::bind(&torrent::Rate::total, CMD2_ON_INFO(down_rate))); + CMD2_DL ("d.skip.rate", std::bind(&torrent::Rate::rate, CMD2_ON_INFO(skip_rate))); + CMD2_DL ("d.skip.total", std::bind(&torrent::Rate::total, CMD2_ON_INFO(skip_rate))); CMD2_DL ("d.peer_exchange", CMD2_ON_INFO(is_pex_enabled)); - CMD2_DL_VALUE_V ("d.peer_exchange.set", tr1::bind(&torrent::Download::set_pex_enabled, CMD2_BIND_DL, tr1::placeholders::_2)); + CMD2_DL_VALUE_V ("d.peer_exchange.set", std::bind(&torrent::Download::set_pex_enabled, CMD2_BIND_DL, std::placeholders::_2)); - CMD2_DL_LIST ("d.create_link", tr1::bind(&apply_d_change_link, tr1::placeholders::_1, tr1::placeholders::_2, 0)); - CMD2_DL_LIST ("d.delete_link", tr1::bind(&apply_d_change_link, tr1::placeholders::_1, tr1::placeholders::_2, 1)); - CMD2_DL ("d.delete_tied", tr1::bind(&apply_d_delete_tied, tr1::placeholders::_1)); + CMD2_DL_LIST ("d.create_link", std::bind(&apply_d_change_link, std::placeholders::_1, std::placeholders::_2, 0)); + CMD2_DL_LIST ("d.delete_link", std::bind(&apply_d_change_link, std::placeholders::_1, std::placeholders::_2, 1)); + CMD2_DL ("d.delete_tied", std::bind(&apply_d_delete_tied, std::placeholders::_1)); CMD2_FUNC_SINGLE("d.start", "d.hashing_failed.set=0 ;view.set_visible=started"); CMD2_FUNC_SINGLE("d.stop", "view.set_visible=stopped"); @@ -676,36 +676,36 @@ initialize_command_download() { CMD2_DL ("d.is_open", CMD2_ON_INFO(is_open)); CMD2_DL ("d.is_active", CMD2_ON_INFO(is_active)); - CMD2_DL ("d.is_hash_checked", tr1::bind(&torrent::Download::is_hash_checked, CMD2_BIND_DL)); - CMD2_DL ("d.is_hash_checking", tr1::bind(&torrent::Download::is_hash_checking, CMD2_BIND_DL)); - CMD2_DL ("d.is_multi_file", tr1::bind(&torrent::FileList::is_multi_file, CMD2_BIND_FL)); + CMD2_DL ("d.is_hash_checked", std::bind(&torrent::Download::is_hash_checked, CMD2_BIND_DL)); + CMD2_DL ("d.is_hash_checking", std::bind(&torrent::Download::is_hash_checking, CMD2_BIND_DL)); + CMD2_DL ("d.is_multi_file", std::bind(&torrent::FileList::is_multi_file, CMD2_BIND_FL)); CMD2_DL ("d.is_private", CMD2_ON_INFO(is_private)); CMD2_DL ("d.is_pex_active", CMD2_ON_INFO(is_pex_active)); CMD2_DL ("d.is_partially_done", CMD2_ON_DATA(is_partially_done)); CMD2_DL ("d.is_not_partially_done", CMD2_ON_DATA(is_not_partially_done)); - CMD2_DL_V ("d.resume", tr1::bind(&core::DownloadList::resume_default, control->core()->download_list(), tr1::placeholders::_1)); - CMD2_DL_V ("d.pause", tr1::bind(&core::DownloadList::pause_default, control->core()->download_list(), tr1::placeholders::_1)); - CMD2_DL_V ("d.open", tr1::bind(&core::DownloadList::open_throw, control->core()->download_list(), tr1::placeholders::_1)); - CMD2_DL_V ("d.close", tr1::bind(&core::DownloadList::close_throw, control->core()->download_list(), tr1::placeholders::_1)); - CMD2_DL_V ("d.close.directly", tr1::bind(&core::DownloadList::close_directly, control->core()->download_list(), tr1::placeholders::_1)); - CMD2_DL_V ("d.erase", tr1::bind(&core::DownloadList::erase_ptr, control->core()->download_list(), tr1::placeholders::_1)); - CMD2_DL_V ("d.check_hash", tr1::bind(&core::DownloadList::check_hash, control->core()->download_list(), tr1::placeholders::_1)); + CMD2_DL_V ("d.resume", std::bind(&core::DownloadList::resume_default, control->core()->download_list(), std::placeholders::_1)); + CMD2_DL_V ("d.pause", std::bind(&core::DownloadList::pause_default, control->core()->download_list(), std::placeholders::_1)); + CMD2_DL_V ("d.open", std::bind(&core::DownloadList::open_throw, control->core()->download_list(), std::placeholders::_1)); + CMD2_DL_V ("d.close", std::bind(&core::DownloadList::close_throw, control->core()->download_list(), std::placeholders::_1)); + CMD2_DL_V ("d.close.directly", std::bind(&core::DownloadList::close_directly, control->core()->download_list(), std::placeholders::_1)); + CMD2_DL_V ("d.erase", std::bind(&core::DownloadList::erase_ptr, control->core()->download_list(), std::placeholders::_1)); + CMD2_DL_V ("d.check_hash", std::bind(&core::DownloadList::check_hash, control->core()->download_list(), std::placeholders::_1)); - CMD2_DL ("d.save_resume", tr1::bind(&core::DownloadStore::save_resume, control->core()->download_store(), tr1::placeholders::_1)); - CMD2_DL ("d.save_full_session", tr1::bind(&core::DownloadStore::save_full, control->core()->download_store(), tr1::placeholders::_1)); + CMD2_DL ("d.save_resume", std::bind(&core::DownloadStore::save_resume, control->core()->download_store(), std::placeholders::_1)); + CMD2_DL ("d.save_full_session", std::bind(&core::DownloadStore::save_full, control->core()->download_store(), std::placeholders::_1)); CMD2_DL_V ("d.update_priorities", CMD2_ON_DL(update_priorities)); - CMD2_DL_STRING_V("add_peer", tr1::bind(&apply_d_add_peer, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL_STRING_V("add_peer", std::bind(&apply_d_add_peer, std::placeholders::_1, std::placeholders::_2)); // // Custom settings: // - CMD2_DL_STRING("d.custom", tr1::bind(&retrieve_d_custom, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_STRING("d.custom_throw", tr1::bind(&retrieve_d_custom_throw, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_LIST ("d.custom.set", tr1::bind(&apply_d_custom, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL_STRING("d.custom", std::bind(&retrieve_d_custom, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_STRING("d.custom_throw", std::bind(&retrieve_d_custom_throw, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_LIST ("d.custom.set", std::bind(&apply_d_custom, std::placeholders::_1, std::placeholders::_2)); CMD2_DL_VAR_STRING_PUBLIC("d.custom1", "rtorrent", "custom1"); CMD2_DL_VAR_STRING_PUBLIC("d.custom2", "rtorrent", "custom2"); @@ -750,68 +750,68 @@ initialize_command_download() { CMD2_DL_TIMESTAMP("d.timestamp.started", "rtorrent", "timestamp.started"); CMD2_DL_TIMESTAMP("d.timestamp.finished", "rtorrent", "timestamp.finished"); - CMD2_DL ("d.connection_current", tr1::bind(&torrent::option_as_string, torrent::OPTION_CONNECTION_TYPE, CMD2_ON_DL(connection_type))); - CMD2_DL_STRING("d.connection_current.set", tr1::bind(&apply_d_connection_type, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL ("d.connection_current", std::bind(&torrent::option_as_string, torrent::OPTION_CONNECTION_TYPE, CMD2_ON_DL(connection_type))); + CMD2_DL_STRING("d.connection_current.set", std::bind(&apply_d_connection_type, std::placeholders::_1, std::placeholders::_2)); CMD2_DL_VAR_STRING("d.connection_leech", "rtorrent", "connection_leech"); CMD2_DL_VAR_STRING("d.connection_seed", "rtorrent", "connection_seed"); - CMD2_DL ("d.up.choke_heuristics", tr1::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, CMD2_ON_DL(upload_choke_heuristic))); - CMD2_DL_STRING("d.up.choke_heuristics.set", tr1::bind(&apply_d_choke_heuristics, tr1::placeholders::_1, tr1::placeholders::_2, false)); - CMD2_DL ("d.down.choke_heuristics", tr1::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, CMD2_ON_DL(download_choke_heuristic))); - CMD2_DL_STRING("d.down.choke_heuristics.set", tr1::bind(&apply_d_choke_heuristics, tr1::placeholders::_1, tr1::placeholders::_2, true)); + CMD2_DL ("d.up.choke_heuristics", std::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, CMD2_ON_DL(upload_choke_heuristic))); + CMD2_DL_STRING("d.up.choke_heuristics.set", std::bind(&apply_d_choke_heuristics, std::placeholders::_1, std::placeholders::_2, false)); + CMD2_DL ("d.down.choke_heuristics", std::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, CMD2_ON_DL(download_choke_heuristic))); + CMD2_DL_STRING("d.down.choke_heuristics.set", std::bind(&apply_d_choke_heuristics, std::placeholders::_1, std::placeholders::_2, true)); CMD2_DL_VAR_STRING("d.up.choke_heuristics.leech", "rtorrent", "choke_heuristics.up.leech"); CMD2_DL_VAR_STRING("d.up.choke_heuristics.seed", "rtorrent", "choke_heuristics.up.seed"); CMD2_DL_VAR_STRING("d.down.choke_heuristics.leech", "rtorrent", "choke_heuristics.down.leech"); CMD2_DL_VAR_STRING("d.down.choke_heuristics.seed", "rtorrent", "choke_heuristics.down.seed"); - CMD2_DL ("d.hashing_failed", tr1::bind(&core::Download::is_hash_failed, tr1::placeholders::_1)); - CMD2_DL_VALUE_V ("d.hashing_failed.set", tr1::bind(&core::Download::set_hash_failed, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL ("d.hashing_failed", std::bind(&core::Download::is_hash_failed, std::placeholders::_1)); + CMD2_DL_VALUE_V ("d.hashing_failed.set", std::bind(&core::Download::set_hash_failed, std::placeholders::_1, std::placeholders::_2)); - CMD2_DL ("d.views", tr1::bind(&download_get_variable, tr1::placeholders::_1, "rtorrent", "views")); - CMD2_DL ("d.views.has", tr1::bind(&d_list_has, tr1::placeholders::_1, tr1::placeholders::_2, "rtorrent", "views")); - CMD2_DL ("d.views.remove", tr1::bind(&d_list_remove, tr1::placeholders::_1, tr1::placeholders::_2, "rtorrent", "views")); - CMD2_DL ("d.views.push_back", tr1::bind(&d_list_push_back, tr1::placeholders::_1, tr1::placeholders::_2, "rtorrent", "views")); - CMD2_DL ("d.views.push_back_unique", tr1::bind(&d_list_push_back_unique, tr1::placeholders::_1, tr1::placeholders::_2, "rtorrent", "views")); + CMD2_DL ("d.views", std::bind(&download_get_variable, std::placeholders::_1, "rtorrent", "views")); + CMD2_DL ("d.views.has", std::bind(&d_list_has, std::placeholders::_1, std::placeholders::_2, "rtorrent", "views")); + CMD2_DL ("d.views.remove", std::bind(&d_list_remove, std::placeholders::_1, std::placeholders::_2, "rtorrent", "views")); + CMD2_DL ("d.views.push_back", std::bind(&d_list_push_back, std::placeholders::_1, std::placeholders::_2, "rtorrent", "views")); + CMD2_DL ("d.views.push_back_unique", std::bind(&d_list_push_back_unique, std::placeholders::_1, std::placeholders::_2, "rtorrent", "views")); // This command really needs to be improved, so we have proper // logging support. - CMD2_DL ("d.message", tr1::bind(&core::Download::message, tr1::placeholders::_1)); - CMD2_DL_STRING_V("d.message.set", tr1::bind(&core::Download::set_message, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL ("d.message", std::bind(&core::Download::message, std::placeholders::_1)); + CMD2_DL_STRING_V("d.message.set", std::bind(&core::Download::set_message, std::placeholders::_1, std::placeholders::_2)); CMD2_DL ("d.max_file_size", CMD2_ON_FL(max_file_size)); - CMD2_DL_VALUE_V ("d.max_file_size.set", tr1::bind(&torrent::FileList::set_max_file_size, CMD2_BIND_FL, tr1::placeholders::_2)); + CMD2_DL_VALUE_V ("d.max_file_size.set", std::bind(&torrent::FileList::set_max_file_size, CMD2_BIND_FL, std::placeholders::_2)); - CMD2_DL ("d.peers_min", tr1::bind(&torrent::ConnectionList::min_size, CMD2_BIND_CL)); - CMD2_DL_VALUE_V ("d.peers_min.set", tr1::bind(&torrent::ConnectionList::set_min_size, CMD2_BIND_CL, tr1::placeholders::_2)); - CMD2_DL ("d.peers_max", tr1::bind(&torrent::ConnectionList::max_size, CMD2_BIND_CL)); - CMD2_DL_VALUE_V ("d.peers_max.set", tr1::bind(&torrent::ConnectionList::set_max_size, CMD2_BIND_CL, tr1::placeholders::_2)); - CMD2_DL ("d.uploads_max", tr1::bind(&torrent::Download::uploads_max, CMD2_BIND_DL)); - CMD2_DL_VALUE_V ("d.uploads_max.set", tr1::bind(&torrent::Download::set_uploads_max, CMD2_BIND_DL, tr1::placeholders::_2)); - CMD2_DL ("d.uploads_min", tr1::bind(&torrent::Download::uploads_min, CMD2_BIND_DL)); - CMD2_DL_VALUE_V ("d.uploads_min.set", tr1::bind(&torrent::Download::set_uploads_min, CMD2_BIND_DL, tr1::placeholders::_2)); - CMD2_DL ("d.downloads_max", tr1::bind(&torrent::Download::downloads_max, CMD2_BIND_DL)); - CMD2_DL_VALUE_V ("d.downloads_max.set", tr1::bind(&torrent::Download::set_downloads_max, CMD2_BIND_DL, tr1::placeholders::_2)); - CMD2_DL ("d.downloads_min", tr1::bind(&torrent::Download::downloads_min, CMD2_BIND_DL)); - CMD2_DL_VALUE_V ("d.downloads_min.set", tr1::bind(&torrent::Download::set_downloads_min, CMD2_BIND_DL, tr1::placeholders::_2)); - CMD2_DL ("d.peers_connected", tr1::bind(&torrent::ConnectionList::size, CMD2_BIND_CL)); - CMD2_DL ("d.peers_not_connected", tr1::bind(&torrent::PeerList::available_list_size, CMD2_BIND_PL)); + CMD2_DL ("d.peers_min", std::bind(&torrent::ConnectionList::min_size, CMD2_BIND_CL)); + CMD2_DL_VALUE_V ("d.peers_min.set", std::bind(&torrent::ConnectionList::set_min_size, CMD2_BIND_CL, std::placeholders::_2)); + CMD2_DL ("d.peers_max", std::bind(&torrent::ConnectionList::max_size, CMD2_BIND_CL)); + CMD2_DL_VALUE_V ("d.peers_max.set", std::bind(&torrent::ConnectionList::set_max_size, CMD2_BIND_CL, std::placeholders::_2)); + CMD2_DL ("d.uploads_max", std::bind(&torrent::Download::uploads_max, CMD2_BIND_DL)); + CMD2_DL_VALUE_V ("d.uploads_max.set", std::bind(&torrent::Download::set_uploads_max, CMD2_BIND_DL, std::placeholders::_2)); + CMD2_DL ("d.uploads_min", std::bind(&torrent::Download::uploads_min, CMD2_BIND_DL)); + CMD2_DL_VALUE_V ("d.uploads_min.set", std::bind(&torrent::Download::set_uploads_min, CMD2_BIND_DL, std::placeholders::_2)); + CMD2_DL ("d.downloads_max", std::bind(&torrent::Download::downloads_max, CMD2_BIND_DL)); + CMD2_DL_VALUE_V ("d.downloads_max.set", std::bind(&torrent::Download::set_downloads_max, CMD2_BIND_DL, std::placeholders::_2)); + CMD2_DL ("d.downloads_min", std::bind(&torrent::Download::downloads_min, CMD2_BIND_DL)); + CMD2_DL_VALUE_V ("d.downloads_min.set", std::bind(&torrent::Download::set_downloads_min, CMD2_BIND_DL, std::placeholders::_2)); + CMD2_DL ("d.peers_connected", std::bind(&torrent::ConnectionList::size, CMD2_BIND_CL)); + CMD2_DL ("d.peers_not_connected", std::bind(&torrent::PeerList::available_list_size, CMD2_BIND_PL)); CMD2_DL ("d.peers_complete", CMD2_ON_DL(peers_complete)); CMD2_DL ("d.peers_accounted", CMD2_ON_DL(peers_accounted)); - CMD2_DL_V ("d.disconnect.seeders", tr1::bind(&torrent::ConnectionList::erase_seeders, CMD2_BIND_CL)); + CMD2_DL_V ("d.disconnect.seeders", std::bind(&torrent::ConnectionList::erase_seeders, CMD2_BIND_CL)); CMD2_DL ("d.accepting_seeders", CMD2_ON_INFO(is_accepting_seeders)); - CMD2_DL_V ("d.accepting_seeders.enable", tr1::bind(&torrent::DownloadInfo::public_set_flags, CMD2_BIND_INFO, torrent::DownloadInfo::flag_accepting_seeders)); - CMD2_DL_V ("d.accepting_seeders.disable", tr1::bind(&torrent::DownloadInfo::public_unset_flags, CMD2_BIND_INFO, torrent::DownloadInfo::flag_accepting_seeders)); + CMD2_DL_V ("d.accepting_seeders.enable", std::bind(&torrent::DownloadInfo::public_set_flags, CMD2_BIND_INFO, torrent::DownloadInfo::flag_accepting_seeders)); + CMD2_DL_V ("d.accepting_seeders.disable", std::bind(&torrent::DownloadInfo::public_unset_flags, CMD2_BIND_INFO, torrent::DownloadInfo::flag_accepting_seeders)); - CMD2_DL ("d.throttle_name", tr1::bind(&download_get_variable, tr1::placeholders::_1, "rtorrent", "throttle_name")); - CMD2_DL_STRING_V("d.throttle_name.set", tr1::bind(&core::Download::set_throttle_name, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL ("d.throttle_name", std::bind(&download_get_variable, std::placeholders::_1, "rtorrent", "throttle_name")); + CMD2_DL_STRING_V("d.throttle_name.set", std::bind(&core::Download::set_throttle_name, std::placeholders::_1, std::placeholders::_2)); CMD2_DL ("d.bytes_done", CMD2_ON_DL(bytes_done)); - CMD2_DL ("d.ratio", tr1::bind(&retrieve_d_ratio, tr1::placeholders::_1)); + CMD2_DL ("d.ratio", std::bind(&retrieve_d_ratio, std::placeholders::_1)); CMD2_DL ("d.chunks_hashed", CMD2_ON_DL(chunks_hashed)); CMD2_DL ("d.free_diskspace", CMD2_ON_FL(free_diskspace)); @@ -822,7 +822,7 @@ initialize_command_download() { CMD2_DL ("d.size_pex", CMD2_ON_DL(size_pex)); CMD2_DL ("d.max_size_pex", CMD2_ON_DL(max_size_pex)); - CMD2_DL ("d.chunks_seen", tr1::bind(&d_chunks_seen, tr1::placeholders::_1)); + CMD2_DL ("d.chunks_seen", std::bind(&d_chunks_seen, std::placeholders::_1)); CMD2_DL ("d.completed_bytes", CMD2_ON_FL(completed_bytes)); CMD2_DL ("d.completed_chunks", CMD2_ON_FL(completed_chunks)); @@ -830,42 +830,42 @@ initialize_command_download() { CMD2_DL ("d.wanted_chunks", CMD2_ON_DATA(wanted_chunks)); - CMD2_DL_V ("d.tracker_announce", tr1::bind(&torrent::Download::manual_request, CMD2_BIND_DL, false)); - CMD2_DL ("d.tracker_numwant", tr1::bind(&torrent::TrackerList::numwant, CMD2_BIND_TL)); - CMD2_DL_VALUE_V ("d.tracker_numwant.set", tr1::bind(&torrent::TrackerList::set_numwant, CMD2_BIND_TL, tr1::placeholders::_2)); + CMD2_DL_V ("d.tracker_announce", std::bind(&torrent::Download::manual_request, CMD2_BIND_DL, false)); + CMD2_DL ("d.tracker_numwant", std::bind(&torrent::TrackerList::numwant, CMD2_BIND_TL)); + CMD2_DL_VALUE_V ("d.tracker_numwant.set", std::bind(&torrent::TrackerList::set_numwant, CMD2_BIND_TL, std::placeholders::_2)); // TODO: Deprecate 'd.tracker_focus'. - CMD2_DL ("d.tracker_focus", tr1::bind(&core::Download::tracker_list_size, tr1::placeholders::_1)); - CMD2_DL ("d.tracker_size", tr1::bind(&core::Download::tracker_list_size, tr1::placeholders::_1)); + CMD2_DL ("d.tracker_focus", std::bind(&core::Download::tracker_list_size, std::placeholders::_1)); + CMD2_DL ("d.tracker_size", std::bind(&core::Download::tracker_list_size, std::placeholders::_1)); - CMD2_DL_LIST ("d.tracker.insert", tr1::bind(&download_tracker_insert, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_VALUE_V ("d.tracker.send_scrape", tr1::bind(&torrent::TrackerController::scrape_request, CMD2_BIND_TC, tr1::placeholders::_2)); + CMD2_DL_LIST ("d.tracker.insert", std::bind(&download_tracker_insert, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_VALUE_V ("d.tracker.send_scrape", std::bind(&torrent::TrackerController::scrape_request, CMD2_BIND_TC, std::placeholders::_2)); CMD2_DL ("d.directory", CMD2_ON_FL(root_dir)); - CMD2_DL_STRING_V("d.directory.set", tr1::bind(&apply_d_directory, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL_STRING_V("d.directory.set", std::bind(&apply_d_directory, std::placeholders::_1, std::placeholders::_2)); CMD2_DL ("d.directory_base", CMD2_ON_FL(root_dir)); - CMD2_DL_STRING_V("d.directory_base.set", tr1::bind(&core::Download::set_root_directory, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL_STRING_V("d.directory_base.set", std::bind(&core::Download::set_root_directory, std::placeholders::_1, std::placeholders::_2)); - CMD2_DL ("d.priority", tr1::bind(&core::Download::priority, tr1::placeholders::_1)); - CMD2_DL ("d.priority_str", tr1::bind(&retrieve_d_priority_str, tr1::placeholders::_1)); - CMD2_DL_VALUE_V ("d.priority.set", tr1::bind(&core::Download::set_priority, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL ("d.priority", std::bind(&core::Download::priority, std::placeholders::_1)); + CMD2_DL ("d.priority_str", std::bind(&retrieve_d_priority_str, std::placeholders::_1)); + CMD2_DL_VALUE_V ("d.priority.set", std::bind(&core::Download::set_priority, std::placeholders::_1, std::placeholders::_2)); - // CMD2_DL ("d.group", tr1::bind(&torrent::resource_manager_entry::group, - // tr1::bind(&torrent::ResourceManager::entry_at, torrent::resource_manager(), - // tr1::bind(&core::Download::main, tr1::placeholders::_1)))); + // CMD2_DL ("d.group", std::bind(&torrent::resource_manager_entry::group, + // std::bind(&torrent::ResourceManager::entry_at, torrent::resource_manager(), + // std::bind(&core::Download::main, std::placeholders::_1)))); - // CMD2_DL_V ("d.group.set", tr1::bind(&torrent::ResourceManager::set_group, + // CMD2_DL_V ("d.group.set", std::bind(&torrent::ResourceManager::set_group, // torrent::resource_manager(), - // tr1::bind(&torrent::ResourceManager::find_throw, torrent::resource_manager(), - // tr1::bind(&core::Download::main, tr1::placeholders::_1)), + // std::bind(&torrent::ResourceManager::find_throw, torrent::resource_manager(), + // std::bind(&core::Download::main, std::placeholders::_1)), // CG_GROUP_INDEX())); - CMD2_DL ("d.group", tr1::bind(&cg_d_group, tr1::placeholders::_1)); - CMD2_DL ("d.group.name", tr1::bind(&cg_d_group, tr1::placeholders::_1)); - CMD2_DL_V ("d.group.set", tr1::bind(&cg_d_group_set, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL ("d.group", std::bind(&cg_d_group, std::placeholders::_1)); + CMD2_DL ("d.group.name", std::bind(&cg_d_group, std::placeholders::_1)); + CMD2_DL_V ("d.group.set", std::bind(&cg_d_group_set, std::placeholders::_1, std::placeholders::_2)); - CMD2_DL_LIST ("f.multicall", tr1::bind(&f_multicall, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_LIST ("p.multicall", tr1::bind(&p_multicall, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_LIST ("t.multicall", tr1::bind(&t_multicall, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL_LIST ("f.multicall", std::bind(&f_multicall, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_LIST ("p.multicall", std::bind(&p_multicall, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_LIST ("t.multicall", std::bind(&t_multicall, std::placeholders::_1, std::placeholders::_2)); - CMD2_ANY_LIST ("p.call_target", tr1::bind(&p_call_target, tr1::placeholders::_2)); + CMD2_ANY_LIST ("p.call_target", std::bind(&p_call_target, std::placeholders::_2)); } diff --git a/src/command_dynamic.cc b/src/command_dynamic.cc index 7ec16fb4..3433f7f4 100644 --- a/src/command_dynamic.cc +++ b/src/command_dynamic.cc @@ -158,15 +158,15 @@ system_method_insert_object(const torrent::Object::list_type& args, int flags) { rpc::commands.insert_slot >::type> (create_new_key(rawKey), - tr1::bind(&rpc::object_storage::call_function_str, control->object_storage(), - rawKey, tr1::placeholders::_1, tr1::placeholders::_2), + std::bind(&rpc::object_storage::call_function_str, control->object_storage(), + rawKey, std::placeholders::_1, std::placeholders::_2), &rpc::command_base_call, cmd_flags, NULL, NULL); } else { rpc::commands.insert_slot >::type> (create_new_key(rawKey), - tr1::bind(&rpc::object_storage::get_str, control->object_storage(), rawKey), + std::bind(&rpc::object_storage::get_str, control->object_storage(), rawKey), &rpc::command_base_call, cmd_flags, NULL, NULL); } @@ -175,7 +175,7 @@ system_method_insert_object(const torrent::Object::list_type& args, int flags) { // if (flags & rpc::object_storage::flag_rlookup) { // rpc::commands.insert_slot >::type> // (create_new_key<9>(rawKey, ".rlookup"), - // tr1::bind(&rpc::object_storage::rlookup_obj_list, control->object_storage(), rawKey), + // std::bind(&rpc::object_storage::rlookup_obj_list, control->object_storage(), rawKey), // &rpc::command_base_call_string, // cmd_flags, NULL, NULL); // } @@ -189,21 +189,21 @@ system_method_insert_object(const torrent::Object::list_type& args, int flags) { case rpc::object_storage::flag_bool_type: rpc::commands.insert_slot >::type> (create_new_key<5>(rawKey, ".set"), - tr1::bind(&rpc::object_storage::set_str_bool, control->object_storage(), rawKey, tr1::placeholders::_2), + std::bind(&rpc::object_storage::set_str_bool, control->object_storage(), rawKey, std::placeholders::_2), &rpc::command_base_call_value, cmd_flags, NULL, NULL); break; case rpc::object_storage::flag_value_type: rpc::commands.insert_slot >::type> (create_new_key<5>(rawKey, ".set"), - tr1::bind(&rpc::object_storage::set_str_value, control->object_storage(), rawKey, tr1::placeholders::_2), + std::bind(&rpc::object_storage::set_str_value, control->object_storage(), rawKey, std::placeholders::_2), &rpc::command_base_call_value, cmd_flags, NULL, NULL); break; case rpc::object_storage::flag_string_type: rpc::commands.insert_slot >::type> (create_new_key<5>(rawKey, ".set"), - tr1::bind(&rpc::object_storage::set_str_string, control->object_storage(), rawKey, tr1::placeholders::_2), + std::bind(&rpc::object_storage::set_str_string, control->object_storage(), rawKey, std::placeholders::_2), &rpc::command_base_call_string, cmd_flags, NULL, NULL); break; @@ -434,38 +434,38 @@ cmd_catch(rpc::target_type target, const torrent::Object& args) { } #define CMD2_METHOD_INSERT(key, flags) \ - CMD2_ANY_LIST(key, tr1::bind(&system_method_insert_object, tr1::placeholders::_2, flags)); + CMD2_ANY_LIST(key, std::bind(&system_method_insert_object, std::placeholders::_2, flags)); void initialize_command_dynamic() { CMD2_VAR_BOOL ("method.use_deprecated", true); CMD2_VAR_VALUE ("method.use_intermediate", 1); - CMD2_ANY_LIST ("method.insert", tr1::bind(&system_method_insert, tr1::placeholders::_2)); - CMD2_ANY_LIST ("method.insert.value", tr1::bind(&system_method_insert_object, tr1::placeholders::_2, rpc::object_storage::flag_value_type)); + CMD2_ANY_LIST ("method.insert", std::bind(&system_method_insert, std::placeholders::_2)); + CMD2_ANY_LIST ("method.insert.value", std::bind(&system_method_insert_object, std::placeholders::_2, rpc::object_storage::flag_value_type)); CMD2_METHOD_INSERT("method.insert.simple", rpc::object_storage::flag_function_type); CMD2_METHOD_INSERT("method.insert.c_simple", rpc::object_storage::flag_constant | rpc::object_storage::flag_function_type); CMD2_METHOD_INSERT("method.insert.s_c_simple", rpc::object_storage::flag_static | rpc::object_storage::flag_constant |rpc::object_storage::flag_function_type); - CMD2_ANY_STRING ("method.erase", tr1::bind(&system_method_erase, tr1::placeholders::_2)); - CMD2_ANY_LIST ("method.redirect", tr1::bind(&system_method_redirect, tr1::placeholders::_2)); - CMD2_ANY_STRING ("method.get", tr1::bind(&rpc::object_storage::get_str, control->object_storage(), - tr1::placeholders::_2)); - CMD2_ANY_LIST ("method.set", tr1::bind(&system_method_set_function, tr1::placeholders::_2)); + CMD2_ANY_STRING ("method.erase", std::bind(&system_method_erase, std::placeholders::_2)); + CMD2_ANY_LIST ("method.redirect", std::bind(&system_method_redirect, std::placeholders::_2)); + CMD2_ANY_STRING ("method.get", std::bind(&rpc::object_storage::get_str, control->object_storage(), + std::placeholders::_2)); + CMD2_ANY_LIST ("method.set", std::bind(&system_method_set_function, std::placeholders::_2)); - CMD2_ANY_STRING ("method.const", tr1::bind(&rpc::object_storage::has_flag_str, control->object_storage(), - tr1::placeholders::_2, rpc::object_storage::flag_constant)); - CMD2_ANY_STRING_V("method.const.enable", tr1::bind(&rpc::object_storage::enable_flag_str, control->object_storage(), - tr1::placeholders::_2, rpc::object_storage::flag_constant)); + CMD2_ANY_STRING ("method.const", std::bind(&rpc::object_storage::has_flag_str, control->object_storage(), + std::placeholders::_2, rpc::object_storage::flag_constant)); + CMD2_ANY_STRING_V("method.const.enable", std::bind(&rpc::object_storage::enable_flag_str, control->object_storage(), + std::placeholders::_2, rpc::object_storage::flag_constant)); - CMD2_ANY_LIST ("method.has_key", tr1::bind(&system_method_has_key, tr1::placeholders::_2)); - CMD2_ANY_LIST ("method.set_key", tr1::bind(&system_method_set_key, tr1::placeholders::_2)); - CMD2_ANY_STRING ("method.list_keys", tr1::bind(&system_method_list_keys, tr1::placeholders::_2)); + CMD2_ANY_LIST ("method.has_key", std::bind(&system_method_has_key, std::placeholders::_2)); + CMD2_ANY_LIST ("method.set_key", std::bind(&system_method_set_key, std::placeholders::_2)); + CMD2_ANY_STRING ("method.list_keys", std::bind(&system_method_list_keys, std::placeholders::_2)); - CMD2_ANY_STRING ("method.rlookup", tr1::bind(&rpc::object_storage::rlookup_obj_list, control->object_storage(), tr1::placeholders::_2)); - CMD2_ANY_STRING_V("method.rlookup.clear", tr1::bind(&rpc::object_storage::rlookup_clear, control->object_storage(), tr1::placeholders::_2)); + CMD2_ANY_STRING ("method.rlookup", std::bind(&rpc::object_storage::rlookup_obj_list, control->object_storage(), std::placeholders::_2)); + CMD2_ANY_STRING_V("method.rlookup.clear", std::bind(&rpc::object_storage::rlookup_clear, control->object_storage(), std::placeholders::_2)); - CMD2_ANY ("catch", tr1::bind(&cmd_catch, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_ANY ("catch", std::bind(&cmd_catch, std::placeholders::_1, std::placeholders::_2)); } diff --git a/src/command_events.cc b/src/command_events.cc index c66fb627..d0e05e0f 100644 --- a/src/command_events.cc +++ b/src/command_events.cc @@ -307,31 +307,31 @@ d_multicall(const torrent::Object::list_type& args) { void initialize_command_events() { - CMD2_ANY_STRING ("on_ratio", tr1::bind(&apply_on_ratio, tr1::placeholders::_2)); + CMD2_ANY_STRING ("on_ratio", std::bind(&apply_on_ratio, std::placeholders::_2)); - CMD2_ANY ("start_tied", tr1::bind(&apply_start_tied)); - CMD2_ANY ("stop_untied", tr1::bind(&apply_stop_untied)); - CMD2_ANY ("close_untied", tr1::bind(&apply_close_untied)); - CMD2_ANY ("remove_untied", tr1::bind(&apply_remove_untied)); + CMD2_ANY ("start_tied", std::bind(&apply_start_tied)); + CMD2_ANY ("stop_untied", std::bind(&apply_stop_untied)); + CMD2_ANY ("close_untied", std::bind(&apply_close_untied)); + CMD2_ANY ("remove_untied", std::bind(&apply_remove_untied)); - CMD2_ANY_LIST ("schedule2", tr1::bind(&apply_schedule, tr1::placeholders::_2)); - CMD2_ANY_STRING_V("schedule_remove2", tr1::bind(&rpc::CommandScheduler::erase_str, control->command_scheduler(), tr1::placeholders::_2)); + CMD2_ANY_LIST ("schedule2", std::bind(&apply_schedule, std::placeholders::_2)); + CMD2_ANY_STRING_V("schedule_remove2", std::bind(&rpc::CommandScheduler::erase_str, control->command_scheduler(), std::placeholders::_2)); - CMD2_ANY_STRING_V("import", tr1::bind(&apply_import, tr1::placeholders::_2)); - CMD2_ANY_STRING_V("try_import", tr1::bind(&apply_try_import, tr1::placeholders::_2)); + CMD2_ANY_STRING_V("import", std::bind(&apply_import, std::placeholders::_2)); + CMD2_ANY_STRING_V("try_import", std::bind(&apply_try_import, std::placeholders::_2)); - CMD2_ANY_LIST ("load.normal", tr1::bind(&apply_load, tr1::placeholders::_2, core::Manager::create_quiet | core::Manager::create_tied)); - CMD2_ANY_LIST ("load.verbose", tr1::bind(&apply_load, tr1::placeholders::_2, core::Manager::create_tied)); - CMD2_ANY_LIST ("load.start", tr1::bind(&apply_load, tr1::placeholders::_2, + CMD2_ANY_LIST ("load.normal", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_quiet | core::Manager::create_tied)); + CMD2_ANY_LIST ("load.verbose", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_tied)); + CMD2_ANY_LIST ("load.start", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_quiet | core::Manager::create_tied | core::Manager::create_start)); - CMD2_ANY_LIST ("load.start_verbose", tr1::bind(&apply_load, tr1::placeholders::_2, core::Manager::create_tied | core::Manager::create_start)); - CMD2_ANY_LIST ("load.raw", tr1::bind(&apply_load, tr1::placeholders::_2, core::Manager::create_quiet | core::Manager::create_raw_data)); - CMD2_ANY_LIST ("load.raw_verbose", tr1::bind(&apply_load, tr1::placeholders::_2, core::Manager::create_raw_data)); - CMD2_ANY_LIST ("load.raw_start", tr1::bind(&apply_load, tr1::placeholders::_2, + CMD2_ANY_LIST ("load.start_verbose", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_tied | core::Manager::create_start)); + CMD2_ANY_LIST ("load.raw", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_quiet | core::Manager::create_raw_data)); + CMD2_ANY_LIST ("load.raw_verbose", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_raw_data)); + CMD2_ANY_LIST ("load.raw_start", std::bind(&apply_load, std::placeholders::_2, core::Manager::create_quiet | core::Manager::create_start | core::Manager::create_raw_data)); - CMD2_ANY_VALUE ("close_low_diskspace", tr1::bind(&apply_close_low_diskspace, tr1::placeholders::_2)); + CMD2_ANY_VALUE ("close_low_diskspace", std::bind(&apply_close_low_diskspace, std::placeholders::_2)); - CMD2_ANY_LIST ("download_list", tr1::bind(&apply_download_list, tr1::placeholders::_2)); - CMD2_ANY_LIST ("d.multicall2", tr1::bind(&d_multicall, tr1::placeholders::_2)); + CMD2_ANY_LIST ("download_list", std::bind(&apply_download_list, std::placeholders::_2)); + CMD2_ANY_LIST ("d.multicall2", std::bind(&d_multicall, std::placeholders::_2)); } diff --git a/src/command_file.cc b/src/command_file.cc index 3be10a66..9852ad20 100644 --- a/src/command_file.cc +++ b/src/command_file.cc @@ -100,45 +100,45 @@ apply_fi_filename_last(torrent::FileListIterator* itr) { void initialize_command_file() { - CMD2_FILE("f.is_created", tr1::bind(&torrent::File::is_created, tr1::placeholders::_1)); - CMD2_FILE("f.is_open", tr1::bind(&torrent::File::is_open, tr1::placeholders::_1)); + CMD2_FILE("f.is_created", std::bind(&torrent::File::is_created, std::placeholders::_1)); + CMD2_FILE("f.is_open", std::bind(&torrent::File::is_open, std::placeholders::_1)); - CMD2_FILE("f.is_create_queued", tr1::bind(&torrent::File::is_create_queued, tr1::placeholders::_1)); - CMD2_FILE("f.is_resize_queued", tr1::bind(&torrent::File::is_resize_queued, tr1::placeholders::_1)); + CMD2_FILE("f.is_create_queued", std::bind(&torrent::File::is_create_queued, std::placeholders::_1)); + CMD2_FILE("f.is_resize_queued", std::bind(&torrent::File::is_resize_queued, std::placeholders::_1)); - CMD2_FILE_VALUE_V("f.set_create_queued", tr1::bind(&torrent::File::set_flags, tr1::placeholders::_1, torrent::File::flag_create_queued)); - CMD2_FILE_VALUE_V("f.set_resize_queued", tr1::bind(&torrent::File::set_flags, tr1::placeholders::_1, torrent::File::flag_resize_queued)); - CMD2_FILE_VALUE_V("f.unset_create_queued", tr1::bind(&torrent::File::unset_flags, tr1::placeholders::_1, torrent::File::flag_create_queued)); - CMD2_FILE_VALUE_V("f.unset_resize_queued", tr1::bind(&torrent::File::unset_flags, tr1::placeholders::_1, torrent::File::flag_resize_queued)); + CMD2_FILE_VALUE_V("f.set_create_queued", std::bind(&torrent::File::set_flags, std::placeholders::_1, torrent::File::flag_create_queued)); + CMD2_FILE_VALUE_V("f.set_resize_queued", std::bind(&torrent::File::set_flags, std::placeholders::_1, torrent::File::flag_resize_queued)); + CMD2_FILE_VALUE_V("f.unset_create_queued", std::bind(&torrent::File::unset_flags, std::placeholders::_1, torrent::File::flag_create_queued)); + CMD2_FILE_VALUE_V("f.unset_resize_queued", std::bind(&torrent::File::unset_flags, std::placeholders::_1, torrent::File::flag_resize_queued)); - CMD2_FILE ("f.prioritize_first", tr1::bind(&torrent::File::has_flags, tr1::placeholders::_1, torrent::File::flag_prioritize_first)); - CMD2_FILE_V("f.prioritize_first.enable", tr1::bind(&torrent::File::set_flags, tr1::placeholders::_1, torrent::File::flag_prioritize_first)); - CMD2_FILE_V("f.prioritize_first.disable", tr1::bind(&torrent::File::unset_flags, tr1::placeholders::_1, torrent::File::flag_prioritize_first)); - CMD2_FILE ("f.prioritize_last", tr1::bind(&torrent::File::has_flags, tr1::placeholders::_1, torrent::File::flag_prioritize_last)); - CMD2_FILE_V("f.prioritize_last.enable", tr1::bind(&torrent::File::set_flags, tr1::placeholders::_1, torrent::File::flag_prioritize_last)); - CMD2_FILE_V("f.prioritize_last.disable", tr1::bind(&torrent::File::unset_flags, tr1::placeholders::_1, torrent::File::flag_prioritize_last)); + CMD2_FILE ("f.prioritize_first", std::bind(&torrent::File::has_flags, std::placeholders::_1, torrent::File::flag_prioritize_first)); + CMD2_FILE_V("f.prioritize_first.enable", std::bind(&torrent::File::set_flags, std::placeholders::_1, torrent::File::flag_prioritize_first)); + CMD2_FILE_V("f.prioritize_first.disable", std::bind(&torrent::File::unset_flags, std::placeholders::_1, torrent::File::flag_prioritize_first)); + CMD2_FILE ("f.prioritize_last", std::bind(&torrent::File::has_flags, std::placeholders::_1, torrent::File::flag_prioritize_last)); + CMD2_FILE_V("f.prioritize_last.enable", std::bind(&torrent::File::set_flags, std::placeholders::_1, torrent::File::flag_prioritize_last)); + CMD2_FILE_V("f.prioritize_last.disable", std::bind(&torrent::File::unset_flags, std::placeholders::_1, torrent::File::flag_prioritize_last)); - CMD2_FILE("f.size_bytes", tr1::bind(&torrent::File::size_bytes, tr1::placeholders::_1)); - CMD2_FILE("f.size_chunks", tr1::bind(&torrent::File::size_chunks, tr1::placeholders::_1)); - CMD2_FILE("f.completed_chunks", tr1::bind(&torrent::File::completed_chunks, tr1::placeholders::_1)); + CMD2_FILE("f.size_bytes", std::bind(&torrent::File::size_bytes, std::placeholders::_1)); + CMD2_FILE("f.size_chunks", std::bind(&torrent::File::size_chunks, std::placeholders::_1)); + CMD2_FILE("f.completed_chunks", std::bind(&torrent::File::completed_chunks, std::placeholders::_1)); - CMD2_FILE("f.offset", tr1::bind(&torrent::File::offset, tr1::placeholders::_1)); - CMD2_FILE("f.range_first", tr1::bind(&torrent::File::range_first, tr1::placeholders::_1)); - CMD2_FILE("f.range_second", tr1::bind(&torrent::File::range_second, tr1::placeholders::_1)); + CMD2_FILE("f.offset", std::bind(&torrent::File::offset, std::placeholders::_1)); + CMD2_FILE("f.range_first", std::bind(&torrent::File::range_first, std::placeholders::_1)); + CMD2_FILE("f.range_second", std::bind(&torrent::File::range_second, std::placeholders::_1)); - CMD2_FILE("f.priority", tr1::bind(&torrent::File::priority, tr1::placeholders::_1)); - CMD2_FILE_VALUE_V("f.priority.set", tr1::bind(&apply_f_set_priority, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_FILE("f.priority", std::bind(&torrent::File::priority, std::placeholders::_1)); + CMD2_FILE_VALUE_V("f.priority.set", std::bind(&apply_f_set_priority, std::placeholders::_1, std::placeholders::_2)); - CMD2_FILE("f.path", tr1::bind(&apply_f_path, tr1::placeholders::_1)); - CMD2_FILE("f.path_components", tr1::bind(&apply_f_path_components, tr1::placeholders::_1)); - CMD2_FILE("f.path_depth", tr1::bind(&apply_f_path_depth, tr1::placeholders::_1)); - CMD2_FILE("f.frozen_path", tr1::bind(&torrent::File::frozen_path, tr1::placeholders::_1)); + CMD2_FILE("f.path", std::bind(&apply_f_path, std::placeholders::_1)); + CMD2_FILE("f.path_components", std::bind(&apply_f_path_components, std::placeholders::_1)); + CMD2_FILE("f.path_depth", std::bind(&apply_f_path_depth, std::placeholders::_1)); + CMD2_FILE("f.frozen_path", std::bind(&torrent::File::frozen_path, std::placeholders::_1)); - CMD2_FILE("f.match_depth_prev", tr1::bind(&torrent::File::match_depth_prev, tr1::placeholders::_1)); - CMD2_FILE("f.match_depth_next", tr1::bind(&torrent::File::match_depth_next, tr1::placeholders::_1)); + CMD2_FILE("f.match_depth_prev", std::bind(&torrent::File::match_depth_prev, std::placeholders::_1)); + CMD2_FILE("f.match_depth_next", std::bind(&torrent::File::match_depth_next, std::placeholders::_1)); - CMD2_FILE("f.last_touched", tr1::bind(&torrent::File::last_touched, tr1::placeholders::_1)); + CMD2_FILE("f.last_touched", std::bind(&torrent::File::last_touched, std::placeholders::_1)); - CMD2_FILEITR("fi.filename_last", tr1::bind(&apply_fi_filename_last, tr1::placeholders::_1)); - CMD2_FILEITR("fi.is_file", tr1::bind(&torrent::FileListIterator::is_file, tr1::placeholders::_1)); + CMD2_FILEITR("fi.filename_last", std::bind(&apply_fi_filename_last, std::placeholders::_1)); + CMD2_FILEITR("fi.is_file", std::bind(&torrent::FileListIterator::is_file, std::placeholders::_1)); } diff --git a/src/command_groups.cc b/src/command_groups.cc index bb15e9b0..6440564a 100644 --- a/src/command_groups.cc +++ b/src/command_groups.cc @@ -264,8 +264,8 @@ apply_cg_tracker_mode_set(const torrent::Object::list_type& args) { return torrent::Object(); } -#define CG_GROUP_AT() tr1::bind(&cg_get_group, tr1::placeholders::_2) -#define CHOKE_GROUP(direction) tr1::bind(direction, CG_GROUP_AT()) +#define CG_GROUP_AT() std::bind(&cg_get_group, std::placeholders::_2) +#define CHOKE_GROUP(direction) std::bind(direction, CG_GROUP_AT()) /* @@ -336,54 +336,54 @@ options. void initialize_command_groups() { // Move somewhere else? - CMD2_ANY ("strings.choke_heuristics", tr1::bind(&torrent::option_list_strings, torrent::OPTION_CHOKE_HEURISTICS)); - CMD2_ANY ("strings.choke_heuristics.upload", tr1::bind(&torrent::option_list_strings, torrent::OPTION_CHOKE_HEURISTICS_UPLOAD)); - CMD2_ANY ("strings.choke_heuristics.download", tr1::bind(&torrent::option_list_strings, torrent::OPTION_CHOKE_HEURISTICS_DOWNLOAD)); - CMD2_ANY ("strings.tracker_mode", tr1::bind(&torrent::option_list_strings, torrent::OPTION_TRACKER_MODE)); + CMD2_ANY ("strings.choke_heuristics", std::bind(&torrent::option_list_strings, torrent::OPTION_CHOKE_HEURISTICS)); + CMD2_ANY ("strings.choke_heuristics.upload", std::bind(&torrent::option_list_strings, torrent::OPTION_CHOKE_HEURISTICS_UPLOAD)); + CMD2_ANY ("strings.choke_heuristics.download", std::bind(&torrent::option_list_strings, torrent::OPTION_CHOKE_HEURISTICS_DOWNLOAD)); + CMD2_ANY ("strings.tracker_mode", std::bind(&torrent::option_list_strings, torrent::OPTION_TRACKER_MODE)); - CMD2_ANY ("choke_group.list", tr1::bind(&apply_cg_list)); - CMD2_ANY_STRING ("choke_group.insert", tr1::bind(&apply_cg_insert, tr1::placeholders::_2)); + CMD2_ANY ("choke_group.list", std::bind(&apply_cg_list)); + CMD2_ANY_STRING ("choke_group.insert", std::bind(&apply_cg_insert, std::placeholders::_2)); #if USE_CHOKE_GROUP - CMD2_ANY ("choke_group.size", tr1::bind(&torrent::ResourceManager::group_size, torrent::resource_manager())); - CMD2_ANY_STRING ("choke_group.index_of", tr1::bind(&torrent::ResourceManager::group_index_of, torrent::resource_manager(), tr1::placeholders::_2)); + CMD2_ANY ("choke_group.size", std::bind(&torrent::ResourceManager::group_size, torrent::resource_manager())); + CMD2_ANY_STRING ("choke_group.index_of", std::bind(&torrent::ResourceManager::group_index_of, torrent::resource_manager(), std::placeholders::_2)); #else apply_cg_insert("default"); - CMD2_ANY ("choke_group.size", tr1::bind(&std::vector::size, cg_list_hack)); - CMD2_ANY_STRING ("choke_group.index_of", tr1::bind(&apply_cg_index_of, tr1::placeholders::_2)); + CMD2_ANY ("choke_group.size", std::bind(&std::vector::size, cg_list_hack)); + CMD2_ANY_STRING ("choke_group.index_of", std::bind(&apply_cg_index_of, std::placeholders::_2)); #endif // Commands specific for a group. Supports as the first argument the // name, the index or a negative index. - CMD2_ANY ("choke_group.general.size", tr1::bind(&torrent::choke_group::size, CG_GROUP_AT())); + CMD2_ANY ("choke_group.general.size", std::bind(&torrent::choke_group::size, CG_GROUP_AT())); - CMD2_ANY ("choke_group.tracker.mode", tr1::bind(&torrent::option_as_string, torrent::OPTION_TRACKER_MODE, - tr1::bind(&torrent::choke_group::tracker_mode, CG_GROUP_AT()))); - CMD2_ANY_LIST ("choke_group.tracker.mode.set", tr1::bind(&apply_cg_tracker_mode_set, tr1::placeholders::_2)); + CMD2_ANY ("choke_group.tracker.mode", std::bind(&torrent::option_as_string, torrent::OPTION_TRACKER_MODE, + std::bind(&torrent::choke_group::tracker_mode, CG_GROUP_AT()))); + CMD2_ANY_LIST ("choke_group.tracker.mode.set", std::bind(&apply_cg_tracker_mode_set, std::placeholders::_2)); - CMD2_ANY ("choke_group.up.rate", tr1::bind(&torrent::choke_group::up_rate, CG_GROUP_AT())); - CMD2_ANY ("choke_group.down.rate", tr1::bind(&torrent::choke_group::down_rate, CG_GROUP_AT())); + CMD2_ANY ("choke_group.up.rate", std::bind(&torrent::choke_group::up_rate, CG_GROUP_AT())); + CMD2_ANY ("choke_group.down.rate", std::bind(&torrent::choke_group::down_rate, CG_GROUP_AT())); - CMD2_ANY ("choke_group.up.max.unlimited", tr1::bind(&torrent::choke_queue::is_unlimited, CHOKE_GROUP(&torrent::choke_group::up_queue))); - CMD2_ANY ("choke_group.up.max", tr1::bind(&torrent::choke_queue::max_unchoked_signed, CHOKE_GROUP(&torrent::choke_group::up_queue))); - CMD2_ANY_LIST ("choke_group.up.max.set", tr1::bind(&apply_cg_max_set, tr1::placeholders::_2, true)); + CMD2_ANY ("choke_group.up.max.unlimited", std::bind(&torrent::choke_queue::is_unlimited, CHOKE_GROUP(&torrent::choke_group::up_queue))); + CMD2_ANY ("choke_group.up.max", std::bind(&torrent::choke_queue::max_unchoked_signed, CHOKE_GROUP(&torrent::choke_group::up_queue))); + CMD2_ANY_LIST ("choke_group.up.max.set", std::bind(&apply_cg_max_set, std::placeholders::_2, true)); - CMD2_ANY ("choke_group.up.total", tr1::bind(&torrent::choke_queue::size_total, CHOKE_GROUP(&torrent::choke_group::up_queue))); - CMD2_ANY ("choke_group.up.queued", tr1::bind(&torrent::choke_queue::size_queued, CHOKE_GROUP(&torrent::choke_group::up_queue))); - CMD2_ANY ("choke_group.up.unchoked", tr1::bind(&torrent::choke_queue::size_unchoked, CHOKE_GROUP(&torrent::choke_group::up_queue))); - CMD2_ANY ("choke_group.up.heuristics", tr1::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, - tr1::bind(&torrent::choke_queue::heuristics, CHOKE_GROUP(&torrent::choke_group::up_queue)))); - CMD2_ANY_LIST ("choke_group.up.heuristics.set", tr1::bind(&apply_cg_heuristics_set, tr1::placeholders::_2, true)); + CMD2_ANY ("choke_group.up.total", std::bind(&torrent::choke_queue::size_total, CHOKE_GROUP(&torrent::choke_group::up_queue))); + CMD2_ANY ("choke_group.up.queued", std::bind(&torrent::choke_queue::size_queued, CHOKE_GROUP(&torrent::choke_group::up_queue))); + CMD2_ANY ("choke_group.up.unchoked", std::bind(&torrent::choke_queue::size_unchoked, CHOKE_GROUP(&torrent::choke_group::up_queue))); + CMD2_ANY ("choke_group.up.heuristics", std::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, + std::bind(&torrent::choke_queue::heuristics, CHOKE_GROUP(&torrent::choke_group::up_queue)))); + CMD2_ANY_LIST ("choke_group.up.heuristics.set", std::bind(&apply_cg_heuristics_set, std::placeholders::_2, true)); - CMD2_ANY ("choke_group.down.max.unlimited", tr1::bind(&torrent::choke_queue::is_unlimited, CHOKE_GROUP(&torrent::choke_group::down_queue))); - CMD2_ANY ("choke_group.down.max", tr1::bind(&torrent::choke_queue::max_unchoked_signed, CHOKE_GROUP(&torrent::choke_group::down_queue))); - CMD2_ANY_LIST ("choke_group.down.max.set", tr1::bind(&apply_cg_max_set, tr1::placeholders::_2, false)); + CMD2_ANY ("choke_group.down.max.unlimited", std::bind(&torrent::choke_queue::is_unlimited, CHOKE_GROUP(&torrent::choke_group::down_queue))); + CMD2_ANY ("choke_group.down.max", std::bind(&torrent::choke_queue::max_unchoked_signed, CHOKE_GROUP(&torrent::choke_group::down_queue))); + CMD2_ANY_LIST ("choke_group.down.max.set", std::bind(&apply_cg_max_set, std::placeholders::_2, false)); - CMD2_ANY ("choke_group.down.total", tr1::bind(&torrent::choke_queue::size_total, CHOKE_GROUP(&torrent::choke_group::down_queue))); - CMD2_ANY ("choke_group.down.queued", tr1::bind(&torrent::choke_queue::size_queued, CHOKE_GROUP(&torrent::choke_group::down_queue))); - CMD2_ANY ("choke_group.down.unchoked", tr1::bind(&torrent::choke_queue::size_unchoked, CHOKE_GROUP(&torrent::choke_group::down_queue))); - CMD2_ANY ("choke_group.down.heuristics", tr1::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, - tr1::bind(&torrent::choke_queue::heuristics, CHOKE_GROUP(&torrent::choke_group::down_queue)))); - CMD2_ANY_LIST ("choke_group.down.heuristics.set", tr1::bind(&apply_cg_heuristics_set, tr1::placeholders::_2, false)); + CMD2_ANY ("choke_group.down.total", std::bind(&torrent::choke_queue::size_total, CHOKE_GROUP(&torrent::choke_group::down_queue))); + CMD2_ANY ("choke_group.down.queued", std::bind(&torrent::choke_queue::size_queued, CHOKE_GROUP(&torrent::choke_group::down_queue))); + CMD2_ANY ("choke_group.down.unchoked", std::bind(&torrent::choke_queue::size_unchoked, CHOKE_GROUP(&torrent::choke_group::down_queue))); + CMD2_ANY ("choke_group.down.heuristics", std::bind(&torrent::option_as_string, torrent::OPTION_CHOKE_HEURISTICS, + std::bind(&torrent::choke_queue::heuristics, CHOKE_GROUP(&torrent::choke_group::down_queue)))); + CMD2_ANY_LIST ("choke_group.down.heuristics.set", std::bind(&apply_cg_heuristics_set, std::placeholders::_2, false)); } diff --git a/src/command_helpers.h b/src/command_helpers.h index 022a1b43..a104fbbc 100644 --- a/src/command_helpers.h +++ b/src/command_helpers.h @@ -41,8 +41,6 @@ #include "rpc/parse_commands.h" #include "rpc/object_storage.h" -namespace tr1 { using namespace std::tr1; } - void initialize_commands(); // @@ -100,43 +98,43 @@ void initialize_commands(); #define CMD2_VAR_BOOL(key, value) \ control->object_storage()->insert_c_str(key, int64_t(value), rpc::object_storage::flag_bool_type); \ - CMD2_ANY(key, tr1::bind(&rpc::object_storage::get, control->object_storage(), \ + CMD2_ANY(key, std::bind(&rpc::object_storage::get, control->object_storage(), \ torrent::raw_string::from_c_str(key))); \ - CMD2_ANY_VALUE(key ".set", tr1::bind(&rpc::object_storage::set_bool, control->object_storage(), \ - torrent::raw_string::from_c_str(key), tr1::placeholders::_2)); + CMD2_ANY_VALUE(key ".set", std::bind(&rpc::object_storage::set_bool, control->object_storage(), \ + torrent::raw_string::from_c_str(key), std::placeholders::_2)); #define CMD2_VAR_VALUE(key, value) \ control->object_storage()->insert_c_str(key, int64_t(value), rpc::object_storage::flag_value_type); \ - CMD2_ANY(key, tr1::bind(&rpc::object_storage::get, control->object_storage(), \ + CMD2_ANY(key, std::bind(&rpc::object_storage::get, control->object_storage(), \ torrent::raw_string::from_c_str(key))); \ - CMD2_ANY_VALUE(key ".set", tr1::bind(&rpc::object_storage::set_value, control->object_storage(), \ - torrent::raw_string::from_c_str(key), tr1::placeholders::_2)); + CMD2_ANY_VALUE(key ".set", std::bind(&rpc::object_storage::set_value, control->object_storage(), \ + torrent::raw_string::from_c_str(key), std::placeholders::_2)); #define CMD2_VAR_STRING(key, value) \ control->object_storage()->insert_c_str(key, value, rpc::object_storage::flag_string_type); \ - CMD2_ANY(key, tr1::bind(&rpc::object_storage::get, control->object_storage(), \ + CMD2_ANY(key, std::bind(&rpc::object_storage::get, control->object_storage(), \ torrent::raw_string::from_c_str(key))); \ - CMD2_ANY_STRING(key ".set", tr1::bind(&rpc::object_storage::set_string, control->object_storage(), \ - torrent::raw_string::from_c_str(key), tr1::placeholders::_2)); + CMD2_ANY_STRING(key ".set", std::bind(&rpc::object_storage::set_string, control->object_storage(), \ + torrent::raw_string::from_c_str(key), std::placeholders::_2)); #define CMD2_VAR_C_STRING(key, value) \ control->object_storage()->insert_c_str(key, value, rpc::object_storage::flag_string_type); \ - CMD2_ANY(key, tr1::bind(&rpc::object_storage::get, control->object_storage(), \ + CMD2_ANY(key, std::bind(&rpc::object_storage::get, control->object_storage(), \ torrent::raw_string::from_c_str(key))); #define CMD2_VAR_LIST(key) \ control->object_storage()->insert_c_str(key, torrent::Object::create_list(), rpc::object_storage::flag_list_type); \ - CMD2_ANY(key, tr1::bind(&rpc::object_storage::get, control->object_storage(), \ + CMD2_ANY(key, std::bind(&rpc::object_storage::get, control->object_storage(), \ torrent::raw_string::from_c_str(key))); \ - CMD2_ANY_LIST(key ".set", tr1::bind(&rpc::object_storage::set_list, control->object_storage(), \ - torrent::raw_string::from_c_str(key), tr1::placeholders::_2)); \ - CMD2_ANY_VOID(key ".push_back", tr1::bind(&rpc::object_storage::list_push_back, control->object_storage(), \ - torrent::raw_string::from_c_str(key), tr1::placeholders::_2)); + CMD2_ANY_LIST(key ".set", std::bind(&rpc::object_storage::set_list, control->object_storage(), \ + torrent::raw_string::from_c_str(key), std::placeholders::_2)); \ + CMD2_ANY_VOID(key ".push_back", std::bind(&rpc::object_storage::list_push_back, control->object_storage(), \ + torrent::raw_string::from_c_str(key), std::placeholders::_2)); #define CMD2_FUNC_SINGLE(key, cmds) \ - CMD2_ANY(key, tr1::bind(&rpc::command_function_call_object, torrent::Object(torrent::raw_string::from_c_str(cmds)), \ - tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_ANY(key, std::bind(&rpc::command_function_call_object, torrent::Object(torrent::raw_string::from_c_str(cmds)), \ + std::placeholders::_1, std::placeholders::_2)); #define CMD2_REDIRECT(from_key, to_key) \ rpc::commands.create_redirect(from_key, to_key, rpc::CommandMap::flag_public_xmlrpc | rpc::CommandMap::flag_dont_delete); diff --git a/src/command_ip.cc b/src/command_ip.cc index 13216f5f..6997f6e9 100644 --- a/src/command_ip.cc +++ b/src/command_ip.cc @@ -281,17 +281,17 @@ apply_ipv4_filter_dump() { void initialize_command_ip() { - CMD2_ANY ("strings.ip_filter", tr1::bind(&torrent::option_list_strings, torrent::OPTION_IP_FILTER)); - CMD2_ANY ("strings.ip_tos", tr1::bind(&torrent::option_list_strings, torrent::OPTION_IP_TOS)); + CMD2_ANY ("strings.ip_filter", std::bind(&torrent::option_list_strings, torrent::OPTION_IP_FILTER)); + CMD2_ANY ("strings.ip_tos", std::bind(&torrent::option_list_strings, torrent::OPTION_IP_TOS)); - CMD2_ANY_STRING ("ip_tables.insert_table", tr1::bind(&apply_ip_tables_insert_table, tr1::placeholders::_2)); - CMD2_ANY_STRING ("ip_tables.size_data", tr1::bind(&apply_ip_tables_size_data, tr1::placeholders::_2)); - CMD2_ANY_LIST ("ip_tables.get", tr1::bind(&apply_ip_tables_get, tr1::placeholders::_2)); - CMD2_ANY_LIST ("ip_tables.add_address", tr1::bind(&apply_ip_tables_add_address, tr1::placeholders::_2)); + CMD2_ANY_STRING ("ip_tables.insert_table", std::bind(&apply_ip_tables_insert_table, std::placeholders::_2)); + CMD2_ANY_STRING ("ip_tables.size_data", std::bind(&apply_ip_tables_size_data, std::placeholders::_2)); + CMD2_ANY_LIST ("ip_tables.get", std::bind(&apply_ip_tables_get, std::placeholders::_2)); + CMD2_ANY_LIST ("ip_tables.add_address", std::bind(&apply_ip_tables_add_address, std::placeholders::_2)); - CMD2_ANY ("ipv4_filter.size_data", tr1::bind(&apply_ipv4_filter_size_data)); - CMD2_ANY_STRING ("ipv4_filter.get", tr1::bind(&apply_ipv4_filter_get, tr1::placeholders::_2)); - CMD2_ANY_LIST ("ipv4_filter.add_address", tr1::bind(&apply_ipv4_filter_add_address, tr1::placeholders::_2)); - CMD2_ANY_LIST ("ipv4_filter.load", tr1::bind(&apply_ipv4_filter_load, tr1::placeholders::_2)); - CMD2_ANY_LIST ("ipv4_filter.dump", tr1::bind(&apply_ipv4_filter_dump)); + CMD2_ANY ("ipv4_filter.size_data", std::bind(&apply_ipv4_filter_size_data)); + CMD2_ANY_STRING ("ipv4_filter.get", std::bind(&apply_ipv4_filter_get, std::placeholders::_2)); + CMD2_ANY_LIST ("ipv4_filter.add_address", std::bind(&apply_ipv4_filter_add_address, std::placeholders::_2)); + CMD2_ANY_LIST ("ipv4_filter.load", std::bind(&apply_ipv4_filter_load, std::placeholders::_2)); + CMD2_ANY_LIST ("ipv4_filter.dump", std::bind(&apply_ipv4_filter_dump)); } diff --git a/src/command_local.cc b/src/command_local.cc index 45c63b89..ea7822c1 100644 --- a/src/command_local.cc +++ b/src/command_local.cc @@ -314,8 +314,8 @@ initialize_command_local() { core::DownloadList* dList = control->core()->download_list(); core::DownloadStore* dStore = control->core()->download_store(); - CMD2_ANY ("system.hostname", tr1::bind(&system_hostname)); - CMD2_ANY ("system.pid", tr1::bind(&getpid)); + CMD2_ANY ("system.hostname", std::bind(&system_hostname)); + CMD2_ANY ("system.pid", std::bind(&getpid)); CMD2_VAR_C_STRING("system.api_version", (int64_t)API_VERSION); CMD2_VAR_C_STRING("system.client_version", PACKAGE_VERSION); @@ -325,54 +325,54 @@ initialize_command_local() { CMD2_VAR_VALUE ("system.file.split_size", -1); CMD2_VAR_STRING ("system.file.split_suffix", ".part"); - CMD2_ANY ("system.file_status_cache.size", tr1::bind(&utils::FileStatusCache::size, + CMD2_ANY ("system.file_status_cache.size", std::bind(&utils::FileStatusCache::size, (utils::FileStatusCache::base_type*)control->core()->file_status_cache())); - CMD2_ANY_V ("system.file_status_cache.prune", tr1::bind(&utils::FileStatusCache::prune, control->core()->file_status_cache())); + CMD2_ANY_V ("system.file_status_cache.prune", std::bind(&utils::FileStatusCache::prune, control->core()->file_status_cache())); CMD2_VAR_BOOL ("file.prioritize_toc", 0); CMD2_VAR_LIST ("file.prioritize_toc.first"); CMD2_VAR_LIST ("file.prioritize_toc.last"); - CMD2_ANY ("system.files.opened_counter", tr1::bind(&FM_t::files_opened_counter, fileManager)); - CMD2_ANY ("system.files.closed_counter", tr1::bind(&FM_t::files_closed_counter, fileManager)); - CMD2_ANY ("system.files.failed_counter", tr1::bind(&FM_t::files_failed_counter, fileManager)); + CMD2_ANY ("system.files.opened_counter", std::bind(&FM_t::files_opened_counter, fileManager)); + CMD2_ANY ("system.files.closed_counter", std::bind(&FM_t::files_closed_counter, fileManager)); + CMD2_ANY ("system.files.failed_counter", std::bind(&FM_t::files_failed_counter, fileManager)); - CMD2_ANY ("system.time", tr1::bind(&rak::timer::seconds, &cachedTime)); - CMD2_ANY ("system.time_seconds", tr1::bind(&rak::timer::current_seconds)); - CMD2_ANY ("system.time_usec", tr1::bind(&rak::timer::current_usec)); + CMD2_ANY ("system.time", std::bind(&rak::timer::seconds, &cachedTime)); + CMD2_ANY ("system.time_seconds", std::bind(&rak::timer::current_seconds)); + CMD2_ANY ("system.time_usec", std::bind(&rak::timer::current_usec)); - CMD2_ANY_VALUE_V ("system.umask.set", tr1::bind(&umask, tr1::placeholders::_2)); + CMD2_ANY_VALUE_V ("system.umask.set", std::bind(&umask, std::placeholders::_2)); - CMD2_ANY ("system.cwd", tr1::bind(&system_get_cwd)); - CMD2_ANY_STRING ("system.cwd.set", tr1::bind(&system_set_cwd, tr1::placeholders::_2)); + CMD2_ANY ("system.cwd", std::bind(&system_get_cwd)); + CMD2_ANY_STRING ("system.cwd.set", std::bind(&system_set_cwd, std::placeholders::_2)); - CMD2_ANY ("pieces.sync.always_safe", tr1::bind(&CM_t::safe_sync, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.sync.always_safe.set", tr1::bind(&CM_t::set_safe_sync, chunkManager, tr1::placeholders::_2)); - CMD2_ANY ("pieces.sync.safe_free_diskspace", tr1::bind(&CM_t::safe_free_diskspace, chunkManager)); - CMD2_ANY ("pieces.sync.timeout", tr1::bind(&CM_t::timeout_sync, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.sync.timeout.set", tr1::bind(&CM_t::set_timeout_sync, chunkManager, tr1::placeholders::_2)); - CMD2_ANY ("pieces.sync.timeout_safe", tr1::bind(&CM_t::timeout_safe_sync, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.sync.timeout_safe.set", tr1::bind(&CM_t::set_timeout_safe_sync, chunkManager, tr1::placeholders::_2)); - CMD2_ANY ("pieces.sync.queue_size", tr1::bind(&CM_t::sync_queue_size, chunkManager)); + CMD2_ANY ("pieces.sync.always_safe", std::bind(&CM_t::safe_sync, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.sync.always_safe.set", std::bind(&CM_t::set_safe_sync, chunkManager, std::placeholders::_2)); + CMD2_ANY ("pieces.sync.safe_free_diskspace", std::bind(&CM_t::safe_free_diskspace, chunkManager)); + CMD2_ANY ("pieces.sync.timeout", std::bind(&CM_t::timeout_sync, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.sync.timeout.set", std::bind(&CM_t::set_timeout_sync, chunkManager, std::placeholders::_2)); + CMD2_ANY ("pieces.sync.timeout_safe", std::bind(&CM_t::timeout_safe_sync, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.sync.timeout_safe.set", std::bind(&CM_t::set_timeout_safe_sync, chunkManager, std::placeholders::_2)); + CMD2_ANY ("pieces.sync.queue_size", std::bind(&CM_t::sync_queue_size, chunkManager)); - CMD2_ANY ("pieces.preload.type", tr1::bind(&CM_t::preload_type, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.preload.type.set", tr1::bind(&CM_t::set_preload_type, chunkManager, tr1::placeholders::_2)); - CMD2_ANY ("pieces.preload.min_size", tr1::bind(&CM_t::preload_min_size, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.preload.min_size.set", tr1::bind(&CM_t::set_preload_min_size, chunkManager, tr1::placeholders::_2)); - CMD2_ANY ("pieces.preload.min_rate", tr1::bind(&CM_t::preload_required_rate, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.preload.min_rate.set", tr1::bind(&CM_t::set_preload_required_rate, chunkManager, tr1::placeholders::_2)); + CMD2_ANY ("pieces.preload.type", std::bind(&CM_t::preload_type, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.preload.type.set", std::bind(&CM_t::set_preload_type, chunkManager, std::placeholders::_2)); + CMD2_ANY ("pieces.preload.min_size", std::bind(&CM_t::preload_min_size, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.preload.min_size.set", std::bind(&CM_t::set_preload_min_size, chunkManager, std::placeholders::_2)); + CMD2_ANY ("pieces.preload.min_rate", std::bind(&CM_t::preload_required_rate, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.preload.min_rate.set", std::bind(&CM_t::set_preload_required_rate, chunkManager, std::placeholders::_2)); - CMD2_ANY ("pieces.memory.current", tr1::bind(&CM_t::memory_usage, chunkManager)); - CMD2_ANY ("pieces.memory.sync_queue", tr1::bind(&CM_t::sync_queue_memory_usage, chunkManager)); - CMD2_ANY ("pieces.memory.block_count", tr1::bind(&CM_t::memory_block_count, chunkManager)); - CMD2_ANY ("pieces.memory.max", tr1::bind(&CM_t::max_memory_usage, chunkManager)); - CMD2_ANY_VALUE_V ("pieces.memory.max.set", tr1::bind(&CM_t::set_max_memory_usage, chunkManager, tr1::placeholders::_2)); - CMD2_ANY ("pieces.stats_preloaded", tr1::bind(&CM_t::stats_preloaded, chunkManager)); - CMD2_ANY ("pieces.stats_not_preloaded", tr1::bind(&CM_t::stats_not_preloaded, chunkManager)); + CMD2_ANY ("pieces.memory.current", std::bind(&CM_t::memory_usage, chunkManager)); + CMD2_ANY ("pieces.memory.sync_queue", std::bind(&CM_t::sync_queue_memory_usage, chunkManager)); + CMD2_ANY ("pieces.memory.block_count", std::bind(&CM_t::memory_block_count, chunkManager)); + CMD2_ANY ("pieces.memory.max", std::bind(&CM_t::max_memory_usage, chunkManager)); + CMD2_ANY_VALUE_V ("pieces.memory.max.set", std::bind(&CM_t::set_max_memory_usage, chunkManager, std::placeholders::_2)); + CMD2_ANY ("pieces.stats_preloaded", std::bind(&CM_t::stats_preloaded, chunkManager)); + CMD2_ANY ("pieces.stats_not_preloaded", std::bind(&CM_t::stats_not_preloaded, chunkManager)); - CMD2_ANY ("pieces.stats.total_size", tr1::bind(&apply_pieces_stats_total_size)); + CMD2_ANY ("pieces.stats.total_size", std::bind(&apply_pieces_stats_total_size)); - CMD2_ANY ("pieces.hash.queue_size", tr1::bind(&torrent::hash_queue_size)); + CMD2_ANY ("pieces.hash.queue_size", std::bind(&torrent::hash_queue_size)); CMD2_VAR_BOOL ("pieces.hash.on_completion", true); CMD2_VAR_STRING ("directory.default", "./"); @@ -381,13 +381,13 @@ initialize_command_local() { CMD2_VAR_BOOL ("session.use_lock", true); CMD2_VAR_BOOL ("session.on_completion", true); - CMD2_ANY ("session.path", tr1::bind(&core::DownloadStore::path, dStore)); - CMD2_ANY_STRING_V("session.path.set", tr1::bind(&core::DownloadStore::set_path, dStore, tr1::placeholders::_2)); + CMD2_ANY ("session.path", std::bind(&core::DownloadStore::path, dStore)); + CMD2_ANY_STRING_V("session.path.set", std::bind(&core::DownloadStore::set_path, dStore, std::placeholders::_2)); - CMD2_ANY_V ("session.save", tr1::bind(&core::DownloadList::session_save, dList)); + CMD2_ANY_V ("session.save", std::bind(&core::DownloadList::session_save, dList)); #define CMD2_EXECUTE(key, flags) \ - CMD2_ANY(key, tr1::bind(&rpc::ExecFile::execute_object, &rpc::execFile, tr1::placeholders::_2, flags)); + CMD2_ANY(key, std::bind(&rpc::ExecFile::execute_object, &rpc::execFile, std::placeholders::_2, flags)); CMD2_EXECUTE ("execute2", rpc::ExecFile::flag_expand_tilde | rpc::ExecFile::flag_throw); CMD2_EXECUTE ("execute.throw", rpc::ExecFile::flag_expand_tilde | rpc::ExecFile::flag_throw); @@ -401,25 +401,25 @@ initialize_command_local() { CMD2_EXECUTE ("execute.capture", rpc::ExecFile::flag_throw | rpc::ExecFile::flag_expand_tilde | rpc::ExecFile::flag_capture); CMD2_EXECUTE ("execute.capture_nothrow", rpc::ExecFile::flag_expand_tilde | rpc::ExecFile::flag_capture); - CMD2_ANY_LIST ("log.open_file", tr1::bind(&apply_log_open_file, tr1::placeholders::_2)); - CMD2_ANY_LIST ("log.open_gz_file", tr1::bind(&apply_log_open_gz_file, tr1::placeholders::_2)); - CMD2_ANY_LIST ("log.add_output", tr1::bind(&apply_log_add_output, tr1::placeholders::_2)); + CMD2_ANY_LIST ("log.open_file", std::bind(&apply_log_open_file, std::placeholders::_2)); + CMD2_ANY_LIST ("log.open_gz_file", std::bind(&apply_log_open_gz_file, std::placeholders::_2)); + CMD2_ANY_LIST ("log.add_output", std::bind(&apply_log_add_output, std::placeholders::_2)); - CMD2_ANY_STRING ("log.execute", tr1::bind(&apply_log, tr1::placeholders::_2, 0)); - CMD2_ANY_STRING ("log.vmmap.dump", tr1::bind(&log_vmmap_dump, tr1::placeholders::_2)); - CMD2_ANY_STRING_V("log.xmlrpc", tr1::bind(&ThreadWorker::set_xmlrpc_log, worker_thread, tr1::placeholders::_2)); + CMD2_ANY_STRING ("log.execute", std::bind(&apply_log, std::placeholders::_2, 0)); + CMD2_ANY_STRING ("log.vmmap.dump", std::bind(&log_vmmap_dump, std::placeholders::_2)); + CMD2_ANY_STRING_V("log.xmlrpc", std::bind(&ThreadWorker::set_xmlrpc_log, worker_thread, std::placeholders::_2)); - CMD2_ANY_LIST ("file.append", tr1::bind(&cmd_file_append, tr1::placeholders::_2)); + CMD2_ANY_LIST ("file.append", std::bind(&cmd_file_append, std::placeholders::_2)); // TODO: Convert to new command types: *rpc::command_base::argument(0) = "placeholder.0"; *rpc::command_base::argument(1) = "placeholder.1"; *rpc::command_base::argument(2) = "placeholder.2"; *rpc::command_base::argument(3) = "placeholder.3"; - CMD2_ANY_P("argument.0", tr1::bind(&rpc::command_base::argument_ref, 0)); - CMD2_ANY_P("argument.1", tr1::bind(&rpc::command_base::argument_ref, 1)); - CMD2_ANY_P("argument.2", tr1::bind(&rpc::command_base::argument_ref, 2)); - CMD2_ANY_P("argument.3", tr1::bind(&rpc::command_base::argument_ref, 3)); + CMD2_ANY_P("argument.0", std::bind(&rpc::command_base::argument_ref, 0)); + CMD2_ANY_P("argument.1", std::bind(&rpc::command_base::argument_ref, 1)); + CMD2_ANY_P("argument.2", std::bind(&rpc::command_base::argument_ref, 2)); + CMD2_ANY_P("argument.3", std::bind(&rpc::command_base::argument_ref, 3)); - CMD2_ANY_LIST ("group.insert", tr1::bind(&group_insert, tr1::placeholders::_2)); + CMD2_ANY_LIST ("group.insert", std::bind(&group_insert, std::placeholders::_2)); } diff --git a/src/command_network.cc b/src/command_network.cc index c445c38c..207dc812 100644 --- a/src/command_network.cc +++ b/src/command_network.cc @@ -62,8 +62,6 @@ #include "control.h" #include "command_helpers.h" -namespace tr1 { using namespace std::tr1; } - torrent::Object apply_encryption(const torrent::Object::list_type& args) { uint32_t options_mask = torrent::ConnectionManager::encryption_none; @@ -126,10 +124,10 @@ xmlrpc_find_peer(core::Download* download, const torrent::HashString& hash) { void initialize_xmlrpc() { rpc::xmlrpc.initialize(); - rpc::xmlrpc.slot_find_download() = tr1::bind(&core::DownloadList::find_hex_ptr, control->core()->download_list(), tr1::placeholders::_1); - rpc::xmlrpc.slot_find_file() = tr1::bind(&xmlrpc_find_file, tr1::placeholders::_1, tr1::placeholders::_2); - rpc::xmlrpc.slot_find_tracker() = tr1::bind(&xmlrpc_find_tracker, tr1::placeholders::_1, tr1::placeholders::_2); - rpc::xmlrpc.slot_find_peer() = tr1::bind(&xmlrpc_find_peer, tr1::placeholders::_1, tr1::placeholders::_2); + rpc::xmlrpc.slot_find_download() = std::bind(&core::DownloadList::find_hex_ptr, control->core()->download_list(), std::placeholders::_1); + rpc::xmlrpc.slot_find_file() = std::bind(&xmlrpc_find_file, std::placeholders::_1, std::placeholders::_2); + rpc::xmlrpc.slot_find_tracker() = std::bind(&xmlrpc_find_tracker, std::placeholders::_1, std::placeholders::_2); + rpc::xmlrpc.slot_find_peer() = std::bind(&xmlrpc_find_peer, std::placeholders::_1, std::placeholders::_2); unsigned int count = 0; @@ -238,23 +236,23 @@ initialize_command_network() { torrent::FileManager* fileManager = torrent::file_manager(); core::CurlStack* httpStack = control->core()->http_stack(); - CMD2_ANY ("strings.connection_type", tr1::bind(&torrent::option_list_strings, torrent::OPTION_CONNECTION_TYPE)); - CMD2_ANY ("strings.encryption", tr1::bind(&torrent::option_list_strings, torrent::OPTION_ENCRYPTION)); + CMD2_ANY ("strings.connection_type", std::bind(&torrent::option_list_strings, torrent::OPTION_CONNECTION_TYPE)); + CMD2_ANY ("strings.encryption", std::bind(&torrent::option_list_strings, torrent::OPTION_ENCRYPTION)); - // CMD2_ANY_STRING ("encoding_list", tr1::bind(&apply_encoding_list, tr1::placeholders::_2)); - CMD2_ANY_STRING ("encoding.add", tr1::bind(&apply_encoding_list, tr1::placeholders::_2)); + // CMD2_ANY_STRING ("encoding_list", std::bind(&apply_encoding_list, std::placeholders::_2)); + CMD2_ANY_STRING ("encoding.add", std::bind(&apply_encoding_list, std::placeholders::_2)); // Isn't port_open used? CMD2_VAR_BOOL ("network.port_open", true); CMD2_VAR_BOOL ("network.port_random", true); CMD2_VAR_STRING ("network.port_range", "6881-6999"); - CMD2_ANY ("network.listen.port", tr1::bind(&torrent::ConnectionManager::listen_port, cm)); - CMD2_ANY ("network.listen.backlog", tr1::bind(&torrent::ConnectionManager::listen_backlog, cm)); - CMD2_ANY_VALUE_V ("network.listen.backlog.set", tr1::bind(&torrent::ConnectionManager::set_listen_backlog, cm, tr1::placeholders::_2)); + CMD2_ANY ("network.listen.port", std::bind(&torrent::ConnectionManager::listen_port, cm)); + CMD2_ANY ("network.listen.backlog", std::bind(&torrent::ConnectionManager::listen_backlog, cm)); + CMD2_ANY_VALUE_V ("network.listen.backlog.set", std::bind(&torrent::ConnectionManager::set_listen_backlog, cm, std::placeholders::_2)); CMD2_VAR_BOOL ("protocol.pex", true); - CMD2_ANY_LIST ("protocol.encryption.set", tr1::bind(&apply_encryption, tr1::placeholders::_2)); + CMD2_ANY_LIST ("protocol.encryption.set", std::bind(&apply_encryption, std::placeholders::_2)); CMD2_VAR_STRING ("protocol.connection.leech", "leech"); CMD2_VAR_STRING ("protocol.connection.seed", "seed"); @@ -264,43 +262,43 @@ initialize_command_network() { CMD2_VAR_STRING ("protocol.choke_heuristics.down.leech", "download_leech"); CMD2_VAR_STRING ("protocol.choke_heuristics.down.seed", "download_leech"); - CMD2_ANY ("network.http.capath", tr1::bind(&core::CurlStack::http_capath, httpStack)); - CMD2_ANY_STRING_V("network.http.capath.set", tr1::bind(&core::CurlStack::set_http_capath, httpStack, tr1::placeholders::_2)); - CMD2_ANY ("network.http.cacert", tr1::bind(&core::CurlStack::http_cacert, httpStack)); - CMD2_ANY_STRING_V("network.http.cacert.set", tr1::bind(&core::CurlStack::set_http_cacert, httpStack, tr1::placeholders::_2)); - CMD2_ANY ("network.http.proxy_address", tr1::bind(&core::CurlStack::http_proxy, httpStack)); - CMD2_ANY_STRING_V("network.http.proxy_address.set", tr1::bind(&core::CurlStack::set_http_proxy, httpStack, tr1::placeholders::_2)); - CMD2_ANY ("network.http.max_open", tr1::bind(&core::CurlStack::max_active, httpStack)); - CMD2_ANY_VALUE_V ("network.http.max_open.set", tr1::bind(&core::CurlStack::set_max_active, httpStack, tr1::placeholders::_2)); - CMD2_ANY ("network.http.ssl_verify_peer", tr1::bind(&core::CurlStack::ssl_verify_peer, httpStack)); - CMD2_ANY_VALUE_V ("network.http.ssl_verify_peer.set", tr1::bind(&core::CurlStack::set_ssl_verify_peer, httpStack, tr1::placeholders::_2)); - CMD2_ANY ("network.http.dns_cache_timeout", tr1::bind(&core::CurlStack::dns_timeout, httpStack)); - CMD2_ANY_VALUE_V ("network.http.dns_cache_timeout.set", tr1::bind(&core::CurlStack::set_dns_timeout, httpStack, tr1::placeholders::_2)); + CMD2_ANY ("network.http.capath", std::bind(&core::CurlStack::http_capath, httpStack)); + CMD2_ANY_STRING_V("network.http.capath.set", std::bind(&core::CurlStack::set_http_capath, httpStack, std::placeholders::_2)); + CMD2_ANY ("network.http.cacert", std::bind(&core::CurlStack::http_cacert, httpStack)); + CMD2_ANY_STRING_V("network.http.cacert.set", std::bind(&core::CurlStack::set_http_cacert, httpStack, std::placeholders::_2)); + CMD2_ANY ("network.http.proxy_address", std::bind(&core::CurlStack::http_proxy, httpStack)); + CMD2_ANY_STRING_V("network.http.proxy_address.set", std::bind(&core::CurlStack::set_http_proxy, httpStack, std::placeholders::_2)); + CMD2_ANY ("network.http.max_open", std::bind(&core::CurlStack::max_active, httpStack)); + CMD2_ANY_VALUE_V ("network.http.max_open.set", std::bind(&core::CurlStack::set_max_active, httpStack, std::placeholders::_2)); + CMD2_ANY ("network.http.ssl_verify_peer", std::bind(&core::CurlStack::ssl_verify_peer, httpStack)); + CMD2_ANY_VALUE_V ("network.http.ssl_verify_peer.set", std::bind(&core::CurlStack::set_ssl_verify_peer, httpStack, std::placeholders::_2)); + CMD2_ANY ("network.http.dns_cache_timeout", std::bind(&core::CurlStack::dns_timeout, httpStack)); + CMD2_ANY_VALUE_V ("network.http.dns_cache_timeout.set", std::bind(&core::CurlStack::set_dns_timeout, httpStack, std::placeholders::_2)); - CMD2_ANY ("network.send_buffer.size", tr1::bind(&torrent::ConnectionManager::send_buffer_size, cm)); - CMD2_ANY_VALUE_V ("network.send_buffer.size.set", tr1::bind(&torrent::ConnectionManager::set_send_buffer_size, cm, tr1::placeholders::_2)); - CMD2_ANY ("network.receive_buffer.size", tr1::bind(&torrent::ConnectionManager::receive_buffer_size, cm)); - CMD2_ANY_VALUE_V ("network.receive_buffer.size.set", tr1::bind(&torrent::ConnectionManager::set_receive_buffer_size, cm, tr1::placeholders::_2)); - CMD2_ANY_STRING ("network.tos.set", tr1::bind(&apply_tos, tr1::placeholders::_2)); + CMD2_ANY ("network.send_buffer.size", std::bind(&torrent::ConnectionManager::send_buffer_size, cm)); + CMD2_ANY_VALUE_V ("network.send_buffer.size.set", std::bind(&torrent::ConnectionManager::set_send_buffer_size, cm, std::placeholders::_2)); + CMD2_ANY ("network.receive_buffer.size", std::bind(&torrent::ConnectionManager::receive_buffer_size, cm)); + CMD2_ANY_VALUE_V ("network.receive_buffer.size.set", std::bind(&torrent::ConnectionManager::set_receive_buffer_size, cm, std::placeholders::_2)); + CMD2_ANY_STRING ("network.tos.set", std::bind(&apply_tos, std::placeholders::_2)); - CMD2_ANY ("network.bind_address", tr1::bind(&core::Manager::bind_address, control->core())); - CMD2_ANY_STRING_V("network.bind_address.set", tr1::bind(&core::Manager::set_bind_address, control->core(), tr1::placeholders::_2)); - CMD2_ANY ("network.local_address", tr1::bind(&core::Manager::local_address, control->core())); - CMD2_ANY_STRING_V("network.local_address.set", tr1::bind(&core::Manager::set_local_address, control->core(), tr1::placeholders::_2)); - CMD2_ANY ("network.proxy_address", tr1::bind(&core::Manager::proxy_address, control->core())); - CMD2_ANY_STRING_V("network.proxy_address.set", tr1::bind(&core::Manager::set_proxy_address, control->core(), tr1::placeholders::_2)); + CMD2_ANY ("network.bind_address", std::bind(&core::Manager::bind_address, control->core())); + CMD2_ANY_STRING_V("network.bind_address.set", std::bind(&core::Manager::set_bind_address, control->core(), std::placeholders::_2)); + CMD2_ANY ("network.local_address", std::bind(&core::Manager::local_address, control->core())); + CMD2_ANY_STRING_V("network.local_address.set", std::bind(&core::Manager::set_local_address, control->core(), std::placeholders::_2)); + CMD2_ANY ("network.proxy_address", std::bind(&core::Manager::proxy_address, control->core())); + CMD2_ANY_STRING_V("network.proxy_address.set", std::bind(&core::Manager::set_proxy_address, control->core(), std::placeholders::_2)); - CMD2_ANY ("network.max_open_files", tr1::bind(&torrent::FileManager::max_open_files, fileManager)); - CMD2_ANY_VALUE_V ("network.max_open_files.set", tr1::bind(&torrent::FileManager::set_max_open_files, fileManager, tr1::placeholders::_2)); - CMD2_ANY ("network.open_sockets", tr1::bind(&torrent::ConnectionManager::size, cm)); - CMD2_ANY ("network.max_open_sockets", tr1::bind(&torrent::ConnectionManager::max_size, cm)); - CMD2_ANY_VALUE_V ("network.max_open_sockets.set", tr1::bind(&torrent::ConnectionManager::set_max_size, cm, tr1::placeholders::_2)); + CMD2_ANY ("network.max_open_files", std::bind(&torrent::FileManager::max_open_files, fileManager)); + CMD2_ANY_VALUE_V ("network.max_open_files.set", std::bind(&torrent::FileManager::set_max_open_files, fileManager, std::placeholders::_2)); + CMD2_ANY ("network.open_sockets", std::bind(&torrent::ConnectionManager::size, cm)); + CMD2_ANY ("network.max_open_sockets", std::bind(&torrent::ConnectionManager::max_size, cm)); + CMD2_ANY_VALUE_V ("network.max_open_sockets.set", std::bind(&torrent::ConnectionManager::set_max_size, cm, std::placeholders::_2)); - CMD2_ANY_STRING ("network.scgi.open_port", tr1::bind(&apply_scgi, tr1::placeholders::_2, 1)); - CMD2_ANY_STRING ("network.scgi.open_local", tr1::bind(&apply_scgi, tr1::placeholders::_2, 2)); + CMD2_ANY_STRING ("network.scgi.open_port", std::bind(&apply_scgi, std::placeholders::_2, 1)); + CMD2_ANY_STRING ("network.scgi.open_local", std::bind(&apply_scgi, std::placeholders::_2, 2)); CMD2_VAR_BOOL ("network.scgi.dont_route", false); - CMD2_ANY_STRING ("network.xmlrpc.dialect.set", tr1::bind(&apply_xmlrpc_dialect, tr1::placeholders::_2)); - CMD2_ANY ("network.xmlrpc.size_limit", tr1::bind(&rpc::XmlRpc::size_limit)); - CMD2_ANY_VALUE_V ("network.xmlrpc.size_limit.set", tr1::bind(&rpc::XmlRpc::set_size_limit, tr1::placeholders::_2)); + CMD2_ANY_STRING ("network.xmlrpc.dialect.set", std::bind(&apply_xmlrpc_dialect, std::placeholders::_2)); + CMD2_ANY ("network.xmlrpc.size_limit", std::bind(&rpc::XmlRpc::size_limit)); + CMD2_ANY_VALUE_V ("network.xmlrpc.size_limit.set", std::bind(&rpc::XmlRpc::set_size_limit, std::placeholders::_2)); } diff --git a/src/command_peer.cc b/src/command_peer.cc index 2eef3351..0cf103b5 100644 --- a/src/command_peer.cc +++ b/src/command_peer.cc @@ -97,37 +97,37 @@ retrieve_p_completed_percent(torrent::Peer* peer) { void initialize_command_peer() { - CMD2_PEER("p.id", tr1::bind(&retrieve_p_id, tr1::placeholders::_1)); - CMD2_PEER("p.id_html", tr1::bind(&retrieve_p_id_html, tr1::placeholders::_1)); - CMD2_PEER("p.client_version", tr1::bind(&retrieve_p_client_version, tr1::placeholders::_1)); + CMD2_PEER("p.id", std::bind(&retrieve_p_id, std::placeholders::_1)); + CMD2_PEER("p.id_html", std::bind(&retrieve_p_id_html, std::placeholders::_1)); + CMD2_PEER("p.client_version", std::bind(&retrieve_p_client_version, std::placeholders::_1)); - CMD2_PEER("p.options_str", tr1::bind(&retrieve_p_options_str, tr1::placeholders::_1)); + CMD2_PEER("p.options_str", std::bind(&retrieve_p_options_str, std::placeholders::_1)); - CMD2_PEER("p.is_encrypted", tr1::bind(&torrent::Peer::is_encrypted, tr1::placeholders::_1)); - CMD2_PEER("p.is_incoming", tr1::bind(&torrent::Peer::is_incoming, tr1::placeholders::_1)); - CMD2_PEER("p.is_obfuscated", tr1::bind(&torrent::Peer::is_obfuscated, tr1::placeholders::_1)); - CMD2_PEER("p.is_snubbed", tr1::bind(&torrent::Peer::is_snubbed, tr1::placeholders::_1)); + CMD2_PEER("p.is_encrypted", std::bind(&torrent::Peer::is_encrypted, std::placeholders::_1)); + CMD2_PEER("p.is_incoming", std::bind(&torrent::Peer::is_incoming, std::placeholders::_1)); + CMD2_PEER("p.is_obfuscated", std::bind(&torrent::Peer::is_obfuscated, std::placeholders::_1)); + CMD2_PEER("p.is_snubbed", std::bind(&torrent::Peer::is_snubbed, std::placeholders::_1)); - CMD2_PEER("p.is_unwanted", tr1::bind(&torrent::PeerInfo::is_unwanted, tr1::bind(&torrent::Peer::peer_info, tr1::placeholders::_1))); - CMD2_PEER("p.is_preferred", tr1::bind(&torrent::PeerInfo::is_preferred, tr1::bind(&torrent::Peer::peer_info, tr1::placeholders::_1))); + CMD2_PEER("p.is_unwanted", std::bind(&torrent::PeerInfo::is_unwanted, std::bind(&torrent::Peer::peer_info, std::placeholders::_1))); + CMD2_PEER("p.is_preferred", std::bind(&torrent::PeerInfo::is_preferred, std::bind(&torrent::Peer::peer_info, std::placeholders::_1))); - CMD2_PEER("p.address", tr1::bind(&retrieve_p_address, tr1::placeholders::_1)); - CMD2_PEER("p.port", tr1::bind(&retrieve_p_port, tr1::placeholders::_1)); + CMD2_PEER("p.address", std::bind(&retrieve_p_address, std::placeholders::_1)); + CMD2_PEER("p.port", std::bind(&retrieve_p_port, std::placeholders::_1)); - CMD2_PEER("p.completed_percent", tr1::bind(&retrieve_p_completed_percent, tr1::placeholders::_1)); + CMD2_PEER("p.completed_percent", std::bind(&retrieve_p_completed_percent, std::placeholders::_1)); - CMD2_PEER("p.up_rate", tr1::bind(&torrent::Rate::rate, tr1::bind(&torrent::Peer::up_rate, tr1::placeholders::_1))); - CMD2_PEER("p.up_total", tr1::bind(&torrent::Rate::total, tr1::bind(&torrent::Peer::up_rate, tr1::placeholders::_1))); - CMD2_PEER("p.down_rate", tr1::bind(&torrent::Rate::rate, tr1::bind(&torrent::Peer::down_rate, tr1::placeholders::_1))); - CMD2_PEER("p.down_total", tr1::bind(&torrent::Rate::total, tr1::bind(&torrent::Peer::down_rate, tr1::placeholders::_1))); - CMD2_PEER("p.peer_rate", tr1::bind(&torrent::Rate::rate, tr1::bind(&torrent::Peer::peer_rate, tr1::placeholders::_1))); - CMD2_PEER("p.peer_total", tr1::bind(&torrent::Rate::total, tr1::bind(&torrent::Peer::peer_rate, tr1::placeholders::_1))); + CMD2_PEER("p.up_rate", std::bind(&torrent::Rate::rate, std::bind(&torrent::Peer::up_rate, std::placeholders::_1))); + CMD2_PEER("p.up_total", std::bind(&torrent::Rate::total, std::bind(&torrent::Peer::up_rate, std::placeholders::_1))); + CMD2_PEER("p.down_rate", std::bind(&torrent::Rate::rate, std::bind(&torrent::Peer::down_rate, std::placeholders::_1))); + CMD2_PEER("p.down_total", std::bind(&torrent::Rate::total, std::bind(&torrent::Peer::down_rate, std::placeholders::_1))); + CMD2_PEER("p.peer_rate", std::bind(&torrent::Rate::rate, std::bind(&torrent::Peer::peer_rate, std::placeholders::_1))); + CMD2_PEER("p.peer_total", std::bind(&torrent::Rate::total, std::bind(&torrent::Peer::peer_rate, std::placeholders::_1))); - CMD2_PEER ("p.snubbed", tr1::bind(&torrent::Peer::is_snubbed, tr1::placeholders::_1)); - CMD2_PEER_VALUE_V("p.snubbed.set", tr1::bind(&torrent::Peer::set_snubbed, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_PEER ("p.banned", tr1::bind(&torrent::Peer::is_banned, tr1::placeholders::_1)); - CMD2_PEER_VALUE_V("p.banned.set", tr1::bind(&torrent::Peer::set_banned, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_PEER ("p.snubbed", std::bind(&torrent::Peer::is_snubbed, std::placeholders::_1)); + CMD2_PEER_VALUE_V("p.snubbed.set", std::bind(&torrent::Peer::set_snubbed, std::placeholders::_1, std::placeholders::_2)); + CMD2_PEER ("p.banned", std::bind(&torrent::Peer::is_banned, std::placeholders::_1)); + CMD2_PEER_VALUE_V("p.banned.set", std::bind(&torrent::Peer::set_banned, std::placeholders::_1, std::placeholders::_2)); - CMD2_PEER_V("p.disconnect", tr1::bind(&torrent::Peer::disconnect, tr1::placeholders::_1, 0)); - CMD2_PEER_V("p.disconnect_delayed", tr1::bind(&torrent::Peer::disconnect, tr1::placeholders::_1, torrent::ConnectionList::disconnect_delayed)); + CMD2_PEER_V("p.disconnect", std::bind(&torrent::Peer::disconnect, std::placeholders::_1, 0)); + CMD2_PEER_V("p.disconnect_delayed", std::bind(&torrent::Peer::disconnect, std::placeholders::_1, torrent::ConnectionList::disconnect_delayed)); } diff --git a/src/command_scheduler.cc b/src/command_scheduler.cc index e975d684..a2c92684 100644 --- a/src/command_scheduler.cc +++ b/src/command_scheduler.cc @@ -115,7 +115,7 @@ void initialize_command_scheduler() { CMD2_VAR_VALUE("scheduler.max_active", int64_t(-1)); - CMD2_DL("scheduler.simple.added", tr1::bind(&cmd_scheduler_simple_added, tr1::placeholders::_1)); - CMD2_DL("scheduler.simple.removed", tr1::bind(&cmd_scheduler_simple_removed, tr1::placeholders::_1)); - CMD2_DL("scheduler.simple.update", tr1::bind(&cmd_scheduler_simple_update, tr1::placeholders::_1)); + CMD2_DL("scheduler.simple.added", std::bind(&cmd_scheduler_simple_added, std::placeholders::_1)); + CMD2_DL("scheduler.simple.removed", std::bind(&cmd_scheduler_simple_removed, std::placeholders::_1)); + CMD2_DL("scheduler.simple.update", std::bind(&cmd_scheduler_simple_update, std::placeholders::_1)); } diff --git a/src/command_throttle.cc b/src/command_throttle.cc index ea749aea..bfe95eea 100644 --- a/src/command_throttle.cc +++ b/src/command_throttle.cc @@ -173,8 +173,8 @@ throttle_update(const char* variable, int64_t value) { void initialize_command_throttle() { - CMD2_ANY ("throttle.unchoked_uploads", tr1::bind(&torrent::ResourceManager::currently_upload_unchoked, torrent::resource_manager())); - CMD2_ANY ("throttle.unchoked_downloads", tr1::bind(&torrent::ResourceManager::currently_download_unchoked, torrent::resource_manager())); + CMD2_ANY ("throttle.unchoked_uploads", std::bind(&torrent::ResourceManager::currently_upload_unchoked, torrent::resource_manager())); + CMD2_ANY ("throttle.unchoked_downloads", std::bind(&torrent::ResourceManager::currently_download_unchoked, torrent::resource_manager())); CMD2_VAR_VALUE ("throttle.min_peers.normal", 100); CMD2_VAR_VALUE ("throttle.max_peers.normal", 200); @@ -196,31 +196,31 @@ initialize_command_throttle() { CMD2_REDIRECT_GENERIC("throttle.max_downloads.div", "throttle.max_downloads.div._val"); CMD2_REDIRECT_GENERIC("throttle.max_downloads.global", "throttle.max_downloads.global._val"); - CMD2_ANY_VALUE ("throttle.max_uploads.div.set", tr1::bind(&throttle_update, "throttle.max_uploads.div._val.set", tr1::placeholders::_2)); - CMD2_ANY_VALUE ("throttle.max_uploads.global.set", tr1::bind(&throttle_update, "throttle.max_uploads.global._val.set", tr1::placeholders::_2)); - CMD2_ANY_VALUE ("throttle.max_downloads.div.set", tr1::bind(&throttle_update, "throttle.max_downloads.div._val.set", tr1::placeholders::_2)); - CMD2_ANY_VALUE ("throttle.max_downloads.global.set", tr1::bind(&throttle_update, "throttle.max_downloads.global._val.set", tr1::placeholders::_2)); + CMD2_ANY_VALUE ("throttle.max_uploads.div.set", std::bind(&throttle_update, "throttle.max_uploads.div._val.set", std::placeholders::_2)); + CMD2_ANY_VALUE ("throttle.max_uploads.global.set", std::bind(&throttle_update, "throttle.max_uploads.global._val.set", std::placeholders::_2)); + CMD2_ANY_VALUE ("throttle.max_downloads.div.set", std::bind(&throttle_update, "throttle.max_downloads.div._val.set", std::placeholders::_2)); + CMD2_ANY_VALUE ("throttle.max_downloads.global.set", std::bind(&throttle_update, "throttle.max_downloads.global._val.set", std::placeholders::_2)); // TODO: Move the logic into some libtorrent function. - CMD2_ANY ("throttle.global_up.rate", tr1::bind(&torrent::Rate::rate, torrent::up_rate())); - CMD2_ANY ("throttle.global_up.total", tr1::bind(&torrent::Rate::total, torrent::up_rate())); - CMD2_ANY ("throttle.global_up.max_rate", tr1::bind(&torrent::Throttle::max_rate, torrent::up_throttle_global())); - CMD2_ANY_VALUE_V ("throttle.global_up.max_rate.set", tr1::bind(&ui::Root::set_up_throttle_i64, control->ui(), tr1::placeholders::_2)); - CMD2_ANY_VALUE_KB("throttle.global_up.max_rate.set_kb", tr1::bind(&ui::Root::set_up_throttle_i64, control->ui(), tr1::placeholders::_2)); - CMD2_ANY ("throttle.global_down.rate", tr1::bind(&torrent::Rate::rate, torrent::down_rate())); - CMD2_ANY ("throttle.global_down.total", tr1::bind(&torrent::Rate::total, torrent::down_rate())); - CMD2_ANY ("throttle.global_down.max_rate", tr1::bind(&torrent::Throttle::max_rate, torrent::down_throttle_global())); - CMD2_ANY_VALUE_V ("throttle.global_down.max_rate.set", tr1::bind(&ui::Root::set_down_throttle_i64, control->ui(), tr1::placeholders::_2)); - CMD2_ANY_VALUE_KB("throttle.global_down.max_rate.set_kb", tr1::bind(&ui::Root::set_down_throttle_i64, control->ui(), tr1::placeholders::_2)); + CMD2_ANY ("throttle.global_up.rate", std::bind(&torrent::Rate::rate, torrent::up_rate())); + CMD2_ANY ("throttle.global_up.total", std::bind(&torrent::Rate::total, torrent::up_rate())); + CMD2_ANY ("throttle.global_up.max_rate", std::bind(&torrent::Throttle::max_rate, torrent::up_throttle_global())); + CMD2_ANY_VALUE_V ("throttle.global_up.max_rate.set", std::bind(&ui::Root::set_up_throttle_i64, control->ui(), std::placeholders::_2)); + CMD2_ANY_VALUE_KB("throttle.global_up.max_rate.set_kb", std::bind(&ui::Root::set_up_throttle_i64, control->ui(), std::placeholders::_2)); + CMD2_ANY ("throttle.global_down.rate", std::bind(&torrent::Rate::rate, torrent::down_rate())); + CMD2_ANY ("throttle.global_down.total", std::bind(&torrent::Rate::total, torrent::down_rate())); + CMD2_ANY ("throttle.global_down.max_rate", std::bind(&torrent::Throttle::max_rate, torrent::down_throttle_global())); + CMD2_ANY_VALUE_V ("throttle.global_down.max_rate.set", std::bind(&ui::Root::set_down_throttle_i64, control->ui(), std::placeholders::_2)); + CMD2_ANY_VALUE_KB("throttle.global_down.max_rate.set_kb", std::bind(&ui::Root::set_down_throttle_i64, control->ui(), std::placeholders::_2)); // Temporary names, need to change this to accept real rates rather // than kB. - CMD2_ANY_LIST ("throttle.up", tr1::bind(&apply_throttle, tr1::placeholders::_2, true)); - CMD2_ANY_LIST ("throttle.down", tr1::bind(&apply_throttle, tr1::placeholders::_2, false)); - CMD2_ANY_LIST ("throttle.ip", tr1::bind(&apply_address_throttle, tr1::placeholders::_2)); + CMD2_ANY_LIST ("throttle.up", std::bind(&apply_throttle, std::placeholders::_2, true)); + CMD2_ANY_LIST ("throttle.down", std::bind(&apply_throttle, std::placeholders::_2, false)); + CMD2_ANY_LIST ("throttle.ip", std::bind(&apply_address_throttle, std::placeholders::_2)); - CMD2_ANY_STRING ("throttle.up.max", tr1::bind(&retrieve_throttle_info, tr1::placeholders::_2, throttle_info_up | throttle_info_max)); - CMD2_ANY_STRING ("throttle.up.rate", tr1::bind(&retrieve_throttle_info, tr1::placeholders::_2, throttle_info_up | throttle_info_rate)); - CMD2_ANY_STRING ("throttle.down.max", tr1::bind(&retrieve_throttle_info, tr1::placeholders::_2, throttle_info_down | throttle_info_max)); - CMD2_ANY_STRING ("throttle.down.rate", tr1::bind(&retrieve_throttle_info, tr1::placeholders::_2, throttle_info_down | throttle_info_rate)); + CMD2_ANY_STRING ("throttle.up.max", std::bind(&retrieve_throttle_info, std::placeholders::_2, throttle_info_up | throttle_info_max)); + CMD2_ANY_STRING ("throttle.up.rate", std::bind(&retrieve_throttle_info, std::placeholders::_2, throttle_info_up | throttle_info_rate)); + CMD2_ANY_STRING ("throttle.down.max", std::bind(&retrieve_throttle_info, std::placeholders::_2, throttle_info_down | throttle_info_max)); + CMD2_ANY_STRING ("throttle.down.rate", std::bind(&retrieve_throttle_info, std::placeholders::_2, throttle_info_down | throttle_info_rate)); } diff --git a/src/command_tracker.cc b/src/command_tracker.cc index 63bf691f..30c56eec 100644 --- a/src/command_tracker.cc +++ b/src/command_tracker.cc @@ -111,59 +111,59 @@ apply_enable_trackers(int64_t arg) { void initialize_command_tracker() { - CMD2_TRACKER ("t.is_open", tr1::bind(&torrent::Tracker::is_busy, tr1::placeholders::_1)); - CMD2_TRACKER ("t.is_enabled", tr1::bind(&torrent::Tracker::is_enabled, tr1::placeholders::_1)); - CMD2_TRACKER ("t.is_usable", tr1::bind(&torrent::Tracker::is_usable, tr1::placeholders::_1)); - CMD2_TRACKER ("t.is_busy", tr1::bind(&torrent::Tracker::is_busy, tr1::placeholders::_1)); - CMD2_TRACKER ("t.is_extra_tracker", tr1::bind(&torrent::Tracker::is_extra_tracker, tr1::placeholders::_1)); - CMD2_TRACKER ("t.can_scrape", tr1::bind(&torrent::Tracker::can_scrape, tr1::placeholders::_1)); + CMD2_TRACKER ("t.is_open", std::bind(&torrent::Tracker::is_busy, std::placeholders::_1)); + CMD2_TRACKER ("t.is_enabled", std::bind(&torrent::Tracker::is_enabled, std::placeholders::_1)); + CMD2_TRACKER ("t.is_usable", std::bind(&torrent::Tracker::is_usable, std::placeholders::_1)); + CMD2_TRACKER ("t.is_busy", std::bind(&torrent::Tracker::is_busy, std::placeholders::_1)); + CMD2_TRACKER ("t.is_extra_tracker", std::bind(&torrent::Tracker::is_extra_tracker, std::placeholders::_1)); + CMD2_TRACKER ("t.can_scrape", std::bind(&torrent::Tracker::can_scrape, std::placeholders::_1)); - CMD2_TRACKER_V ("t.enable", tr1::bind(&torrent::Tracker::enable, tr1::placeholders::_1)); - CMD2_TRACKER_V ("t.disable", tr1::bind(&torrent::Tracker::disable, tr1::placeholders::_1)); + CMD2_TRACKER_V ("t.enable", std::bind(&torrent::Tracker::enable, std::placeholders::_1)); + CMD2_TRACKER_V ("t.disable", std::bind(&torrent::Tracker::disable, std::placeholders::_1)); - CMD2_TRACKER_VALUE_V("t.is_enabled.set", tr1::bind(&tracker_set_enabled, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_TRACKER_VALUE_V("t.is_enabled.set", std::bind(&tracker_set_enabled, std::placeholders::_1, std::placeholders::_2)); - CMD2_TRACKER ("t.url", tr1::bind(&torrent::Tracker::url, tr1::placeholders::_1)); - CMD2_TRACKER ("t.group", tr1::bind(&torrent::Tracker::group, tr1::placeholders::_1)); - CMD2_TRACKER ("t.type", tr1::bind(&torrent::Tracker::type, tr1::placeholders::_1)); - CMD2_TRACKER ("t.id", tr1::bind(&torrent::Tracker::tracker_id, tr1::placeholders::_1)); + CMD2_TRACKER ("t.url", std::bind(&torrent::Tracker::url, std::placeholders::_1)); + CMD2_TRACKER ("t.group", std::bind(&torrent::Tracker::group, std::placeholders::_1)); + CMD2_TRACKER ("t.type", std::bind(&torrent::Tracker::type, std::placeholders::_1)); + CMD2_TRACKER ("t.id", std::bind(&torrent::Tracker::tracker_id, std::placeholders::_1)); - CMD2_TRACKER ("t.latest_event", tr1::bind(&torrent::Tracker::latest_event, tr1::placeholders::_1)); - CMD2_TRACKER ("t.latest_new_peers", tr1::bind(&torrent::Tracker::latest_new_peers, tr1::placeholders::_1)); - CMD2_TRACKER ("t.latest_sum_peers", tr1::bind(&torrent::Tracker::latest_sum_peers, tr1::placeholders::_1)); + CMD2_TRACKER ("t.latest_event", std::bind(&torrent::Tracker::latest_event, std::placeholders::_1)); + CMD2_TRACKER ("t.latest_new_peers", std::bind(&torrent::Tracker::latest_new_peers, std::placeholders::_1)); + CMD2_TRACKER ("t.latest_sum_peers", std::bind(&torrent::Tracker::latest_sum_peers, std::placeholders::_1)); // Time since last connection, connection attempt. - CMD2_TRACKER ("t.normal_interval", tr1::bind(&torrent::Tracker::normal_interval, tr1::placeholders::_1)); - CMD2_TRACKER ("t.min_interval", tr1::bind(&torrent::Tracker::min_interval, tr1::placeholders::_1)); + CMD2_TRACKER ("t.normal_interval", std::bind(&torrent::Tracker::normal_interval, std::placeholders::_1)); + CMD2_TRACKER ("t.min_interval", std::bind(&torrent::Tracker::min_interval, std::placeholders::_1)); - CMD2_TRACKER ("t.activity_time_next", tr1::bind(&torrent::Tracker::activity_time_next, tr1::placeholders::_1)); - CMD2_TRACKER ("t.activity_time_last", tr1::bind(&torrent::Tracker::activity_time_last, tr1::placeholders::_1)); + CMD2_TRACKER ("t.activity_time_next", std::bind(&torrent::Tracker::activity_time_next, std::placeholders::_1)); + CMD2_TRACKER ("t.activity_time_last", std::bind(&torrent::Tracker::activity_time_last, std::placeholders::_1)); - CMD2_TRACKER ("t.success_time_next", tr1::bind(&torrent::Tracker::success_time_next, tr1::placeholders::_1)); - CMD2_TRACKER ("t.success_time_last", tr1::bind(&torrent::Tracker::success_time_last, tr1::placeholders::_1)); - CMD2_TRACKER ("t.success_counter", tr1::bind(&torrent::Tracker::success_counter, tr1::placeholders::_1)); + CMD2_TRACKER ("t.success_time_next", std::bind(&torrent::Tracker::success_time_next, std::placeholders::_1)); + CMD2_TRACKER ("t.success_time_last", std::bind(&torrent::Tracker::success_time_last, std::placeholders::_1)); + CMD2_TRACKER ("t.success_counter", std::bind(&torrent::Tracker::success_counter, std::placeholders::_1)); - CMD2_TRACKER ("t.failed_time_next", tr1::bind(&torrent::Tracker::failed_time_next, tr1::placeholders::_1)); - CMD2_TRACKER ("t.failed_time_last", tr1::bind(&torrent::Tracker::failed_time_last, tr1::placeholders::_1)); - CMD2_TRACKER ("t.failed_counter", tr1::bind(&torrent::Tracker::failed_counter, tr1::placeholders::_1)); + CMD2_TRACKER ("t.failed_time_next", std::bind(&torrent::Tracker::failed_time_next, std::placeholders::_1)); + CMD2_TRACKER ("t.failed_time_last", std::bind(&torrent::Tracker::failed_time_last, std::placeholders::_1)); + CMD2_TRACKER ("t.failed_counter", std::bind(&torrent::Tracker::failed_counter, std::placeholders::_1)); - CMD2_TRACKER ("t.scrape_time_last", tr1::bind(&torrent::Tracker::scrape_time_last, tr1::placeholders::_1)); - CMD2_TRACKER ("t.scrape_counter", tr1::bind(&torrent::Tracker::scrape_counter, tr1::placeholders::_1)); + CMD2_TRACKER ("t.scrape_time_last", std::bind(&torrent::Tracker::scrape_time_last, std::placeholders::_1)); + CMD2_TRACKER ("t.scrape_counter", std::bind(&torrent::Tracker::scrape_counter, std::placeholders::_1)); - CMD2_TRACKER ("t.scrape_complete", tr1::bind(&torrent::Tracker::scrape_complete, tr1::placeholders::_1)); - CMD2_TRACKER ("t.scrape_incomplete", tr1::bind(&torrent::Tracker::scrape_incomplete, tr1::placeholders::_1)); - CMD2_TRACKER ("t.scrape_downloaded", tr1::bind(&torrent::Tracker::scrape_downloaded, tr1::placeholders::_1)); + CMD2_TRACKER ("t.scrape_complete", std::bind(&torrent::Tracker::scrape_complete, std::placeholders::_1)); + CMD2_TRACKER ("t.scrape_incomplete", std::bind(&torrent::Tracker::scrape_incomplete, std::placeholders::_1)); + CMD2_TRACKER ("t.scrape_downloaded", std::bind(&torrent::Tracker::scrape_downloaded, std::placeholders::_1)); - CMD2_ANY_VALUE ("trackers.enable", tr1::bind(&apply_enable_trackers, int64_t(1))); - CMD2_ANY_VALUE ("trackers.disable", tr1::bind(&apply_enable_trackers, int64_t(0))); + CMD2_ANY_VALUE ("trackers.enable", std::bind(&apply_enable_trackers, int64_t(1))); + CMD2_ANY_VALUE ("trackers.disable", std::bind(&apply_enable_trackers, int64_t(0))); CMD2_VAR_VALUE ("trackers.numwant", -1); CMD2_VAR_BOOL ("trackers.use_udp", true); - CMD2_ANY_STRING_V ("dht.mode.set", tr1::bind(&core::DhtManager::set_mode, control->dht_manager(), tr1::placeholders::_2)); + CMD2_ANY_STRING_V ("dht.mode.set", std::bind(&core::DhtManager::set_mode, control->dht_manager(), std::placeholders::_2)); CMD2_VAR_VALUE ("dht.port", int64_t(6881)); - CMD2_ANY_STRING ("dht.add_node", tr1::bind(&apply_dht_add_node, tr1::placeholders::_2)); - CMD2_ANY ("dht.statistics", tr1::bind(&core::DhtManager::dht_statistics, control->dht_manager())); - CMD2_ANY ("dht.throttle.name", tr1::bind(&core::DhtManager::throttle_name, control->dht_manager())); - CMD2_ANY_STRING_V ("dht.throttle.name.set", tr1::bind(&core::DhtManager::set_throttle_name, control->dht_manager(), tr1::placeholders::_2)); + CMD2_ANY_STRING ("dht.add_node", std::bind(&apply_dht_add_node, std::placeholders::_2)); + CMD2_ANY ("dht.statistics", std::bind(&core::DhtManager::dht_statistics, control->dht_manager())); + CMD2_ANY ("dht.throttle.name", std::bind(&core::DhtManager::throttle_name, control->dht_manager())); + CMD2_ANY_STRING_V ("dht.throttle.name.set", std::bind(&core::DhtManager::set_throttle_name, control->dht_manager(), std::placeholders::_2)); } diff --git a/src/command_ui.cc b/src/command_ui.cc index 2456ca71..8540964a 100644 --- a/src/command_ui.cc +++ b/src/command_ui.cc @@ -518,41 +518,41 @@ void initialize_command_ui() { CMD2_VAR_STRING("keys.layout", "qwerty"); - CMD2_ANY_STRING("view.add", object_convert_void(tr1::bind(&core::ViewManager::insert_throw, control->view_manager(), tr1::placeholders::_2))); + CMD2_ANY_STRING("view.add", object_convert_void(std::bind(&core::ViewManager::insert_throw, control->view_manager(), std::placeholders::_2))); - CMD2_ANY_L ("view.list", tr1::bind(&apply_view_list)); - CMD2_ANY_LIST("view.set", tr1::bind(&apply_view_set, tr1::placeholders::_2)); + CMD2_ANY_L ("view.list", std::bind(&apply_view_list)); + CMD2_ANY_LIST("view.set", std::bind(&apply_view_set, std::placeholders::_2)); - CMD2_ANY_LIST("view.filter", tr1::bind(&apply_view_event, &core::ViewManager::set_filter, tr1::placeholders::_2)); - CMD2_ANY_LIST("view.filter_on", tr1::bind(&apply_view_filter_on, tr1::placeholders::_2)); + CMD2_ANY_LIST("view.filter", std::bind(&apply_view_event, &core::ViewManager::set_filter, std::placeholders::_2)); + CMD2_ANY_LIST("view.filter_on", std::bind(&apply_view_filter_on, std::placeholders::_2)); - CMD2_ANY_LIST("view.sort", tr1::bind(&apply_view_sort, tr1::placeholders::_2)); - CMD2_ANY_LIST("view.sort_new", tr1::bind(&apply_view_event, &core::ViewManager::set_sort_new, tr1::placeholders::_2)); - CMD2_ANY_LIST("view.sort_current", tr1::bind(&apply_view_event, &core::ViewManager::set_sort_current, tr1::placeholders::_2)); + CMD2_ANY_LIST("view.sort", std::bind(&apply_view_sort, std::placeholders::_2)); + CMD2_ANY_LIST("view.sort_new", std::bind(&apply_view_event, &core::ViewManager::set_sort_new, std::placeholders::_2)); + CMD2_ANY_LIST("view.sort_current", std::bind(&apply_view_event, &core::ViewManager::set_sort_current, std::placeholders::_2)); - CMD2_ANY_LIST("view.event_added", tr1::bind(&apply_view_event, &core::ViewManager::set_event_added, tr1::placeholders::_2)); - CMD2_ANY_LIST("view.event_removed", tr1::bind(&apply_view_event, &core::ViewManager::set_event_removed, tr1::placeholders::_2)); + CMD2_ANY_LIST("view.event_added", std::bind(&apply_view_event, &core::ViewManager::set_event_added, std::placeholders::_2)); + CMD2_ANY_LIST("view.event_removed", std::bind(&apply_view_event, &core::ViewManager::set_event_removed, std::placeholders::_2)); // Cleanup and add . to view. - CMD2_ANY_STRING("view.size", tr1::bind(&cmd_view_size, tr1::placeholders::_2)); - CMD2_ANY_STRING("view.size_not_visible", tr1::bind(&cmd_view_size_not_visible, tr1::placeholders::_2)); - CMD2_ANY_STRING("view.persistent", tr1::bind(&cmd_view_persistent, tr1::placeholders::_2)); + CMD2_ANY_STRING("view.size", std::bind(&cmd_view_size, std::placeholders::_2)); + CMD2_ANY_STRING("view.size_not_visible", std::bind(&cmd_view_size_not_visible, std::placeholders::_2)); + CMD2_ANY_STRING("view.persistent", std::bind(&cmd_view_persistent, std::placeholders::_2)); - CMD2_ANY_STRING_V("view.filter_all", tr1::bind(&core::View::filter, tr1::bind(&core::ViewManager::find_ptr_throw, control->view_manager(), tr1::placeholders::_2))); + CMD2_ANY_STRING_V("view.filter_all", std::bind(&core::View::filter, std::bind(&core::ViewManager::find_ptr_throw, control->view_manager(), std::placeholders::_2))); - CMD2_DL_STRING ("view.filter_download", tr1::bind(&cmd_view_filter_download, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_STRING ("view.set_visible", tr1::bind(&cmd_view_set_visible, tr1::placeholders::_1, tr1::placeholders::_2)); - CMD2_DL_STRING ("view.set_not_visible", tr1::bind(&cmd_view_set_not_visible, tr1::placeholders::_1, tr1::placeholders::_2)); + CMD2_DL_STRING ("view.filter_download", std::bind(&cmd_view_filter_download, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_STRING ("view.set_visible", std::bind(&cmd_view_set_visible, std::placeholders::_1, std::placeholders::_2)); + CMD2_DL_STRING ("view.set_not_visible", std::bind(&cmd_view_set_not_visible, std::placeholders::_1, std::placeholders::_2)); // Commands that affect the default rtorrent UI. - CMD2_DL ("ui.unfocus_download", tr1::bind(&cmd_ui_unfocus_download, tr1::placeholders::_1)); - CMD2_ANY_STRING("ui.current_view.set", tr1::bind(&cmd_ui_set_view, tr1::placeholders::_2)); + CMD2_DL ("ui.unfocus_download", std::bind(&cmd_ui_unfocus_download, std::placeholders::_1)); + CMD2_ANY_STRING("ui.current_view.set", std::bind(&cmd_ui_set_view, std::placeholders::_2)); // Move. CMD2_ANY("print", &apply_print); CMD2_ANY("cat", &apply_cat); - CMD2_ANY("if", tr1::bind(&apply_if, tr1::placeholders::_1, tr1::placeholders::_2, 0)); + CMD2_ANY("if", std::bind(&apply_if, std::placeholders::_1, std::placeholders::_2, 0)); CMD2_ANY("not", &apply_not); CMD2_ANY("false", &apply_false); CMD2_ANY("and", &apply_and); @@ -560,22 +560,22 @@ initialize_command_ui() { // A temporary command for handling stuff until we get proper // support for seperation of commands and literals. - CMD2_ANY("branch", tr1::bind(&apply_if, tr1::placeholders::_1, tr1::placeholders::_2, 1)); + CMD2_ANY("branch", std::bind(&apply_if, std::placeholders::_1, std::placeholders::_2, 1)); CMD2_ANY_LIST("less", &apply_less); CMD2_ANY_LIST("greater", &apply_greater); CMD2_ANY_LIST("equal", &apply_equal); - CMD2_ANY_VALUE("convert.gm_time", tr1::bind(&apply_to_time, tr1::placeholders::_2, 0)); - CMD2_ANY_VALUE("convert.gm_date", tr1::bind(&apply_to_time, tr1::placeholders::_2, 0x2)); - CMD2_ANY_VALUE("convert.time", tr1::bind(&apply_to_time, tr1::placeholders::_2, 0x1)); - CMD2_ANY_VALUE("convert.date", tr1::bind(&apply_to_time, tr1::placeholders::_2, 0x1 | 0x2)); - CMD2_ANY_VALUE("convert.elapsed_time", tr1::bind(&apply_to_elapsed_time, tr1::placeholders::_2)); - CMD2_ANY_VALUE("convert.kb", tr1::bind(&apply_to_kb, tr1::placeholders::_2)); - CMD2_ANY_VALUE("convert.mb", tr1::bind(&apply_to_mb, tr1::placeholders::_2)); - CMD2_ANY_VALUE("convert.xb", tr1::bind(&apply_to_xb, tr1::placeholders::_2)); - CMD2_ANY_VALUE("convert.throttle", tr1::bind(&apply_to_throttle, tr1::placeholders::_2)); + CMD2_ANY_VALUE("convert.gm_time", std::bind(&apply_to_time, std::placeholders::_2, 0)); + CMD2_ANY_VALUE("convert.gm_date", std::bind(&apply_to_time, std::placeholders::_2, 0x2)); + CMD2_ANY_VALUE("convert.time", std::bind(&apply_to_time, std::placeholders::_2, 0x1)); + CMD2_ANY_VALUE("convert.date", std::bind(&apply_to_time, std::placeholders::_2, 0x1 | 0x2)); + CMD2_ANY_VALUE("convert.elapsed_time", std::bind(&apply_to_elapsed_time, std::placeholders::_2)); + CMD2_ANY_VALUE("convert.kb", std::bind(&apply_to_kb, std::placeholders::_2)); + CMD2_ANY_VALUE("convert.mb", std::bind(&apply_to_mb, std::placeholders::_2)); + CMD2_ANY_VALUE("convert.xb", std::bind(&apply_to_xb, std::placeholders::_2)); + CMD2_ANY_VALUE("convert.throttle", std::bind(&apply_to_throttle, std::placeholders::_2)); - CMD2_ANY_LIST ("elapsed.less", tr1::bind(&apply_elapsed_less, tr1::placeholders::_2)); - CMD2_ANY_LIST ("elapsed.greater", tr1::bind(&apply_elapsed_greater, tr1::placeholders::_2)); + CMD2_ANY_LIST ("elapsed.less", std::bind(&apply_elapsed_less, std::placeholders::_2)); + CMD2_ANY_LIST ("elapsed.greater", std::bind(&apply_elapsed_greater, std::placeholders::_2)); } diff --git a/src/control.cc b/src/control.cc index cb58c2f2..ed60f5fb 100644 --- a/src/control.cc +++ b/src/control.cc @@ -76,9 +76,9 @@ Control::Control() : m_viewManager = new core::ViewManager(); m_dhtManager = new core::DhtManager(); - m_inputStdin->slot_pressed(std::tr1::bind(&input::Manager::pressed, m_input, std::tr1::placeholders::_1)); + m_inputStdin->slot_pressed(std::bind(&input::Manager::pressed, m_input, std::placeholders::_1)); - m_taskShutdown.slot() = std::tr1::bind(&Control::handle_shutdown, this); + m_taskShutdown.slot() = std::bind(&Control::handle_shutdown, this); m_commandScheduler->set_slot_error_message(rak::mem_fn(m_core, &core::Manager::push_log_std)); } diff --git a/src/core/curl_get.cc b/src/core/curl_get.cc index fe9f8d62..3179b734 100644 --- a/src/core/curl_get.cc +++ b/src/core/curl_get.cc @@ -82,7 +82,7 @@ CurlGet::start() { // Normally libcurl should handle the timeout. But sometimes that doesn't // work right so we do a fallback timeout that just aborts the transfer. - m_taskTimeout.slot() = std::tr1::bind(&CurlGet::receive_timeout, this); + m_taskTimeout.slot() = std::bind(&CurlGet::receive_timeout, this); priority_queue_erase(&taskScheduler, &m_taskTimeout); priority_queue_insert(&taskScheduler, &m_taskTimeout, cachedTime + rak::timer::from_seconds(m_timeout + 5)); } diff --git a/src/core/curl_stack.cc b/src/core/curl_stack.cc index 5c52dbc9..a7988f89 100644 --- a/src/core/curl_stack.cc +++ b/src/core/curl_stack.cc @@ -54,7 +54,7 @@ CurlStack::CurlStack() : m_ssl_verify_peer(true), m_dns_timeout(60) { - m_taskTimeout.slot() = std::tr1::bind(&CurlStack::receive_timeout, this); + m_taskTimeout.slot() = std::bind(&CurlStack::receive_timeout, this); #if (LIBCURL_VERSION_NUM >= 0x071000) curl_multi_setopt((CURLM*)m_handle, CURLMOPT_TIMERDATA, this); diff --git a/src/core/dht_manager.cc b/src/core/dht_manager.cc index a3ca8930..8c4b7b1b 100644 --- a/src/core/dht_manager.cc +++ b/src/core/dht_manager.cc @@ -114,7 +114,7 @@ DhtManager::start_dht() { torrent::dht_manager()->start(port); torrent::dht_manager()->reset_statistics(); - m_updateTimeout.slot() = std::tr1::bind(&DhtManager::update, this); + m_updateTimeout.slot() = std::bind(&DhtManager::update, this); priority_queue_insert(&taskScheduler, &m_updateTimeout, (cachedTime + rak::timer::from_seconds(60)).round_seconds()); m_dhtPrevCycle = 0; @@ -197,7 +197,7 @@ DhtManager::update() { break; if (itr == end) { - m_stopTimeout.slot() = std::tr1::bind(&DhtManager::stop_dht, this); + m_stopTimeout.slot() = std::bind(&DhtManager::stop_dht, this); priority_queue_insert(&taskScheduler, &m_stopTimeout, (cachedTime + rak::timer::from_seconds(15 * 60)).round_seconds()); } } diff --git a/src/core/download.cc b/src/core/download.cc index 01f2f2f8..fb58efbf 100644 --- a/src/core/download.cc +++ b/src/core/download.cc @@ -62,8 +62,8 @@ Download::Download(download_type d) : m_resumeFlags(~uint32_t()), m_group(0) { - m_download.info()->signal_tracker_success().push_back(tr1::bind(&Download::receive_tracker_msg, this, "")); - m_download.info()->signal_tracker_failed().push_back(tr1::bind(&Download::receive_tracker_msg, this, tr1::placeholders::_1)); + m_download.info()->signal_tracker_success().push_back(std::bind(&Download::receive_tracker_msg, this, "")); + m_download.info()->signal_tracker_failed().push_back(std::bind(&Download::receive_tracker_msg, this, std::placeholders::_1)); } Download::~Download() { diff --git a/src/core/download_factory.cc b/src/core/download_factory.cc index d3d23f63..6105a27d 100644 --- a/src/core/download_factory.cc +++ b/src/core/download_factory.cc @@ -41,7 +41,7 @@ #include #include #include -#include +#include lt_tr1_functional #include #include #include @@ -107,8 +107,8 @@ DownloadFactory::DownloadFactory(Manager* m) : m_printLog(true), m_isFile(false) { - m_taskLoad.slot() = std::tr1::bind(&DownloadFactory::receive_load, this); - m_taskCommit.slot() = std::tr1::bind(&DownloadFactory::receive_commit, this); + m_taskLoad.slot() = std::bind(&DownloadFactory::receive_load, this); + m_taskCommit.slot() = std::bind(&DownloadFactory::receive_commit, this); // m_variables["connection_leech"] = rpc::call_command("protocol.connection.leech"); // m_variables["connection_seed"] = rpc::call_command("protocol.connection.seed"); @@ -158,8 +158,8 @@ DownloadFactory::receive_load() { m_stream = new std::stringstream; HttpQueue::iterator itr = m_manager->http_queue()->insert(m_uri, m_stream); - (*itr)->signal_done().push_front(std::tr1::bind(&DownloadFactory::receive_loaded, this)); - (*itr)->signal_failed().push_front(std::tr1::bind(&DownloadFactory::receive_failed, this, std::tr1::placeholders::_1)); + (*itr)->signal_done().push_front(std::bind(&DownloadFactory::receive_loaded, this)); + (*itr)->signal_failed().push_front(std::bind(&DownloadFactory::receive_failed, this, std::placeholders::_1)); m_variables["tied_to_file"] = (int64_t)false; diff --git a/src/core/download_factory.h b/src/core/download_factory.h index 8d054466..01695e88 100644 --- a/src/core/download_factory.h +++ b/src/core/download_factory.h @@ -44,7 +44,7 @@ #include #include #include -#include +#include lt_tr1_functional #include "http_queue.h" @@ -54,7 +54,7 @@ class Manager; class DownloadFactory { public: - typedef std::tr1::function slot_void; + typedef std::function slot_void; typedef std::vector command_list_type; // Do not destroy this object while it is in a HttpQueue. diff --git a/src/core/download_list.cc b/src/core/download_list.cc index 125c26e7..3047888c 100644 --- a/src/core/download_list.cc +++ b/src/core/download_list.cc @@ -180,8 +180,8 @@ DownloadList::insert(Download* download) { lt_log_print_info(torrent::LOG_TORRENT_INFO, download->info(), "download_list", "Inserting download."); try { - (*itr)->data()->slot_initial_hash() = tr1::bind(&DownloadList::hash_done, this, download); - (*itr)->data()->slot_download_done() = tr1::bind(&DownloadList::received_finished, this, download); + (*itr)->data()->slot_initial_hash() = std::bind(&DownloadList::hash_done, this, download); + (*itr)->data()->slot_download_done() = std::bind(&DownloadList::received_finished, this, download); // This needs to be separated into two different calls to ensure // the download remains in the view. diff --git a/src/core/download_slot_map.h b/src/core/download_slot_map.h index 5b4f921b..3fc04d5f 100644 --- a/src/core/download_slot_map.h +++ b/src/core/download_slot_map.h @@ -39,15 +39,15 @@ #include #include -#include +#include lt_tr1_functional #include "download.h" namespace core { -class DownloadSlotMap : public std::map > { +class DownloadSlotMap : public std::map > { public: - typedef std::tr1::function slot_download; + typedef std::function slot_download; typedef std::map Base; void insert(const std::string& key, slot_download s) { Base::operator[](key) = s; } diff --git a/src/core/http_queue.cc b/src/core/http_queue.cc index c433a956..d3ae2efd 100644 --- a/src/core/http_queue.cc +++ b/src/core/http_queue.cc @@ -56,8 +56,8 @@ HttpQueue::insert(const std::string& url, std::iostream* s) { iterator signal_itr = base_type::insert(end(), h.get()); - h->signal_done().push_back(std::tr1::bind(&HttpQueue::erase, this, signal_itr)); - h->signal_failed().push_back(std::tr1::bind(&HttpQueue::erase, this, signal_itr)); + h->signal_done().push_back(std::bind(&HttpQueue::erase, this, signal_itr)); + h->signal_failed().push_back(std::bind(&HttpQueue::erase, this, signal_itr)); (*signal_itr)->start(); diff --git a/src/core/http_queue.h b/src/core/http_queue.h index fee51271..17ab9573 100644 --- a/src/core/http_queue.h +++ b/src/core/http_queue.h @@ -39,7 +39,7 @@ #include #include -#include +#include lt_tr1_functional namespace core { @@ -48,8 +48,8 @@ class CurlGet; class HttpQueue : private std::list { public: typedef std::list base_type; - typedef std::tr1::function slot_factory; - typedef std::tr1::function slot_curl_get; + typedef std::function slot_factory; + typedef std::function slot_curl_get; typedef std::list signal_curl_get; using base_type::iterator; diff --git a/src/core/manager.cc b/src/core/manager.cc index c7373e22..2c2bd3b4 100644 --- a/src/core/manager.cc +++ b/src/core/manager.cc @@ -74,6 +74,11 @@ namespace core { +const int Manager::create_start; +const int Manager::create_tied; +const int Manager::create_quiet; +const int Manager::create_raw_data; + void Manager::push_log(const char* msg) { m_log_important->lock_and_push_log(msg, strlen(msg), 0); @@ -113,7 +118,7 @@ Manager::set_hashing_view(View* v) { throw torrent::internal_error("Manager::set_hashing_view(...) received NULL or is already set."); m_hashingView = v; - m_hashingView->signal_changed().push_back(std::tr1::bind(&Manager::receive_hashing_changed, this)); + m_hashingView->signal_changed().push_back(std::bind(&Manager::receive_hashing_changed, this)); } torrent::ThrottlePair @@ -133,7 +138,7 @@ Manager::get_throttle(const std::string& name) { void Manager::set_address_throttle(uint32_t begin, uint32_t end, torrent::ThrottlePair throttles) { m_addressThrottles.set_merge(begin, end, throttles); - torrent::connection_manager()->address_throttle() = tr1::bind(&core::Manager::get_address_throttle, control->core(), tr1::placeholders::_1); + torrent::connection_manager()->address_throttle() = std::bind(&core::Manager::get_address_throttle, control->core(), std::placeholders::_1); } torrent::ThrottlePair @@ -144,8 +149,8 @@ Manager::get_address_throttle(const sockaddr* addr) { // Most of this should be possible to move out. void Manager::initialize_second() { - torrent::Http::slot_factory() = std::tr1::bind(&CurlStack::new_object, m_httpStack); - m_httpQueue->set_slot_factory(std::tr1::bind(&CurlStack::new_object, m_httpStack)); + torrent::Http::slot_factory() = std::bind(&CurlStack::new_object, m_httpStack); + m_httpQueue->set_slot_factory(std::bind(&CurlStack::new_object, m_httpStack)); CurlStack::global_init(); } @@ -330,7 +335,7 @@ Manager::try_create_download(const std::string& uri, int flags, const command_li f->set_start(flags & create_start); f->set_print_log(!(flags & create_quiet)); - f->slot_finished(std::tr1::bind(&rak::call_delete_func, f)); + f->slot_finished(std::bind(&rak::call_delete_func, f)); if (flags & create_raw_data) f->load_raw_data(uri); @@ -354,7 +359,7 @@ Manager::try_create_download_from_meta_download(torrent::Object* bencode, const f->set_start(meta.get_key_value("start")); f->set_print_log(meta.get_key_value("print_log")); - f->slot_finished(std::tr1::bind(&rak::call_delete_func, f)); + f->slot_finished(std::bind(&rak::call_delete_func, f)); // Bit of a waste to create the bencode repesentation here // only to have the DownloadFactory decode it. diff --git a/src/core/manager.h b/src/core/manager.h index d0f6dd85..62da4f89 100644 --- a/src/core/manager.h +++ b/src/core/manager.h @@ -69,8 +69,8 @@ public: typedef DownloadList::iterator DListItr; typedef utils::FileStatusCache FileStatusCache; - // typedef std::tr1::function slot_ready; - // typedef std::tr1::function slot_void; + // typedef std::function slot_ready; + // typedef std::function slot_void; Manager(); ~Manager(); diff --git a/src/core/view.cc b/src/core/view.cc index 1b5fc09c..c57c0f0e 100644 --- a/src/core/view.cc +++ b/src/core/view.cc @@ -177,7 +177,7 @@ View::initialize(const std::string& name) { m_focus = 0; set_last_changed(rak::timer()); - m_delayChanged.slot() = std::tr1::bind(&View::emit_changed_now, this); + m_delayChanged.slot() = std::bind(&View::emit_changed_now, this); } void @@ -282,11 +282,11 @@ View::filter() { // perhaps always clear them, thus not throwing anything. if (!m_event_removed.is_empty()) std::for_each(changed.begin(), splitChanged, - tr1::bind(&rpc::call_object_d_nothrow, m_event_removed, tr1::placeholders::_1)); + std::bind(&rpc::call_object_d_nothrow, m_event_removed, std::placeholders::_1)); if (!m_event_added.is_empty()) std::for_each(changed.begin(), splitChanged, - tr1::bind(&rpc::call_object_d_nothrow, m_event_added, tr1::placeholders::_1)); + std::bind(&rpc::call_object_d_nothrow, m_event_added, std::placeholders::_1)); emit_changed(); } diff --git a/src/core/view.h b/src/core/view.h index 69d9fb79..1196de3e 100644 --- a/src/core/view.h +++ b/src/core/view.h @@ -53,7 +53,7 @@ #include #include #include -#include +#include lt_tr1_functional #include "globals.h" @@ -64,7 +64,7 @@ class Download; class View : private std::vector { public: typedef std::vector base_type; - typedef std::tr1::function slot_void; + typedef std::function slot_void; typedef std::list signal_void; using base_type::iterator; diff --git a/src/display/frame.cc b/src/display/frame.cc index 8700662a..b9e47f97 100644 --- a/src/display/frame.cc +++ b/src/display/frame.cc @@ -38,7 +38,7 @@ #include #include -#include +#include lt_tr1_functional #include #include @@ -367,9 +367,9 @@ Frame::balance_row(uint32_t x, uint32_t y, uint32_t width, uint32_t height) { // // Else if we're short, only give each what they require. std::stable_sort(dynamicFrames, dynamicFrames + dynamicSize, - std::tr1::bind(std::greater(), - std::tr1::bind(&dynamic_min_height, std::tr1::placeholders::_1), - std::tr1::bind(&dynamic_min_height, std::tr1::placeholders::_2))); + std::bind(std::greater(), + std::bind(&dynamic_min_height, std::placeholders::_1), + std::bind(&dynamic_min_height, std::placeholders::_2))); bool retry; @@ -442,9 +442,9 @@ Frame::balance_column(uint32_t x, uint32_t y, uint32_t width, uint32_t height) { // // Else if we're short, only give each what they require. std::stable_sort(dynamicFrames, dynamicFrames + dynamicSize, - std::tr1::bind(std::greater(), - std::tr1::bind(&dynamic_min_width, std::tr1::placeholders::_1), - std::tr1::bind(&dynamic_min_width, std::tr1::placeholders::_2))); + std::bind(std::greater(), + std::bind(&dynamic_min_width, std::placeholders::_1), + std::bind(&dynamic_min_width, std::placeholders::_2))); bool retry; diff --git a/src/display/manager.cc b/src/display/manager.cc index dde6a615..84426703 100644 --- a/src/display/manager.cc +++ b/src/display/manager.cc @@ -50,7 +50,7 @@ namespace display { Manager::Manager() : m_forceRedraw(false) { - m_taskUpdate.slot() = std::tr1::bind(&Manager::receive_update, this); + m_taskUpdate.slot() = std::bind(&Manager::receive_update, this); } Manager::~Manager() { diff --git a/src/display/window.cc b/src/display/window.cc index 1246a681..91e67935 100644 --- a/src/display/window.cc +++ b/src/display/window.cc @@ -59,7 +59,7 @@ Window::Window(Canvas* canvas, int flags, extent_type minWidth, extent_type minH m_maxWidth(maxWidth), m_maxHeight(maxHeight) { - m_taskUpdate.slot() = std::tr1::bind(&Window::redraw, this); + m_taskUpdate.slot() = std::bind(&Window::redraw, this); } Window::~Window() { diff --git a/src/display/window_download_list.cc b/src/display/window_download_list.cc index ead4ddda..138ea8c9 100644 --- a/src/display/window_download_list.cc +++ b/src/display/window_download_list.cc @@ -68,7 +68,7 @@ WindowDownloadList::set_view(core::View* l) { m_view = l; if (m_view != NULL) - m_changed_itr = m_view->signal_changed().insert(m_view->signal_changed().begin(), std::tr1::bind(&Window::mark_dirty, this)); + m_changed_itr = m_view->signal_changed().insert(m_view->signal_changed().begin(), std::bind(&Window::mark_dirty, this)); } void diff --git a/src/display/window_file_list.cc b/src/display/window_file_list.cc index 7c9f692e..b5504908 100644 --- a/src/display/window_file_list.cc +++ b/src/display/window_file_list.cc @@ -36,6 +36,7 @@ #include "config.h" +#include #include #include #include diff --git a/src/display/window_http_queue.cc b/src/display/window_http_queue.cc index 90e3ca37..7b44d9b2 100644 --- a/src/display/window_http_queue.cc +++ b/src/display/window_http_queue.cc @@ -53,13 +53,13 @@ WindowHttpQueue::WindowHttpQueue(core::HttpQueue* q) : set_active(false); m_connInsert = m_queue->signal_insert().insert(m_queue->signal_insert().end(), - std::tr1::bind(&WindowHttpQueue::receive_insert, + std::bind(&WindowHttpQueue::receive_insert, this, - std::tr1::placeholders::_1)); + std::placeholders::_1)); m_connErase = m_queue->signal_erase().insert(m_queue->signal_insert().end(), - std::tr1::bind(&WindowHttpQueue::receive_erase, + std::bind(&WindowHttpQueue::receive_erase, this, - std::tr1::placeholders::_1)); + std::placeholders::_1)); } void diff --git a/src/display/window_http_queue.h b/src/display/window_http_queue.h index b454569d..70223e0c 100644 --- a/src/display/window_http_queue.h +++ b/src/display/window_http_queue.h @@ -37,7 +37,7 @@ #ifndef RTORRENT_DISPLAY_WINDOW_HTTP_QUEUE_H #define RTORRENT_DISPLAY_WINDOW_HTTP_QUEUE_H -#include +#include lt_tr1_functional #include "window.h" @@ -50,7 +50,7 @@ namespace display { class WindowHttpQueue : public Window { public: - typedef std::tr1::function slot_curl_get; + typedef std::function slot_curl_get; typedef std::list signal_curl_get; WindowHttpQueue(core::HttpQueue* q); diff --git a/src/display/window_log.cc b/src/display/window_log.cc index 11540224..d6146e8e 100644 --- a/src/display/window_log.cc +++ b/src/display/window_log.cc @@ -50,11 +50,11 @@ WindowLog::WindowLog(torrent::log_buffer* l) : Window(new Canvas, 0, 0, 0, extent_full, extent_static), m_log(l) { - m_taskUpdate.slot() = std::tr1::bind(&WindowLog::receive_update, this); + m_taskUpdate.slot() = std::bind(&WindowLog::receive_update, this); - unsigned int signal_index = torrent::main_thread()->signal_bitfield()->add_signal(std::tr1::bind(&WindowLog::receive_update, this)); + unsigned int signal_index = torrent::main_thread()->signal_bitfield()->add_signal(std::bind(&WindowLog::receive_update, this)); - m_log->lock_and_set_update_slot(std::tr1::bind(&torrent::thread_base::send_event_signal, torrent::main_thread(), signal_index, false)); + m_log->lock_and_set_update_slot(std::bind(&torrent::thread_base::send_event_signal, torrent::main_thread(), signal_index, false)); } WindowLog::~WindowLog() { diff --git a/src/input/bindings.h b/src/input/bindings.h index c5591b27..30b9e1f6 100644 --- a/src/input/bindings.h +++ b/src/input/bindings.h @@ -38,15 +38,15 @@ #define RTORRENT_INPUT_BINDINGS_H #include -#include +#include lt_tr1_functional #include "display/attributes.h" namespace input { -class Bindings : private std::map > { +class Bindings : private std::map > { public: - typedef std::tr1::function slot_void; + typedef std::function slot_void; typedef std::map base_type; using base_type::iterator; diff --git a/src/input/input_event.h b/src/input/input_event.h index 3e3c9a55..25405bfe 100644 --- a/src/input/input_event.h +++ b/src/input/input_event.h @@ -39,13 +39,13 @@ #include #include -#include +#include lt_tr1_functional namespace input { class InputEvent : public torrent::Event { public: - typedef std::tr1::function slot_int; + typedef std::function slot_int; InputEvent(int fd) { m_fileDesc = fd; } diff --git a/src/input/path_input.h b/src/input/path_input.h index 5134f70f..fe7e1653 100644 --- a/src/input/path_input.h +++ b/src/input/path_input.h @@ -38,7 +38,7 @@ #define RTORRENT_INPUT_PATH_INPUT_H #include -#include +#include lt_tr1_functional #include "utils/directory.h" #include "text_input.h" @@ -50,8 +50,8 @@ public: typedef utils::Directory::iterator directory_itr; typedef std::pair range_type; - typedef std::tr1::function slot_void; - typedef std::tr1::function slot_itr_itr; + typedef std::function slot_void; + typedef std::function slot_itr_itr; typedef std::list signal_void; typedef std::list signal_itr_itr; diff --git a/src/input/text_input.h b/src/input/text_input.h index f51949d3..511aca9b 100644 --- a/src/input/text_input.h +++ b/src/input/text_input.h @@ -46,7 +46,7 @@ namespace input { class TextInput : private std::string { public: typedef std::string Base; - typedef std::tr1::function slot_void; + typedef std::function slot_void; using Base::c_str; using Base::empty; diff --git a/src/main.cc b/src/main.cc index 5e826bb1..8ad7af34 100644 --- a/src/main.cc +++ b/src/main.cc @@ -94,20 +94,20 @@ parse_options(Control* c, int argc, char** argv) { OptionParser optionParser; // Converted. - optionParser.insert_flag('h', std::tr1::bind(&print_help)); - optionParser.insert_flag('n', std::tr1::bind(&do_nothing_str, std::tr1::placeholders::_1)); - optionParser.insert_flag('D', std::tr1::bind(&do_nothing_str, std::tr1::placeholders::_1)); - optionParser.insert_flag('I', std::tr1::bind(&do_nothing_str, std::tr1::placeholders::_1)); - optionParser.insert_flag('K', std::tr1::bind(&do_nothing_str, std::tr1::placeholders::_1)); + optionParser.insert_flag('h', std::bind(&print_help)); + optionParser.insert_flag('n', std::bind(&do_nothing_str, std::placeholders::_1)); + optionParser.insert_flag('D', std::bind(&do_nothing_str, std::placeholders::_1)); + optionParser.insert_flag('I', std::bind(&do_nothing_str, std::placeholders::_1)); + optionParser.insert_flag('K', std::bind(&do_nothing_str, std::placeholders::_1)); - optionParser.insert_option('b', std::tr1::bind(&rpc::call_command_set_string, "network.bind_address.set", std::tr1::placeholders::_1)); - optionParser.insert_option('d', std::tr1::bind(&rpc::call_command_set_string, "directory.default.set", std::tr1::placeholders::_1)); - optionParser.insert_option('i', std::tr1::bind(&rpc::call_command_set_string, "ip", std::tr1::placeholders::_1)); - optionParser.insert_option('p', std::tr1::bind(&rpc::call_command_set_string, "network.port_range.set", std::tr1::placeholders::_1)); - optionParser.insert_option('s', std::tr1::bind(&rpc::call_command_set_string, "session", std::tr1::placeholders::_1)); + optionParser.insert_option('b', std::bind(&rpc::call_command_set_string, "network.bind_address.set", std::placeholders::_1)); + optionParser.insert_option('d', std::bind(&rpc::call_command_set_string, "directory.default.set", std::placeholders::_1)); + optionParser.insert_option('i', std::bind(&rpc::call_command_set_string, "ip", std::placeholders::_1)); + optionParser.insert_option('p', std::bind(&rpc::call_command_set_string, "network.port_range.set", std::placeholders::_1)); + optionParser.insert_option('s', std::bind(&rpc::call_command_set_string, "session", std::placeholders::_1)); - optionParser.insert_option('O', std::tr1::bind(&rpc::parse_command_single_std, std::tr1::placeholders::_1)); - optionParser.insert_option_list('o', std::tr1::bind(&rpc::call_command_set_std_string, std::tr1::placeholders::_1, std::tr1::placeholders::_2)); + optionParser.insert_option('O', std::bind(&rpc::parse_command_single_std, std::placeholders::_1)); + optionParser.insert_option_list('o', std::bind(&rpc::call_command_set_std_string, std::placeholders::_1, std::placeholders::_2)); return optionParser.process(argc, argv); @@ -131,7 +131,7 @@ load_session_torrents(Control* c) { // Replace with session torrent flag. f->set_session(true); - f->slot_finished(std::tr1::bind(&rak::call_delete_func, f)); + f->slot_finished(std::bind(&rak::call_delete_func, f)); f->load(entries.path() + first->d_name); f->commit(); } @@ -145,7 +145,7 @@ load_arg_torrents(Control* c, char** first, char** last) { // Replace with session torrent flag. f->set_start(true); - f->slot_finished(std::tr1::bind(&rak::call_delete_func, f)); + f->slot_finished(std::bind(&rak::call_delete_func, f)); f->load(*first); f->commit(); } @@ -194,12 +194,12 @@ main(int argc, char** argv) { srand48(cachedTime.usec() ^ (getpid() << 16) ^ getppid()); SignalHandler::set_ignore(SIGPIPE); - SignalHandler::set_handler(SIGINT, std::tr1::bind(&Control::receive_normal_shutdown, control)); - SignalHandler::set_handler(SIGTERM, std::tr1::bind(&Control::receive_quick_shutdown, control)); - SignalHandler::set_handler(SIGWINCH, std::tr1::bind(&display::Manager::force_redraw, control->display())); - SignalHandler::set_handler(SIGSEGV, std::tr1::bind(&do_panic, SIGSEGV)); - SignalHandler::set_handler(SIGILL, std::tr1::bind(&do_panic, SIGILL)); - SignalHandler::set_handler(SIGFPE, std::tr1::bind(&do_panic, SIGFPE)); + SignalHandler::set_handler(SIGINT, std::bind(&Control::receive_normal_shutdown, control)); + SignalHandler::set_handler(SIGTERM, std::bind(&Control::receive_quick_shutdown, control)); + SignalHandler::set_handler(SIGWINCH, std::bind(&display::Manager::force_redraw, control->display())); + SignalHandler::set_handler(SIGSEGV, std::bind(&do_panic, SIGSEGV)); + SignalHandler::set_handler(SIGILL, std::bind(&do_panic, SIGILL)); + SignalHandler::set_handler(SIGFPE, std::bind(&do_panic, SIGFPE)); SignalHandler::set_sigaction_handler(SIGBUS, &handle_sigbus); @@ -211,16 +211,16 @@ main(int argc, char** argv) { // threads. Use '--enable-interrupt-socket' when configuring // LibTorrent to enable this workaround. if (torrent::thread_base::should_handle_sigusr1()) - SignalHandler::set_handler(SIGUSR1, std::tr1::bind(&do_nothing)); + SignalHandler::set_handler(SIGUSR1, std::bind(&do_nothing)); torrent::log_add_group_output(torrent::LOG_NOTICE, "important"); torrent::log_add_group_output(torrent::LOG_INFO, "complete"); - torrent::Poll::slot_create_poll() = std::tr1::bind(&core::create_poll); + torrent::Poll::slot_create_poll() = std::bind(&core::create_poll); torrent::initialize(); - torrent::main_thread()->slot_do_work() = tr1::bind(&client_perform); - torrent::main_thread()->slot_next_timeout() = tr1::bind(&client_next_timeout, control); + torrent::main_thread()->slot_do_work() = std::bind(&client_perform); + torrent::main_thread()->slot_next_timeout() = std::bind(&client_next_timeout, control); worker_thread = new ThreadWorker(); worker_thread->init_thread(); diff --git a/src/option_parser.cc b/src/option_parser.cc index 52683675..f07777f2 100644 --- a/src/option_parser.cc +++ b/src/option_parser.cc @@ -60,13 +60,13 @@ OptionParser::insert_option(char c, slot_string s) { void OptionParser::insert_option_list(char c, slot_string_pair s) { - m_container[c].m_slot = std::tr1::bind(&OptionParser::call_option_list, s, std::tr1::placeholders::_1); + m_container[c].m_slot = std::bind(&OptionParser::call_option_list, s, std::placeholders::_1); m_container[c].m_useOption = true; } void OptionParser::insert_int_pair(char c, slot_int_pair s) { - m_container[c].m_slot = std::tr1::bind(&OptionParser::call_int_pair, s, std::tr1::placeholders::_1); + m_container[c].m_slot = std::bind(&OptionParser::call_int_pair, s, std::placeholders::_1); m_container[c].m_useOption = true; } diff --git a/src/option_parser.h b/src/option_parser.h index 23bc0b03..20504a6f 100644 --- a/src/option_parser.h +++ b/src/option_parser.h @@ -39,15 +39,15 @@ #include #include -#include +#include lt_tr1_functional // Throws std::runtime_error upon receiving bad input. class OptionParser { public: - typedef std::tr1::function slot_string; - typedef std::tr1::function slot_string_pair; - typedef std::tr1::function slot_int_pair; + typedef std::function slot_string; + typedef std::function slot_string_pair; + typedef std::function slot_int_pair; void insert_flag(char c, slot_string s); void insert_option(char c, slot_string s); diff --git a/src/rpc/command.h b/src/rpc/command.h index db4b2eaf..dcd71030 100644 --- a/src/rpc/command.h +++ b/src/rpc/command.h @@ -41,14 +41,12 @@ #include #include #include -#include +#include lt_tr1_functional #include #include // Move into config.h or something. -namespace tr1 { using namespace std::tr1; } - namespace core { class Download; } @@ -111,7 +109,7 @@ typedef rt_triple target_type; class command_base; typedef const torrent::Object (*command_base_call_type)(command_base*, target_type, const torrent::Object&); -typedef tr1::function base_function; +typedef std::function base_function; template struct command_base_is_valid {}; template struct command_base_is_type {}; @@ -250,7 +248,7 @@ command_base::_call(command_base* cmd, target_type target, Args args) { } #define COMMAND_BASE_TEMPLATE_TYPE(func_type, func_parm) \ - template ::proper_type> struct func_type { typedef tr1::function type; }; \ + template ::proper_type> struct func_type { typedef std::function type; }; \ \ template <> struct command_base_is_valid::type> { static const int value = 1; }; \ template <> struct command_base_is_valid::type> { static const int value = 1; }; \ diff --git a/src/rpc/command_scheduler.cc b/src/rpc/command_scheduler.cc index 779cc4ac..393de6a1 100644 --- a/src/rpc/command_scheduler.cc +++ b/src/rpc/command_scheduler.cc @@ -71,7 +71,7 @@ CommandScheduler::insert(const std::string& key) { delete *itr; *itr = new CommandSchedulerItem(key); - (*itr)->slot() = std::tr1::bind(&CommandScheduler::call_item, this, *itr); + (*itr)->slot() = std::bind(&CommandScheduler::call_item, this, *itr); return itr; } diff --git a/src/rpc/command_scheduler_item.h b/src/rpc/command_scheduler_item.h index e897d314..dfe2ab7e 100644 --- a/src/rpc/command_scheduler_item.h +++ b/src/rpc/command_scheduler_item.h @@ -39,14 +39,14 @@ #include "globals.h" -#include +#include lt_tr1_functional #include namespace rpc { class CommandSchedulerItem { public: - typedef std::tr1::function slot_void; + typedef std::function slot_void; CommandSchedulerItem(const std::string& key) : m_key(key), m_interval(0) {} ~CommandSchedulerItem(); diff --git a/src/rpc/exec_file.cc b/src/rpc/exec_file.cc index 42fe1061..18991439 100644 --- a/src/rpc/exec_file.cc +++ b/src/rpc/exec_file.cc @@ -50,6 +50,14 @@ namespace rpc { +const unsigned int ExecFile::max_args; +const unsigned int ExecFile::buffer_size; + +const int ExecFile::flag_expand_tilde; +const int ExecFile::flag_throw; +const int ExecFile::flag_capture; +const int ExecFile::flag_background; + // Close m_logFd. int diff --git a/src/rpc/object_storage.cc b/src/rpc/object_storage.cc index 1da057a3..9f9ce952 100644 --- a/src/rpc/object_storage.cc +++ b/src/rpc/object_storage.cc @@ -44,6 +44,23 @@ namespace rpc { +const unsigned int object_storage::flag_generic_type; +const unsigned int object_storage::flag_bool_type; +const unsigned int object_storage::flag_value_type; +const unsigned int object_storage::flag_string_type; +const unsigned int object_storage::flag_list_type; +const unsigned int object_storage::flag_function_type; +const unsigned int object_storage::flag_multi_type; + +const unsigned int object_storage::mask_type; + +const unsigned int object_storage::flag_constant; +const unsigned int object_storage::flag_static; +const unsigned int object_storage::flag_private; +const unsigned int object_storage::flag_rlookup; + +const size_t object_storage::key_size; + object_storage::local_iterator object_storage::find_local(const torrent::raw_string& key) { std::size_t n = hash_fixed_key_type::hash(key.data(), key.size()) % bucket_count(); @@ -245,7 +262,7 @@ object_storage::rlookup_list(const std::string& cmd_key) { if (r_itr != m_rlookup.end()) std::transform(r_itr->second.begin(), r_itr->second.end(), std::back_inserter(result), - std::tr1::bind(&key_type::c_str, std::tr1::bind(rak::mem_ptr(&value_type::first), std::tr1::placeholders::_1))); + std::bind(&key_type::c_str, std::bind(rak::mem_ptr(&value_type::first), std::placeholders::_1))); return result; } diff --git a/src/rpc/object_storage.h b/src/rpc/object_storage.h index 39bf0dbf..f72bdbb5 100644 --- a/src/rpc/object_storage.h +++ b/src/rpc/object_storage.h @@ -42,7 +42,7 @@ #define RTORRENT_RPC_OBJECT_STORAGE_H #include -#include +#include lt_tr1_unordered_map #include #include "rak/unordered_vector.h" @@ -56,7 +56,7 @@ struct object_storage_node { char flags; }; -typedef std::tr1::unordered_map, object_storage_node, hash_fixed_key_type> object_storage_base_type; +typedef std::unordered_map, object_storage_node, hash_fixed_key_type> object_storage_base_type; class object_storage : private object_storage_base_type { public: diff --git a/src/rpc/xmlrpc.h b/src/rpc/xmlrpc.h index 34422014..72baaef7 100644 --- a/src/rpc/xmlrpc.h +++ b/src/rpc/xmlrpc.h @@ -37,7 +37,7 @@ #ifndef RTORRENT_RPC_XMLRPC_H #define RTORRENT_RPC_XMLRPC_H -#include +#include lt_tr1_functional #include namespace core { @@ -54,11 +54,11 @@ namespace rpc { class XmlRpc { public: - typedef std::tr1::function slot_download; - typedef std::tr1::function slot_file; - typedef std::tr1::function slot_tracker; - typedef std::tr1::function slot_peer; - typedef std::tr1::function slot_write; + typedef std::function slot_download; + typedef std::function slot_file; + typedef std::function slot_tracker; + typedef std::function slot_peer; + typedef std::function slot_write; static const int dialect_generic = 0; static const int dialect_i8 = 1; diff --git a/src/signal_handler.cc b/src/signal_handler.cc index 6e5de504..61128331 100644 --- a/src/signal_handler.cc +++ b/src/signal_handler.cc @@ -38,6 +38,8 @@ #include #include +#include + #include "rak/error_number.h" #include "signal_handler.h" diff --git a/src/signal_handler.h b/src/signal_handler.h index f34c2810..36079595 100644 --- a/src/signal_handler.h +++ b/src/signal_handler.h @@ -38,11 +38,11 @@ #define RTORRENT_SIGNAL_HANDLER_H #include -#include +#include lt_tr1_functional class SignalHandler { public: - typedef std::tr1::function slot_void; + typedef std::function slot_void; // typedef void (*handler_slot)(int, siginfo_t *info, ucontext_t *uap); typedef void (*handler_slot)(int, siginfo_t*, void*); diff --git a/src/thread_base.cc b/src/thread_base.cc index a61a1201..081791d4 100644 --- a/src/thread_base.cc +++ b/src/thread_base.cc @@ -109,7 +109,7 @@ public: void throw_shutdown_exception() { throw torrent::shutdown_exception(); } ThreadBase::ThreadBase() { - m_taskShutdown.slot() = std::tr1::bind(&throw_shutdown_exception); + m_taskShutdown.slot() = std::bind(&throw_shutdown_exception); m_threadQueue = new thread_queue_hack; } diff --git a/src/ui/download.cc b/src/ui/download.cc index c6ce5c5c..5f5d2102 100644 --- a/src/ui/download.cc +++ b/src/ui/download.cc @@ -84,13 +84,13 @@ Download::Download(core::Download* d) : m_uiArray[DISPLAY_CHUNKS_SEEN] = new ElementChunksSeen(d); m_uiArray[DISPLAY_TRANSFER_LIST] = new ElementTransferList(d); - m_uiArray[DISPLAY_MENU]->slot_exit(std::tr1::bind(&slot_type::operator(), &m_slot_exit)); - m_uiArray[DISPLAY_PEER_LIST]->slot_exit(std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_PEER_LIST)); - m_uiArray[DISPLAY_INFO]->slot_exit(std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_INFO)); - m_uiArray[DISPLAY_FILE_LIST]->slot_exit(std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_FILE_LIST)); - m_uiArray[DISPLAY_TRACKER_LIST]->slot_exit(std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_TRACKER_LIST)); - m_uiArray[DISPLAY_CHUNKS_SEEN]->slot_exit(std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_CHUNKS_SEEN)); - m_uiArray[DISPLAY_TRANSFER_LIST]->slot_exit(std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_TRANSFER_LIST)); + m_uiArray[DISPLAY_MENU]->slot_exit(std::bind(&slot_type::operator(), &m_slot_exit)); + m_uiArray[DISPLAY_PEER_LIST]->slot_exit(std::bind(&Download::activate_display_menu, this, DISPLAY_PEER_LIST)); + m_uiArray[DISPLAY_INFO]->slot_exit(std::bind(&Download::activate_display_menu, this, DISPLAY_INFO)); + m_uiArray[DISPLAY_FILE_LIST]->slot_exit(std::bind(&Download::activate_display_menu, this, DISPLAY_FILE_LIST)); + m_uiArray[DISPLAY_TRACKER_LIST]->slot_exit(std::bind(&Download::activate_display_menu, this, DISPLAY_TRACKER_LIST)); + m_uiArray[DISPLAY_CHUNKS_SEEN]->slot_exit(std::bind(&Download::activate_display_menu, this, DISPLAY_CHUNKS_SEEN)); + m_uiArray[DISPLAY_TRANSFER_LIST]->slot_exit(std::bind(&Download::activate_display_menu, this, DISPLAY_TRANSFER_LIST)); bind_keys(); } @@ -109,30 +109,30 @@ Download::create_menu() { ElementMenu* element = new ElementMenu; element->push_back("Peer list", - std::tr1::bind(&Download::activate_display_focus, this, DISPLAY_PEER_LIST), - std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_PEER_LIST)); + std::bind(&Download::activate_display_focus, this, DISPLAY_PEER_LIST), + std::bind(&Download::activate_display_menu, this, DISPLAY_PEER_LIST)); element->push_back("Info", - std::tr1::bind(&Download::activate_display_focus, this, DISPLAY_INFO), - std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_INFO)); + std::bind(&Download::activate_display_focus, this, DISPLAY_INFO), + std::bind(&Download::activate_display_menu, this, DISPLAY_INFO)); element->push_back("File list", - std::tr1::bind(&Download::activate_display_focus, this, DISPLAY_FILE_LIST), - std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_FILE_LIST)); + std::bind(&Download::activate_display_focus, this, DISPLAY_FILE_LIST), + std::bind(&Download::activate_display_menu, this, DISPLAY_FILE_LIST)); element->push_back("Tracker list", - std::tr1::bind(&Download::activate_display_focus, this, DISPLAY_TRACKER_LIST), - std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_TRACKER_LIST)); + std::bind(&Download::activate_display_focus, this, DISPLAY_TRACKER_LIST), + std::bind(&Download::activate_display_menu, this, DISPLAY_TRACKER_LIST)); element->push_back("Chunks seen", - std::tr1::bind(&Download::activate_display_focus, this, DISPLAY_CHUNKS_SEEN), - std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_CHUNKS_SEEN)); + std::bind(&Download::activate_display_focus, this, DISPLAY_CHUNKS_SEEN), + std::bind(&Download::activate_display_menu, this, DISPLAY_CHUNKS_SEEN)); element->push_back("Transfer list", - std::tr1::bind(&Download::activate_display_focus, this, DISPLAY_TRANSFER_LIST), - std::tr1::bind(&Download::activate_display_menu, this, DISPLAY_TRANSFER_LIST)); + std::bind(&Download::activate_display_focus, this, DISPLAY_TRANSFER_LIST), + std::bind(&Download::activate_display_menu, this, DISPLAY_TRANSFER_LIST)); element->set_entry(0, false); - m_bindings['p'] = std::tr1::bind(&ElementMenu::set_entry_trigger, element, 0); - m_bindings['o'] = std::tr1::bind(&ElementMenu::set_entry_trigger, element, 1); - m_bindings['i'] = std::tr1::bind(&ElementMenu::set_entry_trigger, element, 2); - m_bindings['u'] = std::tr1::bind(&ElementMenu::set_entry_trigger, element, 3); + m_bindings['p'] = std::bind(&ElementMenu::set_entry_trigger, element, 0); + m_bindings['o'] = std::bind(&ElementMenu::set_entry_trigger, element, 1); + m_bindings['i'] = std::bind(&ElementMenu::set_entry_trigger, element, 2); + m_bindings['u'] = std::bind(&ElementMenu::set_entry_trigger, element, 3); return element; } @@ -375,40 +375,40 @@ Download::adjust_up_throttle(int throttle) { void Download::bind_keys() { - m_bindings['1'] = std::tr1::bind(&Download::receive_min_uploads, this, -1); - m_bindings['2'] = std::tr1::bind(&Download::receive_min_uploads, this, 1); - m_bindings['3'] = std::tr1::bind(&Download::receive_max_uploads, this, -1); - m_bindings['4'] = std::tr1::bind(&Download::receive_max_uploads, this, 1); - m_bindings['!'] = std::tr1::bind(&Download::receive_min_downloads, this, -1); - m_bindings['@'] = std::tr1::bind(&Download::receive_min_downloads, this, 1); - m_bindings['#'] = std::tr1::bind(&Download::receive_max_downloads, this, -1); - m_bindings['$'] = std::tr1::bind(&Download::receive_max_downloads, this, 1); - m_bindings['5'] = std::tr1::bind(&Download::receive_min_peers, this, -5); - m_bindings['6'] = std::tr1::bind(&Download::receive_min_peers, this, 5); - m_bindings['7'] = std::tr1::bind(&Download::receive_max_peers, this, -5); - m_bindings['8'] = std::tr1::bind(&Download::receive_max_peers, this, 5); - m_bindings['+'] = std::tr1::bind(&Download::receive_next_priority, this); - m_bindings['-'] = std::tr1::bind(&Download::receive_prev_priority, this); + m_bindings['1'] = std::bind(&Download::receive_min_uploads, this, -1); + m_bindings['2'] = std::bind(&Download::receive_min_uploads, this, 1); + m_bindings['3'] = std::bind(&Download::receive_max_uploads, this, -1); + m_bindings['4'] = std::bind(&Download::receive_max_uploads, this, 1); + m_bindings['!'] = std::bind(&Download::receive_min_downloads, this, -1); + m_bindings['@'] = std::bind(&Download::receive_min_downloads, this, 1); + m_bindings['#'] = std::bind(&Download::receive_max_downloads, this, -1); + m_bindings['$'] = std::bind(&Download::receive_max_downloads, this, 1); + m_bindings['5'] = std::bind(&Download::receive_min_peers, this, -5); + m_bindings['6'] = std::bind(&Download::receive_min_peers, this, 5); + m_bindings['7'] = std::bind(&Download::receive_max_peers, this, -5); + m_bindings['8'] = std::bind(&Download::receive_max_peers, this, 5); + m_bindings['+'] = std::bind(&Download::receive_next_priority, this); + m_bindings['-'] = std::bind(&Download::receive_prev_priority, this); - m_bindings['t'] = std::tr1::bind(&torrent::Download::manual_request, m_download->download(), false); - m_bindings['T'] = std::tr1::bind(&torrent::Download::manual_request, m_download->download(), true); + m_bindings['t'] = std::bind(&torrent::Download::manual_request, m_download->download(), false); + m_bindings['T'] = std::bind(&torrent::Download::manual_request, m_download->download(), true); const char* keys = control->ui()->get_throttle_keys(); - m_bindings[keys[ 0]] = std::tr1::bind(&Download::adjust_up_throttle, this, 1); - m_bindings[keys[ 1]] = std::tr1::bind(&Download::adjust_up_throttle, this, -1); - m_bindings[keys[ 2]] = std::tr1::bind(&Download::adjust_down_throttle, this, 1); - m_bindings[keys[ 3]] = std::tr1::bind(&Download::adjust_down_throttle, this, -1); + m_bindings[keys[ 0]] = std::bind(&Download::adjust_up_throttle, this, 1); + m_bindings[keys[ 1]] = std::bind(&Download::adjust_up_throttle, this, -1); + m_bindings[keys[ 2]] = std::bind(&Download::adjust_down_throttle, this, 1); + m_bindings[keys[ 3]] = std::bind(&Download::adjust_down_throttle, this, -1); - m_bindings[keys[ 4]] = std::tr1::bind(&Download::adjust_up_throttle, this, 5); - m_bindings[keys[ 5]] = std::tr1::bind(&Download::adjust_up_throttle, this, -5); - m_bindings[keys[ 6]] = std::tr1::bind(&Download::adjust_down_throttle, this, 5); - m_bindings[keys[ 7]] = std::tr1::bind(&Download::adjust_down_throttle, this, -5); + m_bindings[keys[ 4]] = std::bind(&Download::adjust_up_throttle, this, 5); + m_bindings[keys[ 5]] = std::bind(&Download::adjust_up_throttle, this, -5); + m_bindings[keys[ 6]] = std::bind(&Download::adjust_down_throttle, this, 5); + m_bindings[keys[ 7]] = std::bind(&Download::adjust_down_throttle, this, -5); - m_bindings[keys[ 8]] = std::tr1::bind(&Download::adjust_up_throttle, this, 50); - m_bindings[keys[ 9]] = std::tr1::bind(&Download::adjust_up_throttle, this, -50); - m_bindings[keys[10]] = std::tr1::bind(&Download::adjust_down_throttle, this, 50); - m_bindings[keys[11]] = std::tr1::bind(&Download::adjust_down_throttle, this, -50); + m_bindings[keys[ 8]] = std::bind(&Download::adjust_up_throttle, this, 50); + m_bindings[keys[ 9]] = std::bind(&Download::adjust_up_throttle, this, -50); + m_bindings[keys[10]] = std::bind(&Download::adjust_down_throttle, this, 50); + m_bindings[keys[11]] = std::bind(&Download::adjust_down_throttle, this, -50); } } diff --git a/src/ui/download_list.cc b/src/ui/download_list.cc index e3abc9ac..7a070f62 100644 --- a/src/ui/download_list.cc +++ b/src/ui/download_list.cc @@ -191,7 +191,7 @@ DownloadList::activate_display(Display displayType) { Download* download = new Download(*current_view()->focus()); download->activate(m_frame); - download->slot_exit(std::tr1::bind(&DownloadList::activate_display, this, DISPLAY_DOWNLOAD_LIST)); + download->slot_exit(std::bind(&DownloadList::activate_display, this, DISPLAY_DOWNLOAD_LIST)); m_uiArray[DISPLAY_DOWNLOAD] = download; break; @@ -268,18 +268,18 @@ DownloadList::receive_view_input(Input type) { ElementStringList* esl = dynamic_cast(m_uiArray[DISPLAY_STRING_LIST]); - input->signal_show_next().push_back(std::tr1::bind(&DownloadList::activate_display, this, DISPLAY_STRING_LIST)); - input->signal_show_next().push_back(std::tr1::bind(&ElementStringList::next_screen, esl)); + input->signal_show_next().push_back(std::bind(&DownloadList::activate_display, this, DISPLAY_STRING_LIST)); + input->signal_show_next().push_back(std::bind(&ElementStringList::next_screen, esl)); - input->signal_show_range().push_back(std::tr1::bind(&DownloadList::activate_display, this, DISPLAY_STRING_LIST)); - input->signal_show_range().push_back(std::tr1::bind(&ElementStringList::set_range_dirent, + input->signal_show_range().push_back(std::bind(&DownloadList::activate_display, this, DISPLAY_STRING_LIST)); + input->signal_show_range().push_back(std::bind(&ElementStringList::set_range_dirent, esl, - std::tr1::placeholders::_1, - std::tr1::placeholders::_2)); + std::placeholders::_1, + std::placeholders::_2)); - input->bindings()['\n'] = std::tr1::bind(&DownloadList::receive_exit_input, this, type); - input->bindings()[KEY_ENTER] = std::tr1::bind(&DownloadList::receive_exit_input, this, type); - input->bindings()['\x07'] = std::tr1::bind(&DownloadList::receive_exit_input, this, INPUT_NONE); + input->bindings()['\n'] = std::bind(&DownloadList::receive_exit_input, this, type); + input->bindings()[KEY_ENTER] = std::bind(&DownloadList::receive_exit_input, this, type); + input->bindings()['\x07'] = std::bind(&DownloadList::receive_exit_input, this, INPUT_NONE); control->ui()->enable_input(title, input); } @@ -340,20 +340,20 @@ DownloadList::receive_exit_input(Input type) { void DownloadList::setup_keys() { - m_bindings['\x7f'] = std::tr1::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_DEFAULT); - m_bindings[KEY_BACKSPACE] = std::tr1::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_DEFAULT); - m_bindings['\n'] = std::tr1::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_MODIFIED); - m_bindings[KEY_ENTER] = std::tr1::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_MODIFIED); - m_bindings['\x0F'] = std::tr1::bind(&DownloadList::receive_view_input, this, INPUT_CHANGE_DIRECTORY); - m_bindings['X' - '@'] = std::tr1::bind(&DownloadList::receive_view_input, this, INPUT_COMMAND); + m_bindings['\x7f'] = std::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_DEFAULT); + m_bindings[KEY_BACKSPACE] = std::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_DEFAULT); + m_bindings['\n'] = std::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_MODIFIED); + m_bindings[KEY_ENTER] = std::bind(&DownloadList::receive_view_input, this, INPUT_LOAD_MODIFIED); + m_bindings['\x0F'] = std::bind(&DownloadList::receive_view_input, this, INPUT_CHANGE_DIRECTORY); + m_bindings['X' - '@'] = std::bind(&DownloadList::receive_view_input, this, INPUT_COMMAND); m_uiArray[DISPLAY_LOG]->bindings()[KEY_LEFT] = m_uiArray[DISPLAY_LOG]->bindings()['B' - '@'] = - m_uiArray[DISPLAY_LOG]->bindings()[' '] = std::tr1::bind(&DownloadList::activate_display, this, DISPLAY_DOWNLOAD_LIST); + m_uiArray[DISPLAY_LOG]->bindings()[' '] = std::bind(&DownloadList::activate_display, this, DISPLAY_DOWNLOAD_LIST); m_uiArray[DISPLAY_DOWNLOAD_LIST]->bindings()[KEY_RIGHT] = - m_uiArray[DISPLAY_DOWNLOAD_LIST]->bindings()['F' - '@'] = std::tr1::bind(&DownloadList::activate_display, this, DISPLAY_DOWNLOAD); - m_uiArray[DISPLAY_DOWNLOAD_LIST]->bindings()['l'] = std::tr1::bind(&DownloadList::activate_display, this, DISPLAY_LOG); + m_uiArray[DISPLAY_DOWNLOAD_LIST]->bindings()['F' - '@'] = std::bind(&DownloadList::activate_display, this, DISPLAY_DOWNLOAD); + m_uiArray[DISPLAY_DOWNLOAD_LIST]->bindings()['l'] = std::bind(&DownloadList::activate_display, this, DISPLAY_LOG); } } diff --git a/src/ui/download_list.h b/src/ui/download_list.h index 3712e36d..72ab5ae5 100644 --- a/src/ui/download_list.h +++ b/src/ui/download_list.h @@ -71,7 +71,7 @@ public: typedef display::WindowLog WLog; typedef display::WindowLogComplete WLogComplete; - typedef std::tr1::function slot_string; + typedef std::function slot_string; typedef enum { DISPLAY_DOWNLOAD, diff --git a/src/ui/element_base.h b/src/ui/element_base.h index 9290d64d..27ce98c3 100644 --- a/src/ui/element_base.h +++ b/src/ui/element_base.h @@ -48,7 +48,7 @@ namespace ui { class ElementBase { public: - typedef std::tr1::function slot_type; + typedef std::function slot_type; ElementBase() : m_frame(NULL), m_focus(false) {} virtual ~ElementBase() {} diff --git a/src/ui/element_chunks_seen.cc b/src/ui/element_chunks_seen.cc index 71b58603..687250eb 100644 --- a/src/ui/element_chunks_seen.cc +++ b/src/ui/element_chunks_seen.cc @@ -52,12 +52,12 @@ ElementChunksSeen::ElementChunksSeen(core::Download* d) : m_window(NULL), m_focus(0) { - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); - m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::tr1::bind(&ElementChunksSeen::receive_next, this); - m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::tr1::bind(&ElementChunksSeen::receive_prev, this); - m_bindings[KEY_NPAGE] = std::tr1::bind(&ElementChunksSeen::receive_pagenext, this); - m_bindings[KEY_PPAGE] = std::tr1::bind(&ElementChunksSeen::receive_pageprev, this); + m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::bind(&ElementChunksSeen::receive_next, this); + m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::bind(&ElementChunksSeen::receive_prev, this); + m_bindings[KEY_NPAGE] = std::bind(&ElementChunksSeen::receive_pagenext, this); + m_bindings[KEY_PPAGE] = std::bind(&ElementChunksSeen::receive_pageprev, this); } void diff --git a/src/ui/element_download_list.cc b/src/ui/element_download_list.cc index 7d6aff0d..bc40e7e2 100644 --- a/src/ui/element_download_list.cc +++ b/src/ui/element_download_list.cc @@ -63,42 +63,42 @@ ElementDownloadList::ElementDownloadList() : if (m_view == NULL) throw torrent::internal_error("View \"main\" must be present to initialize the main display."); - m_bindings['\x13'] = std::tr1::bind(&ElementDownloadList::receive_command, this, "d.start="); - m_bindings['\x04'] = std::tr1::bind(&ElementDownloadList::receive_command, this, "branch=d.state=,d.stop=,d.erase="); - m_bindings['\x0B'] = std::tr1::bind(&ElementDownloadList::receive_command, this, "d.ignore_commands.set=1; d.stop=; d.close="); - m_bindings['\x12'] = std::tr1::bind(&ElementDownloadList::receive_command, this, "d.complete.set=0; d.check_hash="); - m_bindings['\x05'] = std::tr1::bind(&ElementDownloadList::receive_command, this, + m_bindings['\x13'] = std::bind(&ElementDownloadList::receive_command, this, "d.start="); + m_bindings['\x04'] = std::bind(&ElementDownloadList::receive_command, this, "branch=d.state=,d.stop=,d.erase="); + m_bindings['\x0B'] = std::bind(&ElementDownloadList::receive_command, this, "d.ignore_commands.set=1; d.stop=; d.close="); + m_bindings['\x12'] = std::bind(&ElementDownloadList::receive_command, this, "d.complete.set=0; d.check_hash="); + m_bindings['\x05'] = std::bind(&ElementDownloadList::receive_command, this, "f.multicall=,f.set_create_queued=0,f.set_resize_queued=0; print=\"Queued create/resize of files in torrent.\""); - m_bindings['+'] = std::tr1::bind(&ElementDownloadList::receive_next_priority, this); - m_bindings['-'] = std::tr1::bind(&ElementDownloadList::receive_prev_priority, this); - m_bindings['T'-'@']= std::tr1::bind(&ElementDownloadList::receive_cycle_throttle, this); - m_bindings['I'] = std::tr1::bind(&ElementDownloadList::receive_command, this, + m_bindings['+'] = std::bind(&ElementDownloadList::receive_next_priority, this); + m_bindings['-'] = std::bind(&ElementDownloadList::receive_prev_priority, this); + m_bindings['T'-'@']= std::bind(&ElementDownloadList::receive_cycle_throttle, this); + m_bindings['I'] = std::bind(&ElementDownloadList::receive_command, this, "branch=d.ignore_commands=," "{d.ignore_commands.set=0, print=\"Torrent set to heed commands.\"}," "{d.ignore_commands.set=1, print=\"Torrent set to ignore commands.\"}"); - m_bindings['B'-'@']= std::tr1::bind(&ElementDownloadList::receive_command, this, + m_bindings['B'-'@']= std::bind(&ElementDownloadList::receive_command, this, "branch=d.is_active=," "{print=\"Cannot enable initial seeding on an active download.\"}," "{d.connection_seed.set=initial_seed, print=\"Enabled initial seeding for the selected download.\"}"); - m_bindings['U'] = std::tr1::bind(&ElementDownloadList::receive_command, this, + m_bindings['U'] = std::bind(&ElementDownloadList::receive_command, this, "d.delete_tied=; print=\"Cleared tied to file association for the selected download.\""); // These should also be commands. - m_bindings['1'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "main"); - m_bindings['2'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "name"); - m_bindings['3'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "started"); - m_bindings['4'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "stopped"); - m_bindings['5'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "complete"); - m_bindings['6'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "incomplete"); - m_bindings['7'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "hashing"); - m_bindings['8'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "seeding"); - m_bindings['9'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "leeching"); - m_bindings['0'] = std::tr1::bind(&ElementDownloadList::receive_change_view, this, "active"); + m_bindings['1'] = std::bind(&ElementDownloadList::receive_change_view, this, "main"); + m_bindings['2'] = std::bind(&ElementDownloadList::receive_change_view, this, "name"); + m_bindings['3'] = std::bind(&ElementDownloadList::receive_change_view, this, "started"); + m_bindings['4'] = std::bind(&ElementDownloadList::receive_change_view, this, "stopped"); + m_bindings['5'] = std::bind(&ElementDownloadList::receive_change_view, this, "complete"); + m_bindings['6'] = std::bind(&ElementDownloadList::receive_change_view, this, "incomplete"); + m_bindings['7'] = std::bind(&ElementDownloadList::receive_change_view, this, "hashing"); + m_bindings['8'] = std::bind(&ElementDownloadList::receive_change_view, this, "seeding"); + m_bindings['9'] = std::bind(&ElementDownloadList::receive_change_view, this, "leeching"); + m_bindings['0'] = std::bind(&ElementDownloadList::receive_change_view, this, "active"); - m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::tr1::bind(&ElementDownloadList::receive_prev, this); - m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::tr1::bind(&ElementDownloadList::receive_next, this); + m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::bind(&ElementDownloadList::receive_prev, this); + m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::bind(&ElementDownloadList::receive_next, this); } void diff --git a/src/ui/element_file_list.cc b/src/ui/element_file_list.cc index 4653f80c..270c215e 100644 --- a/src/ui/element_file_list.cc +++ b/src/ui/element_file_list.cc @@ -63,17 +63,17 @@ ElementFileList::ElementFileList(core::Download* d) : m_selected(iterator(d->download()->file_list()->begin())), m_collapsed(false) { - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); - m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::tr1::bind(&ElementFileList::receive_select, this); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::bind(&ElementFileList::receive_select, this); - m_bindings[' '] = std::tr1::bind(&ElementFileList::receive_priority, this); - m_bindings['*'] = std::tr1::bind(&ElementFileList::receive_change_all, this); - m_bindings['/'] = std::tr1::bind(&ElementFileList::receive_collapse, this); - m_bindings[KEY_NPAGE] = std::tr1::bind(&ElementFileList::receive_pagenext, this); - m_bindings[KEY_PPAGE] = std::tr1::bind(&ElementFileList::receive_pageprev, this); + m_bindings[' '] = std::bind(&ElementFileList::receive_priority, this); + m_bindings['*'] = std::bind(&ElementFileList::receive_change_all, this); + m_bindings['/'] = std::bind(&ElementFileList::receive_collapse, this); + m_bindings[KEY_NPAGE] = std::bind(&ElementFileList::receive_pagenext, this); + m_bindings[KEY_PPAGE] = std::bind(&ElementFileList::receive_pageprev, this); - m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::tr1::bind(&ElementFileList::receive_next, this); - m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::tr1::bind(&ElementFileList::receive_prev, this); + m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::bind(&ElementFileList::receive_next, this); + m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::bind(&ElementFileList::receive_prev, this); } inline ElementText* @@ -117,7 +117,7 @@ ElementFileList::activate(display::Frame* frame, bool focus) { m_window->set_focused(focus); m_elementInfo = element_file_list_create_info(); - m_elementInfo->slot_exit(std::tr1::bind(&ElementFileList::activate_display, this, DISPLAY_LIST)); + m_elementInfo->slot_exit(std::bind(&ElementFileList::activate_display, this, DISPLAY_LIST)); m_elementInfo->set_target(rpc::make_target(&m_selected)); m_frame = frame; diff --git a/src/ui/element_log_complete.cc b/src/ui/element_log_complete.cc index 45602a5c..d2697824 100644 --- a/src/ui/element_log_complete.cc +++ b/src/ui/element_log_complete.cc @@ -54,9 +54,9 @@ ElementLogComplete::ElementLogComplete(torrent::log_buffer* l) : m_window(NULL), m_log(l) { - unsigned int signal_index = torrent::main_thread()->signal_bitfield()->add_signal(std::tr1::bind(&ElementLogComplete::received_update, this)); + unsigned int signal_index = torrent::main_thread()->signal_bitfield()->add_signal(std::bind(&ElementLogComplete::received_update, this)); - m_log->lock_and_set_update_slot(std::tr1::bind(&torrent::thread_base::send_event_signal, torrent::main_thread(), signal_index, false)); + m_log->lock_and_set_update_slot(std::bind(&torrent::thread_base::send_event_signal, torrent::main_thread(), signal_index, false)); } void diff --git a/src/ui/element_menu.cc b/src/ui/element_menu.cc index 21caf7fc..079f469e 100644 --- a/src/ui/element_menu.cc +++ b/src/ui/element_menu.cc @@ -72,11 +72,11 @@ ElementMenu::ElementMenu() : m_entry(entry_invalid) { // Move bindings into a function that defines default bindings. - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); - m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::tr1::bind(&ElementMenu::entry_select, this); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::bind(&ElementMenu::entry_select, this); - m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::tr1::bind(&ElementMenu::entry_prev, this); - m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::tr1::bind(&ElementMenu::entry_next, this); + m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::bind(&ElementMenu::entry_prev, this); + m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::bind(&ElementMenu::entry_next, this); } ElementMenu::~ElementMenu() { diff --git a/src/ui/element_menu.h b/src/ui/element_menu.h index 88ef4e97..73b57a5a 100644 --- a/src/ui/element_menu.h +++ b/src/ui/element_menu.h @@ -51,8 +51,8 @@ namespace ui { struct ElementMenuEntry { display::TextElementStringBase* m_element; - std::tr1::function m_slotFocus; - std::tr1::function m_slotSelect; + std::function m_slotFocus; + std::function m_slotSelect; }; class ElementMenu : public ElementBase, public std::vector { diff --git a/src/ui/element_peer_list.cc b/src/ui/element_peer_list.cc index dc80e5b3..a8c2fc8d 100644 --- a/src/ui/element_peer_list.cc +++ b/src/ui/element_peer_list.cc @@ -67,23 +67,23 @@ ElementPeerList::ElementPeerList(core::Download* d) : torrent::ConnectionList* connection_list = m_download->download()->connection_list(); m_peer_connected = connection_list->signal_connected().insert(connection_list->signal_connected().end(), - tr1::bind(&ElementPeerList::receive_peer_connected, this, tr1::placeholders::_1)); + std::bind(&ElementPeerList::receive_peer_connected, this, std::placeholders::_1)); m_peer_disconnected = connection_list->signal_disconnected().insert(connection_list->signal_disconnected().end(), - tr1::bind(&ElementPeerList::receive_peer_disconnected, this, tr1::placeholders::_1)); + std::bind(&ElementPeerList::receive_peer_disconnected, this, std::placeholders::_1)); m_windowList = new display::WindowPeerList(m_download, &m_list, &m_listItr); m_elementInfo = create_info(); - m_elementInfo->slot_exit(std::tr1::bind(&ElementPeerList::activate_display, this, DISPLAY_LIST)); + m_elementInfo->slot_exit(std::bind(&ElementPeerList::activate_display, this, DISPLAY_LIST)); - m_bindings['k'] = std::tr1::bind(&ElementPeerList::receive_disconnect_peer, this); - m_bindings['*'] = std::tr1::bind(&ElementPeerList::receive_snub_peer, this); - m_bindings['B'] = std::tr1::bind(&ElementPeerList::receive_ban_peer, this); - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); - m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::tr1::bind(&ElementPeerList::activate_display, this, DISPLAY_INFO); + m_bindings['k'] = std::bind(&ElementPeerList::receive_disconnect_peer, this); + m_bindings['*'] = std::bind(&ElementPeerList::receive_snub_peer, this); + m_bindings['B'] = std::bind(&ElementPeerList::receive_ban_peer, this); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::bind(&ElementPeerList::activate_display, this, DISPLAY_INFO); - m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::tr1::bind(&ElementPeerList::receive_prev, this); - m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::tr1::bind(&ElementPeerList::receive_next, this); + m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::bind(&ElementPeerList::receive_prev, this); + m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::bind(&ElementPeerList::receive_next, this); } ElementPeerList::~ElementPeerList() { diff --git a/src/ui/element_text.cc b/src/ui/element_text.cc index c24ac3a9..f1f3dea6 100644 --- a/src/ui/element_text.cc +++ b/src/ui/element_text.cc @@ -54,11 +54,11 @@ ElementText::ElementText(rpc::target_type target) : m_columnWidth(0) { // Move bindings into a function that defines default bindings. - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); -// m_bindings[KEY_UP] = std::tr1::bind(this, &ElementText::entry_prev); -// m_bindings[KEY_DOWN] = std::tr1::bind(this, &ElementText::entry_next); -// m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::tr1::bind(this, &ElementText::entry_select); +// m_bindings[KEY_UP] = std::bind(this, &ElementText::entry_prev); +// m_bindings[KEY_DOWN] = std::bind(this, &ElementText::entry_next); +// m_bindings[KEY_RIGHT] = m_bindings['F' - '@'] = std::bind(this, &ElementText::entry_select); } ElementText::~ElementText() { diff --git a/src/ui/element_tracker_list.cc b/src/ui/element_tracker_list.cc index 0cbf9ba4..c048165a 100644 --- a/src/ui/element_tracker_list.cc +++ b/src/ui/element_tracker_list.cc @@ -54,13 +54,13 @@ ElementTrackerList::ElementTrackerList(core::Download* d) : m_window(NULL), m_focus(0) { - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); - m_bindings[' '] = std::tr1::bind(&ElementTrackerList::receive_cycle_group, this); - m_bindings['*'] = std::tr1::bind(&ElementTrackerList::receive_disable, this); + m_bindings[' '] = std::bind(&ElementTrackerList::receive_cycle_group, this); + m_bindings['*'] = std::bind(&ElementTrackerList::receive_disable, this); - m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::tr1::bind(&ElementTrackerList::receive_next, this); - m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::tr1::bind(&ElementTrackerList::receive_prev, this); + m_bindings[KEY_DOWN] = m_bindings['N' - '@'] = std::bind(&ElementTrackerList::receive_next, this); + m_bindings[KEY_UP] = m_bindings['P' - '@'] = std::bind(&ElementTrackerList::receive_prev, this); } void diff --git a/src/ui/element_transfer_list.cc b/src/ui/element_transfer_list.cc index 28929668..cd0ae55b 100644 --- a/src/ui/element_transfer_list.cc +++ b/src/ui/element_transfer_list.cc @@ -52,12 +52,12 @@ ElementTransferList::ElementTransferList(core::Download* d) : m_window(NULL), m_focus(0) { - m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::tr1::bind(&slot_type::operator(), &m_slot_exit); + m_bindings[KEY_LEFT] = m_bindings['B' - '@'] = std::bind(&slot_type::operator(), &m_slot_exit); - m_bindings[KEY_DOWN] = std::tr1::bind(&ElementTransferList::receive_next, this); - m_bindings[KEY_UP] = std::tr1::bind(&ElementTransferList::receive_prev, this); - m_bindings[KEY_NPAGE] = std::tr1::bind(&ElementTransferList::receive_pagenext, this); - m_bindings[KEY_PPAGE] = std::tr1::bind(&ElementTransferList::receive_pageprev, this); + m_bindings[KEY_DOWN] = std::bind(&ElementTransferList::receive_next, this); + m_bindings[KEY_UP] = std::bind(&ElementTransferList::receive_prev, this); + m_bindings[KEY_NPAGE] = std::bind(&ElementTransferList::receive_pagenext, this); + m_bindings[KEY_PPAGE] = std::bind(&ElementTransferList::receive_pageprev, this); } void diff --git a/src/ui/root.cc b/src/ui/root.cc index 981fcc2c..e02fc938 100644 --- a/src/ui/root.cc +++ b/src/ui/root.cc @@ -140,23 +140,23 @@ Root::setup_keys() { const char* keys = get_throttle_keys(); - m_bindings[keys[ 0]] = std::tr1::bind(&Root::adjust_up_throttle, this, 1); - m_bindings[keys[ 1]] = std::tr1::bind(&Root::adjust_up_throttle, this, -1); - m_bindings[keys[ 2]] = std::tr1::bind(&Root::adjust_down_throttle, this, 1); - m_bindings[keys[ 3]] = std::tr1::bind(&Root::adjust_down_throttle, this, -1); + m_bindings[keys[ 0]] = std::bind(&Root::adjust_up_throttle, this, 1); + m_bindings[keys[ 1]] = std::bind(&Root::adjust_up_throttle, this, -1); + m_bindings[keys[ 2]] = std::bind(&Root::adjust_down_throttle, this, 1); + m_bindings[keys[ 3]] = std::bind(&Root::adjust_down_throttle, this, -1); - m_bindings[keys[ 4]] = std::tr1::bind(&Root::adjust_up_throttle, this, 5); - m_bindings[keys[ 5]] = std::tr1::bind(&Root::adjust_up_throttle, this, -5); - m_bindings[keys[ 6]] = std::tr1::bind(&Root::adjust_down_throttle, this, 5); - m_bindings[keys[ 7]] = std::tr1::bind(&Root::adjust_down_throttle, this, -5); + m_bindings[keys[ 4]] = std::bind(&Root::adjust_up_throttle, this, 5); + m_bindings[keys[ 5]] = std::bind(&Root::adjust_up_throttle, this, -5); + m_bindings[keys[ 6]] = std::bind(&Root::adjust_down_throttle, this, 5); + m_bindings[keys[ 7]] = std::bind(&Root::adjust_down_throttle, this, -5); - m_bindings[keys[ 8]] = std::tr1::bind(&Root::adjust_up_throttle, this, 50); - m_bindings[keys[ 9]] = std::tr1::bind(&Root::adjust_up_throttle, this, -50); - m_bindings[keys[10]] = std::tr1::bind(&Root::adjust_down_throttle, this, 50); - m_bindings[keys[11]] = std::tr1::bind(&Root::adjust_down_throttle, this, -50); + m_bindings[keys[ 8]] = std::bind(&Root::adjust_up_throttle, this, 50); + m_bindings[keys[ 9]] = std::bind(&Root::adjust_up_throttle, this, -50); + m_bindings[keys[10]] = std::bind(&Root::adjust_down_throttle, this, 50); + m_bindings[keys[11]] = std::bind(&Root::adjust_down_throttle, this, -50); - m_bindings['\x0C'] = std::tr1::bind(&display::Manager::force_redraw, m_control->display()); // ^L - m_bindings['\x11'] = std::tr1::bind(&Control::receive_normal_shutdown, m_control); // ^Q + m_bindings['\x0C'] = std::bind(&display::Manager::force_redraw, m_control->display()); // ^L + m_bindings['\x11'] = std::bind(&Control::receive_normal_shutdown, m_control); // ^Q } void @@ -234,7 +234,7 @@ Root::enable_input(const std::string& title, input::TextInput* input) { if (m_windowInput->input() != NULL) throw torrent::internal_error("Root::enable_input(...) m_windowInput->input() != NULL."); - input->slot_dirty(std::tr1::bind(&WInput::mark_dirty, m_windowInput)); + input->slot_dirty(std::bind(&WInput::mark_dirty, m_windowInput)); m_windowStatusbar->set_active(false); @@ -243,8 +243,8 @@ Root::enable_input(const std::string& title, input::TextInput* input) { m_windowInput->set_title(title); m_windowInput->set_focus(true); - input->bindings()['\x0C'] = std::tr1::bind(&display::Manager::force_redraw, m_control->display()); // ^L - input->bindings()['\x11'] = std::tr1::bind(&Control::receive_normal_shutdown, m_control); // ^Q + input->bindings()['\x0C'] = std::bind(&display::Manager::force_redraw, m_control->display()); // ^L + input->bindings()['\x11'] = std::bind(&Control::receive_normal_shutdown, m_control); // ^Q control->input()->set_text_input(input); control->display()->adjust_layout(); diff --git a/src/utils/list_focus.h b/src/utils/list_focus.h index 25cc0af6..d60e7d14 100644 --- a/src/utils/list_focus.h +++ b/src/utils/list_focus.h @@ -37,7 +37,7 @@ #ifndef RTORRENT_UTILS_LIST_FOCUS_H #define RTORRENT_UTILS_LIST_FOCUS_H -#include +#include lt_tr1_functional namespace utils { @@ -47,7 +47,7 @@ template class ListFocus { public: typedef Base base_type; - typedef std::tr1::function slot_void; + typedef std::function slot_void; typedef std::list signal_void; typedef typename base_type::iterator iterator; diff --git a/test/rpc/command_map_test.cc b/test/rpc/command_map_test.cc index 91aa9153..95fd44e7 100644 --- a/test/rpc/command_map_test.cc +++ b/test/rpc/command_map_test.cc @@ -21,7 +21,7 @@ torrent::Object cmd_test_any_string(__UNUSED rpc::target_type target, const std: void CommandMapTest::test_basics() { CMD2_ANY("test_a", &cmd_test_map_a); - CMD2_ANY("test_b", tr1::bind(&cmd_test_map_b, tr1::placeholders::_1, tr1::placeholders::_2, (uint64_t)2)); + CMD2_ANY("test_b", std::bind(&cmd_test_map_b, std::placeholders::_1, std::placeholders::_2, (uint64_t)2)); CMD2_ANY_STRING("any_string", &cmd_test_any_string); CPPUNIT_ASSERT(m_map.call_command("test_a", (int64_t)1).as_value() == 1); diff --git a/test/rpc/command_slot_test.cc b/test/rpc/command_slot_test.cc index f2e992cc..012cf4f2 100644 --- a/test/rpc/command_slot_test.cc +++ b/test/rpc/command_slot_test.cc @@ -25,7 +25,7 @@ CommandSlotTest::test_basics() { // test_any.set_function(&cmd_test_a); // CPPUNIT_ASSERT(rpc::command_base_call_any(&test_any, rpc::make_target(), (int64_t)1).as_value() == 1); -// test_any.set_function(tr1::bind(&cmd_test_b, tr1::placeholders::_1, tr1::placeholders::_2, (uint64_t)2)); +// test_any.set_function(std::bind(&cmd_test_b, std::placeholders::_1, std::placeholders::_2, (uint64_t)2)); // CPPUNIT_ASSERT(rpc::command_base_call_any(&test_any, rpc::make_target(), (int64_t)1).as_value() == 2); // test_any.set_function(&cmd_test_list);