class DataTypes::Float32

Public Class Methods

new(options = {}) click to toggle source
Calls superclass method DataTypes::BaseType::new
# File lib/active_model_serializers_binary/data_types.rb, line 205
def initialize(options = {})
  super options.merge :bit_length => 32, :sign => nil, :default_value => 0.0
end

Public Instance Methods

dump(value=nil) click to toggle source
# File lib/active_model_serializers_binary/data_types.rb, line 209
def dump(value=nil)
  before_dump( value )
  if @endianess == :big
    @raw_value = @value.pack('g*').unpack('C*')
  else
    @raw_value = @value.pack('e*').unpack('C*')
  end
end
load(raw_value) click to toggle source
# File lib/active_model_serializers_binary/data_types.rb, line 218
def load(raw_value)
  if @endianess == :big
    self.value = check_raw_value(raw_value).pack('C*').unpack('g*') if !value.nil?
  else
    self.value = check_raw_value(raw_value).pack('C*').unpack('e*') if !value.nil?
  end
  after_load
end