From e2902b651363c02fbcc5acc750fe1f594af6d676 Mon Sep 17 00:00:00 2001 From: Johan Wikman Date: Fri, 10 Aug 2018 09:58:56 +0300 Subject: [PATCH] MXS-2002 Remove GenericFunction typedef It does not save much in characters compared to std::function and it's a bit misleading as not just any callable object will do, but only one that takes no argument and returns void. --- include/maxscale/worker.hh | 7 +++---- server/core/worker.cc | 9 +++++---- server/modules/monitor/mariadbmon/mariadbmon.hh | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/include/maxscale/worker.hh b/include/maxscale/worker.hh index 8d38625ca..2ebcb5178 100644 --- a/include/maxscale/worker.hh +++ b/include/maxscale/worker.hh @@ -496,7 +496,6 @@ public: typedef WorkerDisposableTask DisposableTask; typedef WorkerLoad Load; typedef WorkerTimer Timer; - typedef std::function GenericFunction; /** * A delegating timer that delegates the timer tick handling @@ -759,9 +758,9 @@ public: * * @return True, if task was posted to the worker */ - bool execute(GenericFunction func, Semaphore* pSem, enum execute_mode_t mode); + bool execute(std::function func, Semaphore* pSem, enum execute_mode_t mode); - bool execute(GenericFunction func, enum execute_mode_t mode) + bool execute(std::function func, enum execute_mode_t mode) { return execute(func, NULL, mode); } @@ -786,7 +785,7 @@ public: * * @return True if function was executed on the worker. */ - bool call(GenericFunction func, enum execute_mode_t mode); + bool call(std::function func, enum execute_mode_t mode); /** * Post a message to a worker. diff --git a/server/core/worker.cc b/server/core/worker.cc index d57f21a5c..c6f99043c 100644 --- a/server/core/worker.cc +++ b/server/core/worker.cc @@ -41,6 +41,7 @@ #define WORKER_ABSENT_ID -1 +using std::function; using std::vector; using std::stringstream; @@ -477,20 +478,20 @@ bool Worker::post_disposable(DisposableTask* pTask, enum execute_mode_t mode) return posted; } -bool Worker::execute(GenericFunction func, Semaphore* pSem, execute_mode_t mode) +bool Worker::execute(function func, Semaphore* pSem, execute_mode_t mode) { class CustomTask : public maxscale::WorkerTask { public: - CustomTask(GenericFunction func) + CustomTask(function func) : m_func(func) { } private: - GenericFunction m_func; + function m_func; void execute(maxscale::Worker& worker) { @@ -522,7 +523,7 @@ bool Worker::call(Task& task, execute_mode_t mode) return execute(&task, &sem, mode) && sem.wait(); } -bool Worker::call(GenericFunction func, execute_mode_t mode) +bool Worker::call(function func, execute_mode_t mode) { Semaphore sem; return execute(func, &sem, mode) && sem.wait(); diff --git a/server/modules/monitor/mariadbmon/mariadbmon.hh b/server/modules/monitor/mariadbmon/mariadbmon.hh index 2fd9a0505..9519be356 100644 --- a/server/modules/monitor/mariadbmon/mariadbmon.hh +++ b/server/modules/monitor/mariadbmon/mariadbmon.hh @@ -191,7 +191,7 @@ private: MariaDBServer* get_server_info(MXS_MONITORED_SERVER* db); MariaDBServer* get_server(int64_t id); MariaDBServer* get_server(SERVER* server); - bool execute_manual_command(GenericFunction command, json_t** error_out); + bool execute_manual_command(std::function command, json_t** error_out); std::string diagnostics_to_string() const; json_t* diagnostics_to_json() const;