mirror of
https://github.com/quizhizhe/LiteLoaderBDS-1.16.40.git
synced 2025-06-05 03:43:40 +00:00
47 lines
964 B
C++
47 lines
964 B
C++
#ifndef ENTT_SIGNAL_FWD_HPP
|
|
#define ENTT_SIGNAL_FWD_HPP
|
|
|
|
#include <memory>
|
|
|
|
namespace entt {
|
|
|
|
template<typename>
|
|
class delegate;
|
|
|
|
template<typename = std::allocator<void>>
|
|
class basic_dispatcher;
|
|
|
|
template<typename, typename = std::allocator<void>>
|
|
class emitter;
|
|
|
|
class connection;
|
|
|
|
struct scoped_connection;
|
|
|
|
template<typename>
|
|
class sink;
|
|
|
|
template<typename Type, typename = std::allocator<void>>
|
|
class sigh;
|
|
|
|
/*! @brief Alias declaration for the most common use case. */
|
|
using dispatcher = basic_dispatcher<>;
|
|
|
|
/*! @brief Disambiguation tag for constructors and the like. */
|
|
template<auto>
|
|
struct connect_arg_t {
|
|
/*! @brief Default constructor. */
|
|
explicit connect_arg_t() = default;
|
|
};
|
|
|
|
/**
|
|
* @brief Constant of type connect_arg_t used to disambiguate calls.
|
|
* @tparam Candidate Element to connect (likely a free or member function).
|
|
*/
|
|
template<auto Candidate>
|
|
inline constexpr connect_arg_t<Candidate> connect_arg{};
|
|
|
|
} // namespace entt
|
|
|
|
#endif
|