## Assertion Utilities for GHashTable Assertion Utilities for GHashTable — Utilities to write assertions related to GHashTable more easily. |

## Functions

gboolean | gcut_hash_table_equal ()
gchar * | gcut_hash_table_inspect ()
gchar * | gcut_hash_table_inspect_sorted ()
gboolean | gcut_hash_table_string_equal ()
gchar * | gcut_hash_table_string_string_inspect ()
GHashTable * | gcut_hash_table_string_string_copy ()

## 説明

検証を書くためには等価性を検証し、期待値と実測値を表示する必要があります。

このユーティリティはGHashTableに関する検証の作成を補助します。

## Functions

### gcut_hash_table_equal ()

    gboolean
    gcut_hash_table_equal (GHashTable *hash1,
                           GHashTable *hash2,
                           GEqualFunc equal_func);

ふたつのGHashTable、`hash1`と`hash2`を比較します。`equal_func`は`hash1`と`hash2`の同じキーに対応する値それぞれについて呼ばれます。

例:

    1
    TODO

#### Parameters

hash1 | 比較するGHashTable。 |
hash2 | 比較するGHashTable。 |
equal_func | ふたつの値を比較する関数。 |

#### Returns

同じキーに対応するすべての`hash1`と`hash2`の値が`equal_func`でTRUEとなったらTRUE、そうでない場合はFALSE。

Since: 1.0.5

### gcut_hash_table_inspect ()

    gchar *
    gcut_hash_table_inspect (GHashTable *hash,
                             GCutInspectFunction key_inspect_func,
                             GCutInspectFunction value_inspect_func,
                             gpointer user_data);

`hash`の詳細を返します。`hash`の各キーは`key_inspect_func`で詳細化し、`hash`の各値は`value_inspect_func`で詳細化します。返された文字列が必要なくなったときは開放してください。

例:

    1
    TODO

#### Parameters

hash | 詳細を示すGHashTable。 |
key_inspect_func | 各キーの詳細を示す関数。 |
value_inspect_func | 各値の詳細を示す関数。 |
user_data | 関数に渡すユーザ用データ。 |

#### Returns

`hash`の詳細を示した文字列。

Since: 1.0.5

### gcut_hash_table_inspect_sorted ()

    gchar *
    gcut_hash_table_inspect_sorted (GHashTable *hash,
                                    GCutInspectFunction key_inspect_func,
                                    GCutInspectFunction value_inspect_func,
                                    GCompareFunc key_compare_func,
                                    gpointer user_data);

`key_compare_func`を使ってキーを基準にして`hash`を並び替えて、その詳細を返します。`hash`の各キーは`key_inspect_func`で詳細化し、`hash`の各値は`value_inspect_func`で詳細化します。返された文字列が必要なくなったときは開放してください。

`key_compare_func`が`NULL`なら`hash`を並び替えません。これは`gcut_hash_table_inspect()`と同じ動作です。

例:

    1
    TODO

#### Parameters

hash | 並び替えて詳細を示すGHashTable。 |
key_inspect_func | 各キーの詳細を示す関数。 |
value_inspect_func | 各値の詳細を示す関数。 |
key_compare_func | 各キーを比較する関数。 |
user_data | 関数に渡すユーザ用データ。 |

#### Returns

`hash`を並び替えて詳細を示した文字列。

Since: 1.0.9

### gcut_hash_table_string_equal ()

    gboolean
    gcut_hash_table_string_equal (GHashTable *hash1,
                                  GHashTable *hash2);

ふたつのGHashTable、`hash1`と`hash2`を比較します。`hash1`と`hash2`は文字列のキーと文字列の値を持っていなければいけません。

#### Parameters

hash1 | 比較するGHashTable。 |
hash2 | 比較するGHashTable。 |

#### Returns

`hash1`と`hash2`の同じキーの値それぞれすべてが同じ内容の文字列の場合TRUE、そうでない場合はFALSE。

Since: 1.0.5

### gcut_hash_table_string_string_inspect ()

    gchar *
    gcut_hash_table_string_string_inspect (GHashTable *hash);

`hash`の詳細を返します。`hash`は文字列のキーと文字列の値を持っていなければいけません。返された文字列が必要なくなったときは開放してください。

#### Parameters

hash | 詳細を示すGHashTable。 |

#### Returns

`hash`の詳細を示した文字列。

Since: 1.0.5

### gcut_hash_table_string_string_copy ()

    GHashTable *
    gcut_hash_table_string_string_copy (GHashTable *hash);

`hash`を複製します。`hash`は文字列のキーと文字列の値を持っていなければいけません。返された`hash`は`g_hash_table_unref()`で開放しなければいけません。

#### Parameters

hash | 複製するGHashTable。 |

#### Returns

複製されたGHashTable。必要がなくなったら開放しなければいけません。

Since: 1.0.8