mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2026-07-22 18:49:40 +00:00
Codechange: Check command callbacks registration even in single player
This commit is contained in:
@@ -111,6 +111,16 @@ inline auto MakeCallbackTable(std::index_sequence<i...>) noexcept
|
||||
/** Type-erased table of callbacks. */
|
||||
static const auto _callback_table = MakeCallbackTable(std::make_index_sequence<_callback_tuple_size>{});
|
||||
|
||||
/**
|
||||
* Helper function to ensure that callbacks used when Posting commands are actually registered for the network calls.
|
||||
* @param callback The callback to check.
|
||||
* @return \c true when the callback is in the callback table, otherwise \c false.
|
||||
*/
|
||||
bool IsNetworkRegisteredCallback(CommandCallback *callback)
|
||||
{
|
||||
return std::ranges::find(_callback_table, callback) != _callback_table.end();
|
||||
}
|
||||
|
||||
template <typename T> struct CallbackArgsHelper;
|
||||
template <typename... Targs>
|
||||
struct CallbackArgsHelper<void(*const)(Commands, const CommandCost &, Targs...)> {
|
||||
|
||||
Reference in New Issue
Block a user