class RBase::Columns::CharacterColumn
Public Class Methods
new(name, options = {})
click to toggle source
Calls superclass method
RBase::Columns::Column.new
# File lib/rbase/columns.rb, line 78 def initialize(name, options = {}) if options[:size] && options[:decimal] size = options[:decimal]*256 + options[:size] else size = options[:size] || 254 end super name, options.merge(:size => size) if options[:encoding] @unpack_converter = Iconv.new('utf-8', options[:encoding]) @pack_converter = Iconv.new(options[:encoding], 'utf-8') end end
Public Instance Methods
inspect()
click to toggle source
# File lib/rbase/columns.rb, line 105 def inspect "#{name}(string #{size})" end
pack(value)
click to toggle source
# File lib/rbase/columns.rb, line 93 def pack(value) value = value.to_s value = @pack_converter.iconv(value) if @pack_converter [value].pack("A#{size}") end
unpack(data)
click to toggle source
# File lib/rbase/columns.rb, line 99 def unpack(data) value = data.rstrip value = @unpack_converter.iconv(value) if @unpack_converter value end