libmicroemu 0.2.0
ARM Microcontroller Emulator Library
Loading...
Searching...
No Matches
mem_traits.h
1#pragma once
2
3// Helper type for SFINAE
4// Empty struct to be used as a placeholder for the second template parameter
5template <typename...> using void_t = void;
6
7template <typename T, typename = void> struct has_kRegisters : std::false_type {};
8
9// Specialization if T::kRegisters is valid
10template <typename T> struct has_kRegisters<T, void_t<decltype(T::kRegisters)>> : std::true_type {};
11
12// Helper variable for simpler usage
13template <typename T> constexpr bool has_kRegisters_v = has_kRegisters<T>::value;
Definition mem_traits.h:7