Module: EPM::HexData

Extended by:
HexData
Included in:
HexData
Defined in:
lib/epm/utils.rb

Instance Method Summary collapse

Instance Method Details

#construct_data(deconstructed_data) ⇒ Object



113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# File 'lib/epm/utils.rb', line 113

def construct_data deconstructed_data
  data = "0x"
  deconstructed_data.each do |bits|
    if bits[0..1] == "0x"
      piece = bits[2..-1]
      piece = piece.rjust(64,'0')
    else
      piece = bits.unpack('c*').map{|s| s.to_s(16)}.join('')
      piece = piece.ljust(64,'0')
      if piece == "2727000000000000000000000000000000000000000000000000000000000000" || piece == "2222000000000000000000000000000000000000000000000000000000000000"
        piece = "0000000000000000000000000000000000000000000000000000000000000000"
      end
    end
    data << piece
  end
  return data
end

#hex_guard(data) ⇒ Object



106
107
108
109
110
111
# File 'lib/epm/utils.rb', line 106

def hex_guard data
  if data[0..1] != "0x"
    data = "0x" + data
  end
  return data
end