aliceml_hash.h

#include "aliceml.h"

ソースコードを見る。

データ構造

struct  ML_HashPair
 ハッシュに使われるキーと値のペアです。 [詳細]

型定義

typedef ML_Hash ML_Hash
 オブジェクトをリンクで持つ標準的なハッシュテーブルです。
typedef ML_uint32(ALICEMLCALL *) ML_Hasher (const void *key)
 キーを受け取ってハッシュ値を取得するための関数型です。
typedef int(ALICEMLCALL *) ML_Callback_HashInsert (ML_HashPair *pair)
 ハッシュにペアを挿入するときに呼ばれる関数型です。
typedef void(ALICEMLCALL *) ML_Callback_HashRemove (ML_HashPair *pair)
 ハッシュからペアを削除するときに呼ばれる関数型です。

関数

ALICEMLAPI ML_uint32 ALICEMLCALL ML_HashInteger (ML_uint32 value)
 ML_Hasher を定義するときに役立つ標準的な整数ハッシュ関数です。
ALICEMLAPI ML_Hash *ALICEMLCALL ML_Hash_Create (ML_Hasher hasher, ML_Comparator key_compare, ML_Callback_HashInsert insert, ML_Callback_HashRemove remove)
 ハッシュオブジェクトを作成します。
ALICEMLAPI void ALICEMLCALL ML_Hash_Destroy (ML_Hash *hash)
 ハッシュオブジェクトを破棄します。
ALICEMLAPI ML_size ALICEMLCALL ML_Hash_GetSize (ML_Hash *hash)
 ハッシュ中のオブジェクト数を取得します。
ALICEMLAPI ML_size ALICEMLCALL ML_Hash_GetCapacity (ML_Hash *hash)
 ハッシュテーブルのサイズを取得します。
ALICEMLAPI ML_HashPair *ALICEMLCALL ML_Hash_Find (ML_Hash *hash, void *key)
 キーからそのペアを取得します。
ALICEMLAPI int ALICEMLCALL ML_Hash_Insert (ML_Hash *hash, void *key, void *value)
 キーと値を組にしてハッシュに挿入します。
ALICEMLAPI int ALICEMLCALL ML_Hash_Erase (ML_Hash *hash, void *key)
 ハッシュから特定のキーをもったペアを削除します。
ALICEMLAPI int ALICEMLCALL ML_Hash_Clear (ML_Hash *hash)
 ハッシュ中のオブジェクトをすべて削除します。


型定義

typedef int(ALICEMLCALL *) ML_Callback_HashInsert(ML_HashPair *pair)

ハッシュにペアを挿入するときに呼ばれる関数型です。

typedef void(ALICEMLCALL *) ML_Callback_HashRemove(ML_HashPair *pair)

ハッシュからペアを削除するときに呼ばれる関数型です。

typedef struct ML_Hash ML_Hash

オブジェクトをリンクで持つ標準的なハッシュテーブルです。

typedef ML_uint32(ALICEMLCALL *) ML_Hasher(const void *key)

キーを受け取ってハッシュ値を取得するための関数型です。


関数

ALICEMLAPI int ALICEMLCALL ML_Hash_Clear ( ML_Hash hash  ) 

ハッシュ中のオブジェクトをすべて削除します。

ALICEMLAPI ML_Hash* ALICEMLCALL ML_Hash_Create ( ML_Hasher  hasher,
ML_Comparator  key_compare,
ML_Callback_HashInsert  insert,
ML_Callback_HashRemove  remove 
)

ハッシュオブジェクトを作成します。

ALICEMLAPI void ALICEMLCALL ML_Hash_Destroy ( ML_Hash hash  ) 

ハッシュオブジェクトを破棄します。

ALICEMLAPI int ALICEMLCALL ML_Hash_Erase ( ML_Hash hash,
void *  key 
)

ハッシュから特定のキーをもったペアを削除します。

ALICEMLAPI ML_HashPair* ALICEMLCALL ML_Hash_Find ( ML_Hash hash,
void *  key 
)

キーからそのペアを取得します。

ALICEMLAPI ML_size ALICEMLCALL ML_Hash_GetCapacity ( ML_Hash hash  ) 

ハッシュテーブルのサイズを取得します。

ALICEMLAPI ML_size ALICEMLCALL ML_Hash_GetSize ( ML_Hash hash  ) 

ハッシュ中のオブジェクト数を取得します。

ALICEMLAPI int ALICEMLCALL ML_Hash_Insert ( ML_Hash hash,
void *  key,
void *  value 
)

キーと値を組にしてハッシュに挿入します。

ALICEMLAPI ML_uint32 ALICEMLCALL ML_HashInteger ( ML_uint32  value  ) 

ML_Hasher を定義するときに役立つ標準的な整数ハッシュ関数です。


AliceMLに対してSat Apr 21 13:06:20 2007に生成されました。  doxygen 1.4.7