class SimpleEnum::Multiple::Coders::Bitwise
Public Class Methods
dump(array)
click to toggle source
# File lib/simple_enum/multiple/coders/bitwise.rb, line 14 def self.dump(array) array.map do |i| 1 << i end.reduce(&:+) end
load(data)
click to toggle source
# File lib/simple_enum/multiple/coders/bitwise.rb, line 5 def self.load(data) n = data.to_i (0..Math.log2(n).floor).reject do |i| (n & (1 << i)).zero? end rescue FloatDomainError, Math::DomainError [] end