2.1. Installing the library
ライブラリはインクルードファイルのみで構成されているため、ライブラリを利用するための特別な手続きはない。 ただし、boost のインクルードディレクトリがインクルードパスに含まれている必要がある。 以下のように異った機能を提供する数々のインクルードファイルが存在する。
lambda/lambda.hppは様々な C++ の演算子のためのλ式を定義している。 詳しくはSection 5.2を見よ。lambda/bind.hppは9個までの引数のためのboost::bind関数を定義している。 詳しくはSection 5.3を見よ。lambda/if.hppは if 文や条件演算子と等価なλ関数を定義している。 詳しくはSection 5.6を見よ。 (lambda.hppも見ることを薦める)。lambda/loops.hppは繰り返し構造と等価なλ関数を定義している。 詳しくはSection 5.6を見よ。lambda/switch.hppは switc 文と等価なλ関数を定義している。 詳しくはSection 5.6を見よ。lambda/construct.hppはコンストラクタ、デストラクタ、new や delete を呼出すλ式を記述するツールを提供している。 詳しくはSection 5.8を見よ。 (lambda.hppも見ることを薦める)。lambda/casts.hppはλ関数のための、キャストやsizeof、typeidを定義している。 詳しくはSection 5.10.1を見よ。lambda/exceptions.hppはλ関数内での例外を送出したり、補足する手段を提供する。 詳しくはSection 5.7を見よ。 (lambda.hppを含む)lambda/algorithm.hppとlambda/numeric.hpp(標準ライブラリのalgortihmとnumericヘッダを参照 ) はネストした STL アルゴリズムの呼び出しを可能にする。 詳しくはSection 5.11を見よ。
以上に挙げた以外のパッケージ内のヘッダファイルは内部的に使用しているものである。 更に、lambda ライブラリは Tuple [tuple] と type_traits [type_traits] の二つの Boost ライブラリに依存している。 そして、boost/ref.hpp ヘッダファイルにも依存する。
全ての定義は boost::lambda ネームスペースとそのサブネームスペースに属する。
2.2. Conventions used in this document
多くのコード例では、std と boost::lambda の名前空間の名前の接頭辞を省略している。 そのため事実上暗黙的に、
using namespace std;
using namespace boost::lambda;
という定義があると仮定している。