Class: Immutable::Map::RedFork
- Inherits:
-
Fork
- Object
- Immutable::Map
- Fork
- Immutable::Map::RedFork
- Defined in:
- lib/immutable/map.rb
Overview
:nodoc:
Constant Summary
Constants inherited from Immutable::Map
Instance Attribute Summary
Attributes inherited from Fork
Instance Method Summary collapse
Methods inherited from Fork
#[], #del, #empty?, #foldl_with_key, #foldr_with_key, #initialize
Methods inherited from Immutable::Map
#[], [], #delete, #each, empty, #foldl, #foldr, #insert, #inspect, #map, #map_with_key, singleton
Methods included from Foldable
#foldl, #length, #product, #sum
Constructor Details
This class inherits a constructor from Immutable::Map::Fork
Instance Method Details
#black? ⇒ Boolean
334 335 336 |
# File 'lib/immutable/map.rb', line 334 def black? false end |
#ins(key, value) ⇒ Object
346 347 348 349 350 351 352 353 354 355 |
# File 'lib/immutable/map.rb', line 346 def ins(key, value) x = key <=> @key if x < 0 RedFork[@left.ins(key, value), @key, @value, @right] elsif x > 0 RedFork[@left, @key, @value, @right.ins(key, value)] else RedFork[@left, key, value, @right] end end |
#make_black ⇒ Object
342 343 344 |
# File 'lib/immutable/map.rb', line 342 def make_black BlackFork[left, key, value, right] end |
#make_red ⇒ Object
338 339 340 |
# File 'lib/immutable/map.rb', line 338 def make_red self end |
#red? ⇒ Boolean
330 331 332 |
# File 'lib/immutable/map.rb', line 330 def red? true end |