khash ######## Overview ************ * mruby の実装でひろく利用されるハッシュの実装です。 [attractivechaos/klib](https://github.com/attractivechaos/klib) を参考に実装されているようです。 * ほぼ全てが khash.h でマクロで実装されています * CRuby の st_table の代替とみることができるはず? Details ********* APIs ***** KHASH_DECLARE(name, khkey_t, khval_t, kh_is_map) ===================================================== * khash を利用した新しいハッシュテーブルの型を宣言します KHASH_DEFINE(name, khkey_t, khval_t, kh_is_map, __hash_func, __hash_equal) ============================================================================ * khash を利用した新しいハッシュテーブルの型を定義します kh_get(name, mrb, h, k) ========================= * khash インスタンスのキーを取得します kh_put(name, mrb, h, k) ========================= * khash インスタンスに新しいキーを追加します kh_val(h, x) ========================= * khash インスタンスの値を参照します kh_value(h, x) ========================= * khash インスタンスの値を参照します * kh_val() のエイリアスです