generate method

  1. @override
Uuid generate()
override

Creates a new UUID that is completely random.

Implementation

@override
Uuid generate() {
  for (var i = 0; i < 4; i++) {
    final u32 = _random.nextInt(0xffffffff);
    _bufferUint8
      ..[i * 4] = u32 >> 24
      ..[i * 4 + 1] = u32 >> 16
      ..[i * 4 + 2] = u32 >> 8
      ..[i * 4 + 3] = u32;
  }

  // Version 4.
  _bufferUint8[5] = (_bufferUint8[5] & 0x0f) | 0x40;

  // Variant 1.
  _bufferUint8[11] = (_bufferUint8[11] & 0x3f) | 0x80;

  return Uuid.fromBytes(_bufferUint32);
}