 
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.