7#include "../macros.hpp"
10enum class keyboard_state : uint8_t {
17[[
nodiscard]]
constexpr keyboard_state operator|(keyboard_state
const& lhs, keyboard_state
const& rhs)
noexcept
19 return static_cast<keyboard_state
>(std::to_underlying(lhs) | std::to_underlying(rhs));
22[[
nodiscard]]
constexpr keyboard_state operator&(keyboard_state
const& lhs, keyboard_state
const& rhs)
noexcept
24 return static_cast<keyboard_state
>(std::to_underlying(lhs) & std::to_underlying(rhs));
27constexpr keyboard_state& operator|=(keyboard_state& lhs, keyboard_state
const& rhs)
noexcept
29 return lhs = lhs | rhs;
32bool operator>=(keyboard_state
const& lhs, keyboard_state
const& rhs) =
delete;
34[[
nodiscard]]
constexpr bool to_bool(keyboard_state
const& rhs)
noexcept
36 return to_bool(std::to_underlying(rhs));
DOXYGEN BUG.
Definition algorithm.hpp:16
constexpr Out narrow_cast(In const &rhs) noexcept
Cast numeric values without loss of precision.
Definition cast.hpp:377