A properly designed, efficient UUID library for Dart.
Supports v1, v4, v5 and v6 generation
Immutable Uuid type with equality, comparison and accessors for properties defined by RFC 4122
The internal representation of the UUID is a byte array, not a String
Support for all syntactically correct UUIDs (regardless of RFC4122 semantics)
Usage
A simple usage example:
import'package:sane_uuid/uuid.dart';
// randomly generated using secure random number generatorfinalUuid randomUuid = Uuid.v4();
// Prints properly formatted UUID, e.g.: a8796ef4-8767-4cd0-b432-c5e93ba120dfprint(randomUuid);
// parse any common UUID stringfinal parsedUuid = Uuid.fromString(
'a8796ef4-8767-4cd0-b432-c5e93ba120df',
);
// hyphens and capitalization don't matterfinal parsedUuidDifferentFormatting = Uuid.fromString(
'A8796EF487674CD0B432C5E93BA120DF',
);
// UUID objects with the same data are actually equalassert(parsedUuid == parsedUuidDifferentFormatting);
Please file feature requests and bugs at the issue tracker.
License
This project is released under the MIT License. That includes every file in this repository,
unless explicitly stated otherwise at the top of a file.
A copy of the license text can be found in the LICENSE file.