From ce1d512a0c1922ab5f43f28e7bae573508c98601 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Tue, 8 Jul 2025 11:43:17 +1000 Subject: Replace std::unique_ptr with a custom implementation is a costly header we can avoid by just implementing UniquePtr ourselves, which is a pretty straightforward in modern C++, this saves around 10% of the compilation time here. --- src/remote.hh | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) (limited to 'src/remote.hh') diff --git a/src/remote.hh b/src/remote.hh index dc6bc41f..40d0367e 100644 --- a/src/remote.hh +++ b/src/remote.hh @@ -6,8 +6,7 @@ #include "utils.hh" #include "vector.hh" #include "optional.hh" - -#include +#include "unique_ptr.hh" namespace Kakoune { @@ -30,15 +29,15 @@ using RemoteBuffer = Vector; class RemoteClient { public: - RemoteClient(StringView session, StringView name, std::unique_ptr&& ui, + RemoteClient(StringView session, StringView name, UniquePtr&& ui, int pid, const EnvVarMap& env_vars, StringView init_command, Optional init_coord, Optional stdin_fd); bool is_ui_ok() const; const Optional& exit_status() const { return m_exit_status; } private: - std::unique_ptr m_ui; - std::unique_ptr m_socket_watcher; + UniquePtr m_ui; + UniquePtr m_socket_watcher; RemoteBuffer m_send_buffer; Optional m_exit_status; }; @@ -68,8 +67,8 @@ private: String m_session; bool m_is_daemon; - std::unique_ptr m_listener; - Vector, MemoryDomain::Remote> m_accepters; + UniquePtr m_listener; + Vector, MemoryDomain::Remote> m_accepters; }; bool check_session(StringView session); -- cgit v1.2.3