Method: WOoo::Util::HexUtil.to_i

Defined in:
lib/wo_oo/util/hex.rb

.to_i(values, size = nil) ⇒ Object




74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# File 'lib/wo_oo/util/hex.rb', line 74

def self.to_i(values, size = nil)
  if !size.nil? && values.kind_of?(String)
    case size
    when HEX8
      formatted_values = values.scan(/\w\w/) if values.size > 2
    when HEX16
      formatted_values = values.scan(/\w\w\w\w/) if values.size > 4
    when HEX32
      formatted_values = values.scan(/\w\w\w\w\w\w\w\w/) if values.size > 8
    end
  else
    formatted_values = values
  end
          
  case formatted_values
  when String
    formatted_values.downcase.to_i(16)
  when Array
    formatted_values.map { |value| to_i(value) }
  end
end