Bezelは相互に独立した複数の部品で構成されている。各部品は、次のいずれかに属する。
コンテナを表すクラステンプレート。標準コンテナと同名のものと標準コンテナにはないものがある。
標準コンテナと同名のものは次の通り。
標準コンテナにはないものは次の通り。
arraybinary_search_treemap、multimap、multisetおよびsetはbinary_search_treeを用いたコンテナアダプタとして実装されている。chunkvectorよりも機能が制限された動的配列を表すコンテナ。構築後は大きさを変更できないが、簡潔な内部構造を持つ。
map、multimap、multisetおよびsetを除くすべてのコンテナは、いくつかのポリシークラスを受け付けるホストクラスである。アルゴリズムとデータ構造、記憶領域の割り当ておよび管理の方法、反復子や逆方向反復子の定義などといったコンテナの振る舞いは、ポリシークラスが決定する。
map、multimap、multisetおよびsetは、binary_search_treeに対するコンテナアダプタである。振る舞いは指定されたbinary_search_treeが決定する。
ポリシークラスのうち、複数のホストクラスで共用可能なものを汎用ポリシーと呼ぶ。
主なものは次の通り。
各ポリシーは、文書化された要件で定義される。また、要件を満たすいくつかの実装がBezelによって提供される。
ポリシークラスのうち、特定のホストクラスのために定義されたものを専用ポリシーと呼ぶ。
汎用ポリシーと同様、各ポリシーは文書化された要件で定義され、いくつかの実装がBezelによって提供される。
コンテナまたはポリシーではないが、それらの実装を補助するためにBezel内で定義されているクラスや関数である。