Method: Cantor::AbsoluteSet#map
- Defined in:
- lib/cantor/absolute_set.rb
#map ⇒ AbsoluteSet
99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
# File 'lib/cantor/absolute_set.rb', line 99 def map mask = 0 @universe.each do |value, n| unless @mask[n].zero? value = yield(value) if m = @universe.fetch(value, false) mask |= (1 << m) else raise "universe does not contain element #{value.inspect}" end end end copy(:mask => mask) end |