Uninline constructors to reduce GetInstance() inlined code size.

This commit is contained in:
Peter Johnson
2015-08-19 21:49:18 -07:00
parent c6bed1f464
commit 2d1bc2f4c7
4 changed files with 8 additions and 2 deletions

View File

@@ -30,6 +30,9 @@ void Dispatcher::StartClient(const char* server_name, unsigned int port) {
static_cast<int>(port), 1));
}
Dispatcher::Dispatcher()
: Dispatcher(Storage::GetInstance(), Notifier::GetInstance()) {}
DispatcherBase::DispatcherBase(Storage& storage, Notifier& notifier)
: m_storage(storage), m_notifier(notifier) {
m_active = false;

View File

@@ -114,7 +114,7 @@ class Dispatcher : public DispatcherBase {
void StartClient(const char* server_name, unsigned int port);
private:
Dispatcher() : Dispatcher(Storage::GetInstance(), Notifier::GetInstance()) {}
Dispatcher();
Dispatcher(Storage& storage, Notifier& notifier)
: DispatcherBase(storage, notifier) {}

View File

@@ -20,6 +20,9 @@ using namespace nt;
ATOMIC_STATIC_INIT(Storage)
Storage::Storage()
: Storage(Notifier::GetInstance(), RpcServer::GetInstance()) {}
Storage::Storage(Notifier& notifier, RpcServer& rpc_server)
: m_notifier(notifier), m_rpc_server(rpc_server) {
m_terminating = false;

View File

@@ -99,7 +99,7 @@ class Storage {
bool GetRpcResult(bool blocking, unsigned int call_uid, std::string* result);
private:
Storage() : Storage(Notifier::GetInstance(), RpcServer::GetInstance()) {}
Storage();
Storage(Notifier& notifier, RpcServer& rpcserver);
Storage(const Storage&) = delete;
Storage& operator=(const Storage&) = delete;