Method: WinCommon::Structs::GUID#from_str

Defined in:
lib/win_common/structs_ffi.rb

#from_str(guid) ⇒ Object



32
33
34
35
36
37
38
39
40
# File 'lib/win_common/structs_ffi.rb', line 32

def from_str(guid)
    data = [guid.gsub(/[{\-}]/, '')].pack('H*').unpack('L>S>2C8')
    self[:data1] = data[0]
    self[:data2] = data[1]
    self[:data3] = data[2]
    3.upto(data.count - 1) do |i|
        self[:data4][i-3] = data[i]
    end
end