Recursive de-referencable nil_
This commit is contained in:
parent
a7885e88a9
commit
63a7d1607d
@ -33,8 +33,15 @@
|
||||
namespace utl {
|
||||
namespace meta {
|
||||
|
||||
//! Empty type
|
||||
struct nil_ { };
|
||||
/*!
|
||||
* Empty type
|
||||
* utl::meta's nil type is not pure nil. It's a recursive "de-referencable nil.
|
||||
* Each time someone applies ::type to it, he gets back nil_. This way we can prevent
|
||||
* a lot of compilation errors in a wrong meta:: handling.
|
||||
*/
|
||||
struct nil_ {
|
||||
using type = nil_;
|
||||
};
|
||||
|
||||
//! Type alias for \p _Tp::type. Used to extract return type of metafunctions
|
||||
template <typename _Tp>
|
||||
|
Loading…
x
Reference in New Issue
Block a user