このモジュール open.data.WrappedList は、リスト型のデータ構造を提供します。
このモジュールでは、リストのデータを保持するジェネリック構造体 WrappedList と、それに対してデータを出し入れするジェネリック関数 add, remove などが提供されます。
なお、この open.data.WrappedList では、要素を DataWrapper 構造体でラッピングして保持する実装になっています。
そのため WrappedListでは、 open.data.List とは異なり、配列を要素として扱う事ができます。
反面、要素の出し入れの際に DataWrapper 構造体へのラッピング処理を伴うため、そのオーバーヘッドの分だけ、List よりも処理が重くなります。
従って、要素が配列でない場合には、WrappedList よりも List の使用が推奨されます。
宣言 - Declaration |
struct WrappedList<Type> |
詳細 - Description |
リスト構造体です。リストのデータを保持します。 |
- なし - None -
宣言 - Declaration |
void clear<Type>( WrappedList<Type> &list ) |
詳細 - Description |
要素を全て削除します。 |
引数 - Arguments |
list : 対象のリスト構造体 |
宣言 - Declaration |
int size<Type>( WrappedList<Type> &list ) |
詳細 - Description |
使用中のサイズを返します。 |
引数 - Arguments |
list : 対象のリスト構造体 |
宣言 - Declaration |
void add<Type>( WrappedList<Type> &list, Type value ) |
詳細 - Description |
リストの末尾に要素を追加します。 |
引数 - Arguments |
list : 対象のリスト構造体 value : 追加する要素 |
宣言 - Declaration |
Type get<Type>( WrappedList<Type> &list, int index ) |
詳細 - Description |
特定インデックスの要素を取得します。 |
引数 - Arguments |
list : 対象のリスト構造体 index : 取得したい要素のインデックス |
戻り値 - Return |
指定されたインデックスの要素 |
宣言 - Declaration |
void set<Type>( WrappedList<Type> &list, int index, Type element ) |
詳細 - Description |
特定インデックスの要素を代入します。そのインデックスの位置にあった要素は上書きされます。 |
引数 - Arguments |
list : 対象のリスト構造体 index : 代入したい要素のインデックス element : 代入する要素 |
宣言 - Declaration |
Type insert<Type>( WrappedList<Type> &list, int index, Type value ) |
詳細 - Description |
特定インデックスに要素を挿入します。そのインデックスの位置にあった要素は、次のインデックスの位置に移動します。また、それ以降の全ての要素も、インデックスが後方に 1 ずつ移動します。 |
引数 - Arguments |
list : 対象のリスト構造体 index : 挿入したい要素のインデックス element : 挿入する要素 |
宣言 - Declaration |
bool contains<Type>( WrappedList<Type> &list, Type element ) |
詳細 - Description |
リストが指定された要素を含んでいるか判定します。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 含まれるか判定したい要素 |
宣言 - Declaration |
Type removeAt<Type>( WrappedList<Type> &list, int index ) |
詳細 - Description |
特定インデックスの要素を削除します。 |
引数 - Arguments |
list : 対象のリスト構造体 index : 削除したい要素のインデックス |
宣言 - Declaration |
void remove<Type>( WrappedList<Type> &list, Type element ) |
詳細 - Description |
指定された要素を削除します。複数存在する場合は、最初のものだけが削除されます。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 削除したい要素 |
宣言 - Declaration |
void removeAll<Type>( WrappedList<Type> &list, Type element ) |
詳細 - Description |
指定された要素を全て削除します。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 削除したい要素 |
宣言 - Declaration |
int indexOf<Type>( WrappedList<Type> &list, Type element ) |
詳細 - Description |
指定された要素を、先頭から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 検索したい要素 |
宣言 - Declaration |
int indexOf<Type>( WrappedList<Type> &list, Type element, int from ) |
詳細 - Description |
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 削除したい要素 from : 検索開始インデックス |
宣言 - Declaration |
int lastIndexOf<Type>( WrappedList<Type> &list, Type element ) |
詳細 - Description |
指定された要素を、末尾から前方検索し、存在すればそのインデックスを、存在しなければ-1を返します。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 削除したい要素 |
宣言 - Declaration |
int lastIndexOf<Type>( WrappedList<Type> &list, Type element, int from ) |
詳細 - Description |
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。 |
引数 - Arguments |
list : 対象のリスト構造体 element : 削除したい要素 from : 検索開始インデックス |
宣言 - Declaration |
void reverse<Type>( WrappedList<Type> &list ) |
詳細 - Description |
リストが保持する全要素の順序を反転させます。 |
引数 - Arguments |
list : 対象のリスト構造体 |
宣言 - Declaration |
DataWrapper<Type>[] toDataWrapperArray<Type>( WrappedList<Type> &list ) |
詳細 - Description |
リストが保持する全要素を、DataWrapper配列に格納して返します。 |
引数 - Arguments |
list : 対象のリスト構造体 |
戻り値 - Return |
リストの全要素をまとめたDataWrapper配列 |