diff options
Diffstat (limited to '3rdparty/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp')
-rw-r--r-- | 3rdparty/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/3rdparty/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp b/3rdparty/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp index 41b355c748c..57b162a51e8 100644 --- a/3rdparty/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp +++ b/3rdparty/asio/src/examples/cpp11/handler_tracking/custom_tracking.hpp @@ -2,7 +2,7 @@ // custom_tracking.hpp // ~~~~~~~~~~~~~~~~~~~ // -// Copyright (c) 2003-2016 Christopher M. Kohlhoff (chris at kohlhoff dot com) +// Copyright (c) 2003-2024 Christopher M. Kohlhoff (chris at kohlhoff dot com) // // Distributed under the Boost Software License, Version 1.0. (See accompanying // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) @@ -24,6 +24,9 @@ # define ASIO_HANDLER_TRACKING_INIT \ ::custom_tracking::init() +# define ASIO_HANDLER_LOCATION(args) \ + ::custom_tracking::location args + # define ASIO_HANDLER_CREATION(args) \ ::custom_tracking::creation args @@ -71,9 +74,16 @@ struct custom_tracking { } + // Record a source location. + static void location(const char* file_name, + int line, const char* function_name) + { + std::printf("At location %s:%d in %s\n", file_name, line, function_name); + } + // Record the creation of a tracked handler. - static void creation(asio::execution_context& /*ctx*/, tracked_handler& h, - const char* object_type, void* /*object*/, + static void creation(asio::execution_context& /*ctx*/, + tracked_handler& h, const char* object_type, void* /*object*/, std::uintmax_t native_handle, const char* op_name) { // Generate a unique id for the new handler. @@ -177,7 +187,7 @@ struct custom_tracking // Record a reactor-based operation that is associated with a handler. static void reactor_operation(const tracked_handler& h, - const char* op_name, const asio::error_code& ec) + const char* op_name, const std::error_code& ec) { std::printf( "Performed operation %s.%s for native_handle = %" PRIuMAX @@ -187,7 +197,7 @@ struct custom_tracking // Record a reactor-based operation that is associated with a handler. static void reactor_operation(const tracked_handler& h, - const char* op_name, const asio::error_code& ec, + const char* op_name, const std::error_code& ec, std::size_t bytes_transferred) { std::printf( |