rbtree3 0.7.1 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ChangeLog +6 -0
- data/rbtree.c +5 -9
- data/test.rb +19 -16
- metadata +3 -6
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8d27d1e7a32ef3f88ddf0e3a4e6feed5d2fc8df02fd39d1d353c51a91d4f6ad2
|
|
4
|
+
data.tar.gz: 548f44e98a342c617f37ce6775a7686915fbd66a4e76e5bca401969910f16311
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 485f44e9c906d98c69f8fa197b7cdf59250d697ad2b7a844fd76d3aeb6128eb868b6b1bf38116136e2ad28cfc2b91d92d07d5b8c308ea988155b1a0f9cf650c4
|
|
7
|
+
data.tar.gz: a757b1c167d12842f8ed3d609d791004fe534c15789ddd3d1b769984885c6400baf86bdd07bf7c4eb0771e209fe113c14eb34e6dc6095b2c31249d6cfa6b7885
|
data/ChangeLog
CHANGED
data/rbtree.c
CHANGED
|
@@ -1487,13 +1487,6 @@ typedef struct {
|
|
|
1487
1487
|
VALUE pp;
|
|
1488
1488
|
} pp_arg_t;
|
|
1489
1489
|
|
|
1490
|
-
static VALUE
|
|
1491
|
-
pp_object_group(VALUE arg_)
|
|
1492
|
-
{
|
|
1493
|
-
pp_arg_t* arg = (pp_arg_t*)arg_;
|
|
1494
|
-
return rb_funcall(arg->pp, id_object_group, 1, arg->rbtree);
|
|
1495
|
-
}
|
|
1496
|
-
|
|
1497
1490
|
static VALUE
|
|
1498
1491
|
pp_block(RB_BLOCK_CALL_FUNC_ARGLIST(nil, arg_))
|
|
1499
1492
|
{
|
|
@@ -1524,8 +1517,11 @@ rbtree_pretty_print(VALUE self, VALUE pp)
|
|
|
1524
1517
|
pp_arg.rbtree = self;
|
|
1525
1518
|
pp_arg.pp = pp;
|
|
1526
1519
|
|
|
1527
|
-
|
|
1528
|
-
|
|
1520
|
+
{
|
|
1521
|
+
VALUE argv = pp_arg.rbtree;
|
|
1522
|
+
return rb_block_call(pp_arg.pp, id_object_group, 1, &argv,
|
|
1523
|
+
pp_block, (VALUE)&pp_arg);
|
|
1524
|
+
}
|
|
1529
1525
|
}
|
|
1530
1526
|
|
|
1531
1527
|
/*
|
data/test.rb
CHANGED
|
@@ -722,27 +722,30 @@ class RBTreeTest < Test::Unit::TestCase
|
|
|
722
722
|
|
|
723
723
|
def test_pp
|
|
724
724
|
assert_equal(%(#<RBTree: {}, default=nil, cmp_proc=nil>\n),
|
|
725
|
-
|
|
726
|
-
|
|
725
|
+
PP.pp(RBTree[], ""))
|
|
726
|
+
|
|
727
|
+
arrow = RUBY_VERSION >= "3.4" ? " => " : "=>"
|
|
728
|
+
|
|
729
|
+
assert_equal(%(#<RBTree: {"a"#{arrow}"A", "b"#{arrow}"B"}, default=nil, cmp_proc=nil>\n),
|
|
727
730
|
PP.pp(RBTree[*%w(a A b B)], ""))
|
|
728
731
|
|
|
729
732
|
rbtree = RBTree[*("a".."z").to_a]
|
|
730
733
|
rbtree.default = "a"
|
|
731
734
|
rbtree.readjust {|a, b| a <=> b }
|
|
732
735
|
expected = <<EOS
|
|
733
|
-
#<RBTree: {"a"
|
|
734
|
-
"c"
|
|
735
|
-
"e"
|
|
736
|
-
"g"
|
|
737
|
-
"i"
|
|
738
|
-
"k"
|
|
739
|
-
"m"
|
|
740
|
-
"o"
|
|
741
|
-
"q"
|
|
742
|
-
"s"
|
|
743
|
-
"u"
|
|
744
|
-
"w"
|
|
745
|
-
"y"
|
|
736
|
+
#<RBTree: {"a"#{arrow}"b",
|
|
737
|
+
"c"#{arrow}"d",
|
|
738
|
+
"e"#{arrow}"f",
|
|
739
|
+
"g"#{arrow}"h",
|
|
740
|
+
"i"#{arrow}"j",
|
|
741
|
+
"k"#{arrow}"l",
|
|
742
|
+
"m"#{arrow}"n",
|
|
743
|
+
"o"#{arrow}"p",
|
|
744
|
+
"q"#{arrow}"r",
|
|
745
|
+
"s"#{arrow}"t",
|
|
746
|
+
"u"#{arrow}"v",
|
|
747
|
+
"w"#{arrow}"x",
|
|
748
|
+
"y"#{arrow}"z"},
|
|
746
749
|
default="a",
|
|
747
750
|
cmp_proc=#{rbtree.cmp_proc}>
|
|
748
751
|
EOS
|
|
@@ -752,7 +755,7 @@ EOS
|
|
|
752
755
|
rbtree[rbtree] = rbtree
|
|
753
756
|
rbtree.default = rbtree
|
|
754
757
|
expected = <<EOS
|
|
755
|
-
#<RBTree: {"#<RBTree: ...>"
|
|
758
|
+
#<RBTree: {"#<RBTree: ...>"#{arrow}"#<RBTree: ...>"},
|
|
756
759
|
default="#<RBTree: ...>",
|
|
757
760
|
cmp_proc=nil>
|
|
758
761
|
EOS
|
metadata
CHANGED
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: rbtree3
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 1.0.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Kyrylo Silin
|
|
8
8
|
- OZAWA Takuma
|
|
9
|
-
autorequire:
|
|
10
9
|
bindir: bin
|
|
11
10
|
cert_chain: []
|
|
12
|
-
date:
|
|
11
|
+
date: 1980-01-02 00:00:00.000000000 Z
|
|
13
12
|
dependencies: []
|
|
14
13
|
description: |-
|
|
15
14
|
A RBTree is a sorted associative collection that is implemented with a Red-Black Tree. It maps keys to values like a Hash, but maintains its elements in ascending key order. The interface is the almost identical to that of Hash.
|
|
@@ -39,7 +38,6 @@ metadata:
|
|
|
39
38
|
homepage_uri: https://github.com/kyrylo/rbtree3
|
|
40
39
|
source_code_uri: https://github.com/kyrylo/rbtree3
|
|
41
40
|
changelog_uri: https://github.com/kyrylo/rbtree3/blob/master/ChangeLog
|
|
42
|
-
post_install_message:
|
|
43
41
|
rdoc_options: []
|
|
44
42
|
require_paths:
|
|
45
43
|
- "./"
|
|
@@ -54,8 +52,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
54
52
|
- !ruby/object:Gem::Version
|
|
55
53
|
version: '0'
|
|
56
54
|
requirements: []
|
|
57
|
-
rubygems_version:
|
|
58
|
-
signing_key:
|
|
55
|
+
rubygems_version: 4.0.3
|
|
59
56
|
specification_version: 4
|
|
60
57
|
summary: A RBTree is a sorted associative collection that is implemented with a Red-Black
|
|
61
58
|
Tree.
|