std.iterator
このモジュールは、Alexander Stepanov による Standard Template Library の algorithm ヘッダの発展途上の移植版です。Author:
Andrei Alexandrescu
Note:
現在の所、組み込み配列に対するイテレータのみが定義されています。 組み込み配列それ自身は、レンジ としても扱われます。 組み込み配列 T[] のイテレータは現在の所 T* ですが、 将来的には変更されるかも知れません。
- Iterator!(Range) あるいは Iterator!(Collection) は、
その Range ないしは Collection の上を走査するイテレータの型です。
特に、Iterator!(T[]) は全ての型 T に対して
T* と定義されています。
- レンジの要素型。組み込み配列 T[] の場合は、
要素型は T です。
- レンジ r が空のとき true を返します。
- レンジ r の先頭を指すイテレータを返します。
- レンジ r の終端(の後ろ)を指すイテレータを返します。
- レンジの先頭要素を返します。
Preconditions:
!isEmpty(r)
- イテレータのペアからレンジを作成します。
Precondition:
last は first から到達可能であること (ポインタの場合は、 両者が同じメモリチャンクに属し、last >= first であること。)
- レンジに対する逆順のビュー
- r の逆順レンジを返します。
- begin(retro(range)) を返します。
- end(retro(range)) を返します。
