Sha256: f24308fdf3c2e11f2432e74415193a4cd22ca01776df64aa3125126f4da7082a
Contents?: true
Size: 654 Bytes
Versions: 2
Compression:
Stored size: 654 Bytes
Contents
# frozen_string_literal: true class Address BYTES = { address: 22, city: 13, state: 3, country: 2 }.freeze attr_accessor :address, :city, :state, :country def initialize(address:, city:, state:, country:) @address = address @city = city @state = state @country = country end def self.serialize(address) return if address.nil? BYTES.map do |field, bytes| address.send(field)[0...bytes].ljust(bytes, " ") end.join end def self.deserialize(string) return if string.nil? string = string.dup new( BYTES.transform_values { |bytes| string.slice!(0...bytes) } ) end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
serdee-0.2.0 | examples/address.rb |
serdee-0.1.0 | examples/address.rb |