Open main menu
Posts
Gists
Guilds
Users
Decipher
Docs
Open user menu
Log in
Sign up
Create a new gist
Posts
Gists
Guilds
Users
Decipher
Docs
Files
uuid4.src
uuid4.src
// Generate a random 4-bit hex digit
randHexDigit = function
n = floor(rnd * 16)
hex = "0123456789abcdef"
return hex[n]
end function
// Generate a random 4-character hex block
randHexBlock = function(len)
s = ""
for i in range(0, len - 1)
s = s + randHexDigit()
end for
return s
end function
// Entry point
generateUUIDv4 = function
part1 = randHexBlock(8)
part2 = randHexBlock(4)
part3 = "4" + randHexBlock(3) // UUID version 4
part4 = randHexDigit()
part4 = "89ab"[floor(rnd*4)] + randHexBlock(3) // variant bits
part5 = randHexBlock(12)
return part1 + "-" + part2 + "-" + part3 + "-" + part4 + "-" + part5
end function