WrappedList ライブラリ

- 目次 -


概要

このライブラリ data.WrappedList は、リスト型のデータ構造を提供します。

このモジュールでは、リストのデータを保持するジェネリック構造体 WrappedList と、それに対してデータを出し入れするジェネリック関数 add, remove などが提供されます。

なお、この data.WrappedList では、要素を DataWrapper 構造体でラッピングして保持する実装になっています。
そのため WrappedListでは、 data.List とは異なり、配列を要素として扱う事ができます。

反面、要素の出し入れの際に DataWrapper 構造体へのラッピング処理を伴うため、そのオーバーヘッドの分だけ、List よりも処理が重くなります。
従って、要素が配列でない場合には、WrappedList よりも List の使用が推奨されます。


目次

struct WrappedList<Type>
リスト構造体です。リストのデータを保持します。
void clear<Type>( WrappedList<Type> &list )
要素を全て削除します。
int size<Type>( WrappedList<Type> &list )
使用中のサイズを返します。
void add<Type>( WrappedList<Type> &list, Type value )
リストの末尾に要素を追加します。
Type get<Type>( WrappedList<Type> &list, int index )
特定インデックスの要素を取得します。
void set<Type>( WrappedList<Type> &list, int index, Type element )
特定インデックスの要素を代入します。そのインデックスの位置にあった要素は上書きされます。
Type insert<Type>( WrappedList<Type> &list, int index, Type value )
特定インデックスに要素を挿入します。そのインデックスの位置にあった要素は、次のインデックスの位置に移動します。また、それ以降の全ての要素も、インデックスが後方に 1 ずつ移動します。
bool contains<Type>( WrappedList<Type> &list, Type element )
リストが指定された要素を含んでいるか判定します。
Type removeAt<Type>( WrappedList<Type> &list, int index )
特定インデックスの要素を削除します。
void remove<Type>( WrappedList<Type> &list, Type element )
指定された要素を削除します。複数存在する場合は、最初のものだけが削除されます。
void removeAll<Type>( WrappedList<Type> &list, Type element )
指定された要素を全て削除します。
int indexOf<Type>( WrappedList<Type> &list, Type element )
指定された要素を、先頭から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int indexOf<Type>( WrappedList<Type> &list, Type element, int from )
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int lastIndexOf<Type>( WrappedList<Type> &list, Type element )
指定された要素を、末尾から前方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
int lastIndexOf<Type>( WrappedList<Type> &list, Type element, int from )
指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
void reverse<Type>( WrappedList<Type> &list )
リストが保持する全要素の順序を反転させます。
DataWrapper<Type>[ ] toDataWrapperArray<Type>( WrappedList<Type> &list )
リストが保持する全要素を、DataWrapper配列に格納して返します。

構造体

構造体名 WrappedList<Type>
宣言形式 struct WrappedList<Type>
説明 リスト構造体です。リストのデータを保持します。

変数

- なし -


関数

関数名 clear<Type>
宣言形式 void clear<Type>( WrappedList<Type> &list )
説明 要素を全て削除します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
戻り値 (void型)
関数名 size<Type>
宣言形式 int size<Type>( WrappedList<Type> &list )
説明 使用中のサイズを返します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
戻り値 (int型)
関数名 add<Type>
宣言形式 void add<Type>( WrappedList<Type> &list, Type value )
説明 リストの末尾に要素を追加します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) value : 追加する要素
戻り値 (void型)
関数名 get<Type>
宣言形式 Type get<Type>( WrappedList<Type> &list, int index )
説明 特定インデックスの要素を取得します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(int型) index : 取得したい要素のインデックス
戻り値 (Type型) 指定されたインデックスの要素
関数名 set<Type>
宣言形式 void set<Type>( WrappedList<Type> &list, int index, Type element )
説明 特定インデックスの要素を代入します。そのインデックスの位置にあった要素は上書きされます。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(int型) index : 代入したい要素のインデックス
(Type型) element : 代入する要素
戻り値 (void型)
関数名 insert<Type>
宣言形式 Type insert<Type>( WrappedList<Type> &list, int index, Type value )
説明 特定インデックスに要素を挿入します。そのインデックスの位置にあった要素は、次のインデックスの位置に移動します。また、それ以降の全ての要素も、インデックスが後方に 1 ずつ移動します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(int型) index : 挿入したい要素のインデックス
element : 挿入する要素
戻り値 (Type型)
関数名 contains<Type>
宣言形式 bool contains<Type>( WrappedList<Type> &list, Type element )
説明 リストが指定された要素を含んでいるか判定します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 含まれるか判定したい要素
戻り値 (bool型)
関数名 removeAt<Type>
宣言形式 Type removeAt<Type>( WrappedList<Type> &list, int index )
説明 特定インデックスの要素を削除します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(int型) index : 削除したい要素のインデックス
戻り値 (Type型)
関数名 remove<Type>
宣言形式 void remove<Type>( WrappedList<Type> &list, Type element )
説明 指定された要素を削除します。複数存在する場合は、最初のものだけが削除されます。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 削除したい要素
戻り値 (void型)
関数名 removeAll<Type>
宣言形式 void removeAll<Type>( WrappedList<Type> &list, Type element )
説明 指定された要素を全て削除します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 削除したい要素
戻り値 (void型)
関数名 indexOf<Type>
宣言形式 int indexOf<Type>( WrappedList<Type> &list, Type element )
説明 指定された要素を、先頭から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 検索したい要素
戻り値 (int型)
関数名 indexOf<Type>
宣言形式 int indexOf<Type>( WrappedList<Type> &list, Type element, int from )
説明 指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 削除したい要素
(int型) from : 検索開始インデックス
戻り値 (int型)
関数名 lastIndexOf<Type>
宣言形式 int lastIndexOf<Type>( WrappedList<Type> &list, Type element )
説明 指定された要素を、末尾から前方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 削除したい要素
戻り値 (int型)
関数名 lastIndexOf<Type>
宣言形式 int lastIndexOf<Type>( WrappedList<Type> &list, Type element, int from )
説明 指定された要素を、指定インデックスの位置から後方検索し、存在すればそのインデックスを、存在しなければ-1を返します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
(Type型) element : 削除したい要素
(int型) from : 検索開始インデックス
戻り値 (int型)
関数名 reverse<Type>
宣言形式 void reverse<Type>( WrappedList<Type> &list )
説明 リストが保持する全要素の順序を反転させます。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
戻り値 (void型)
関数名 toDataWrapperArray<Type>
宣言形式 DataWrapper<Type>[ ] toDataWrapperArray<Type>( WrappedList<Type> &list )
説明 リストが保持する全要素を、DataWrapper配列に格納して返します。
引数 (WrappedList<Type>型) list : 対象のリスト構造体
戻り値 (DataWrapper<Type>[]型) リストの全要素をまとめたDataWrapper配列