ソースを参照

Recursive de-referencable nil_

doc
Christos Houtouridis 5年前
コミット
63a7d1607d
2個のファイルの変更9行の追加2行の削除
  1. +9
    -2
      include/utl/meta/integral.h
  2. +0
    -0
      include/utl/meta/invoke.h

+ 9
- 2
include/utl/meta/integral.h ファイルの表示

@@ -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>


include/utl/meta/utility.h → include/utl/meta/invoke.h ファイルの表示


読み込み中…
キャンセル
保存