class FidoMetadata::Coercer::BitField
Public Class Methods
new(mapping, single_value: false)
click to toggle source
# File lib/fido_metadata/coercer/bit_field.rb, line 6 def initialize(mapping, single_value: false) @mapping = mapping @single_value = single_value end
Public Instance Methods
coerce(value)
click to toggle source
# File lib/fido_metadata/coercer/bit_field.rb, line 11 def coerce(value) results = @mapping.reject { |flag, _constant| flag & value == 0 }.values if @single_value results.first else results end end