Type Traits Introspection library by Edward Diener starts tomorrow Friday 1
TTI Review Result
ドキュメント
Boost.TTI(Type Traits Introspection)ライブラリが採択されました。
これはBoost.Type Traitsの拡張ライブラリで、型が「ある型を持っているか」「あるメンバ関数を持っているか」などを判定するメタ関数を生成することを可能にします。
以下、レビュー結果です:
これは、Edward DienerのType Traits Introspectionライブラリのレビュー結果の概要である。
レビューは7/1から7/17の間で、非常に多くの興味深い設計議論が行われた。このライブラリには、5票の賛成票と、いくつかの肯定的なコメントが寄せられた。
評決として、TTIライブラリをBoostに採択する。
いくつかのコメントや懸念事項が挙げられたが、どちらかと言えば単純な変更であり、Edwardはライブラリをリリースする前にこれらのコメントを考慮するだろうと確信した。
コメントは以下のとおり:
- 主なコメントは、Boost.TTIがboost::tti名前空間にメタ関数の定義を強制することである。マクロによって任意の名前空間にメタ関数を持たせられることが要求された。
- さまざまなケースを処理するマクロの潜在性が高すぎるという懸念が挙げられた。マクロベースインタフェースを整備する努力が求められる。
- より多くのコンパイラサポートが必要。ICCでいくつか問題が見られる(もしくはすでに修正された)。
- マクロとそれが生成するメタ関数の命名規則は 1)より明確にし、 2)__で始まる非標準的な名前を避ける必要がある。
- いくつかのより詳細な導入レベルの例があると、ライブラリにとって有益であるかもしれない。
- value_typeや他の標準コンポーネントのための事前定義マクロが提案された。
レビューに参加したすべての方とEdwardに感謝する。