Uuid.parse constructor
Uuid.parse(
- String string
Implementation
factory Uuid.parse(String string) {
final data = Uint8List(16);
var byteOffset = 0;
for (var substringStart = 0; substringStart < string.length;) {
if (string[substringStart] == "-") {
substringStart += 1;
continue;
}
if (byteOffset >= 16 || substringStart + 2 > string.length) {
throw _UuidParseFailure(string);
}
final byte = int.tryParse(
string.substring(substringStart, substringStart + 2),
radix: 16,
);
if (byte == null) throw _UuidParseFailure(string);
data[byteOffset] = byte;
byteOffset += 1;
substringStart += 2;
}
if (byteOffset == 2 || byteOffset == 4 || byteOffset == 16) {
return Uuid(data.buffer.asUint8List(0, byteOffset));
} else {
throw _UuidParseFailure(string);
}
}