1. 04 Aug, 2020 2 commits
  2. 03 Aug, 2020 2 commits
  3. 31 Jul, 2020 1 commit
  4. 30 Jul, 2020 1 commit
  5. 26 Jul, 2020 2 commits
  6. 25 Jul, 2020 2 commits
    • Yukihiro "Matz" Matsumoto's avatar
      Merge pull request #5049 from shuujii/use-type-tag-for-hash-code-in-ht_hash_func · 425b5f32
      Yukihiro "Matz" Matsumoto authored
      Use type tag for hash code in `ht_hash_func()`
      425b5f32
    • KOBAYASHI Shuji's avatar
      Use type tag for hash code in `ht_hash_func()` · 0c88c717
      KOBAYASHI Shuji authored
      The function corresponding to `ht_hash_func()` was as follows in the days of
      khash implementation (before d78acc7a).
      
        ```c
        mrb_hash_ht_hash_func(mrb_state *mrb, mrb_value key)
        {
          enum mrb_vtype t = mrb_type(key);
          ...
          switch (t) {
          ...
          default:
            hv = mrb_funcall(mrb, key, "hash", 0);
            h = (khint_t)t ^ (khint_t)mrb_fixnum(hv);
            break;
          }
          ...
        }
        ```
      
      When switched to the segmented list implementation (d78acc7a), this function
      was changed as follows.
      
        ```c
        sg_hash_func(mrb_state *mrb, seglist *t, mrb_value key)
        {
          enum mrb_vtype tt = mrb_type(key);
          ...
          switch (tt) {
          ...
          default:
            hv = mrb_funcall(mrb, key, "hash", 0);
            h = (size_t)t ^ (size_t)mrb_fixnum(hv);
            break;
          }
          ...
        }
        ```
      
      Since the argument `t` was added, the variable for type tag was changed from
      `t` to `tt`, but the variable used in the expression of `h` remained `t`.
      
      Probably this is an omission of change, so fixed it.
      0c88c717
  7. 24 Jul, 2020 6 commits
  8. 22 Jul, 2020 11 commits
  9. 21 Jul, 2020 3 commits
  10. 20 Jul, 2020 1 commit
  11. 19 Jul, 2020 9 commits