Utilities for template metaprogramming. More...
Go to the source code of this file.
Classes | |
struct | aurora::Type< T > |
Simple type wrapper, can be used for overload resolution. More... | |
struct | aurora::Int< N > |
Simple integer wrapper, can be used for overload resolution. More... | |
struct | aurora::FunctionResult< Signature > |
Find out the return type of a function. More... | |
struct | aurora::FunctionParam< Signature, N > |
Find out the N-th parameter type of a function. More... | |
struct | aurora::FunctionArity< Signature > |
Find out the number of parameters of a function. More... | |
Macros | |
#define | AURORA_ENABLE_IF(...) , typename std::enable_if<__VA_ARGS__>::type* = nullptr |
SFINAE Enable If Macro for parameter lists. More... | |
#define | AURORA_REQUIRE_COMPLETE_TYPE(Type) |
Macro to ensure complete type. More... | |
#define | AURORA_AUTO_RETURN(...) decltype(__VA_ARGS__) { return (__VA_ARGS__); } |
Function declaration with inferred return type. More... | |
Utilities for template metaprogramming.