Shiro Kawai
shiro****@lava*****
2010年 2月 6日 (土) 19:18:26 JST
取り込みました。ありがとうございます。 --shiro From: Masatake YAMATO <yamat****@redha*****> Subject: [Gauche-devel-jp] tree-map-pop-min!してtree-map-num-entriesの結果が変わない Date: Sat, 06 Feb 2010 13:40:47 +0900 (JST) > こんにちは > > (let1 tree (make-tree-map = <) > (tree-map-put! tree 0 0) > (tree-map-pop-min! tree) > (tree-map-num-entries tree)) > => 1 > > となります。これは0になるべきだと思うのですが、いかがでしょう。 > 修正案とテストケースを書いてみました。もしかしたらdelete_nodeの中で > num_entriesを更新した方が良いのかもしれませんが判断できませんでした。 > もし問題無ければ取り込んで下さい。 > よろしくお願いします。 > > 大和 > > > Index: src/treemap.c > =================================================================== > --- src/treemap.c (revision 7033) > +++ src/treemap.c (working copy) > @@ -160,7 +160,10 @@ > Node *root = ROOT(tc); > if (root) { > Node *n = (op == SCM_TREE_CORE_MIN)? leftmost(root) : rightmost(root); > - if (pop) n = delete_node(tc, n); > + if (pop) { > + n = delete_node(tc, n); > + tc->num_entries--; > + } > return n; > } else { > return NULL; > Index: test/treemap.scm > =================================================================== > --- test/treemap.scm (revision 7033) > +++ test/treemap.scm (working copy) > @@ -420,5 +420,12 @@ > (tester "xx" #f #f #f #f) > ) > > +(let1 tree (make-tree-map = <) > + (test* "tree-map-min" 0 > + (begin > + (tree-map-put! tree 0 0) > + (tree-map-pop-min! tree) > + (tree-map-num-entries tree)))) > + > (test-end) > > > _______________________________________________ > Gauche-devel-jp mailing list > Gauch****@lists***** > http://lists.sourceforge.jp/mailman/listinfo/gauche-devel-jp