Class: RBase::Columns::DateColumn

Inherits:
Column
  • Object
show all
Defined in:
lib/rbase/columns.rb

Instance Attribute Summary

Attributes inherited from Column

#decimal, #name, #offset, #size

Instance Method Summary collapse

Methods inherited from Column

#attach_to, column_for, column_type, #type, type

Constructor Details

#initialize(name, options = {}) ⇒ DateColumn

Returns a new instance of DateColumn.



185
186
187
# File 'lib/rbase/columns.rb', line 185

def initialize(name, options = {})
  super name, options.merge(:size => 8)
end

Instance Method Details

#inspectObject



198
199
200
# File 'lib/rbase/columns.rb', line 198

def inspect
  "#{name}(date)"
end

#pack(value) ⇒ Object



189
190
191
# File 'lib/rbase/columns.rb', line 189

def pack(value)
  value ? value.strftime('%Y%m%d'): ' '*8
end

#unpack(data) ⇒ Object



193
194
195
196
# File 'lib/rbase/columns.rb', line 193

def unpack(data)
  return nil if data.rstrip == ''
  Date.new(*data.unpack("a4a2a2").map { |s| s.to_i})
end