CANdevStudio
Development tool for CAN bus simulation
|
Go to the source code of this file.
Classes | |
struct | irqus::typestring< C > |
Namespaces | |
namespace | irqus |
Macros | |
#define | TYPESTRING1(n, x) irqus::tygrab<0x##n##0>(x) |
#define | TYPESTRING2(n, x) irqus::tygrab<0x##n##0>(x), irqus::tygrab<0x##n##1>(x) |
#define | TYPESTRING4(n, x) |
#define | TYPESTRING8(n, x) |
#define | TYPESTRING16(n, x) |
#define | TYPESTRING32(n, x) TYPESTRING16(n##0,x),TYPESTRING16(n##1,x) |
#define | TYPESTRING64(n, x) |
#define | TYPESTRING128(n, x) |
#define | TYPESTRING256(n, x) |
#define | TYPESTRING512(n, x) TYPESTRING256(n##0,x), TYPESTRING256(n##1,x) |
#define | TYPESTRING1024(n, x) |
#define | typestring_is(x) decltype(irqus::typeek(irqus::typestring<TYPESTRING64(,x)>())) |
Typedefs | |
template<typename... T> | |
using | irqus::tycat = decltype(tycat_(T()...)) |
Functions | |
template<int N, int M> | |
constexpr char | irqus::tygrab (char const(&c)[M]) noexcept |
template<char... X> | |
auto | irqus::typoke (typestring< X... >) -> typestring< X... > |
template<char... X, char... Y> | |
auto | irqus::typoke (typestring< X... >, typestring<'\0'>, typestring< Y >...) -> typestring< X... > |
template<char A, char... X, char... Y> | |
auto | irqus::typoke (typestring< X... >, typestring< A >, typestring< Y >...) -> decltype(typoke(typestring< X..., A >(), typestring< Y >()...)) |
template<char... C> | |
auto | irqus::typeek (typestring< C... >) -> decltype(typoke(typestring< C >()...)) |
template<char... A, char... B, typename... X> | |
auto | irqus::tycat_ (typestring< A... >, typestring< B... >, X... x) -> decltype(tycat_(typestring< A..., B... >(), x...)) |
template<char... X> | |
auto | irqus::tycat_ (typestring< X... >) -> typestring< X... > |
#define TYPESTRING1 | ( | n, | |
x | |||
) | irqus::tygrab<0x##n##0>(x) |
#define TYPESTRING1024 | ( | n, | |
x | |||
) |
#define TYPESTRING128 | ( | n, | |
x | |||
) |
#define TYPESTRING16 | ( | n, | |
x | |||
) |
#define TYPESTRING2 | ( | n, | |
x | |||
) | irqus::tygrab<0x##n##0>(x), irqus::tygrab<0x##n##1>(x) |
#define TYPESTRING256 | ( | n, | |
x | |||
) |
#define TYPESTRING32 | ( | n, | |
x | |||
) | TYPESTRING16(n##0,x),TYPESTRING16(n##1,x) |
#define TYPESTRING4 | ( | n, | |
x | |||
) |
#define TYPESTRING512 | ( | n, | |
x | |||
) | TYPESTRING256(n##0,x), TYPESTRING256(n##1,x) |
#define TYPESTRING64 | ( | n, | |
x | |||
) |
#define TYPESTRING8 | ( | n, | |
x | |||
) |
#define typestring_is | ( | x | ) | decltype(irqus::typeek(irqus::typestring<TYPESTRING64(,x)>())) |