Skip to content

gbrlsnchs/uuid

Repository files navigation

uuid (Universally Unique IDentifier generator for Go)

Build Status Sourcegraph GoDoc Minimal Version

About

This package is a UUID (or GUID) generator for Go.

Supported versions:

Version Supported
1 ✔️
2 ✔️
3 ✔️
4 ✔️
5 ✔️

Usage

Full documentation here.

Installing

Go 1.10

vgo get -u github.com/gbrlsnchs/uuid

Go 1.11 or after

go get -u github.com/gbrlsnchs/uuid

Importing

import (
	// ...

	"github.com/gbrlsnchs/uuid"
)

Example

Generating UUIDs

guid := uuid.V4(nil)                            // panics if there's an error
log.Printf("guid = %v", guid)                   // prints a 36-byte hex-encoded UUID
log.Printf("guid version = %v", guid.Version()) // prints "Version 4"
log.Printf("guid variant = %v", guid.Variant()) // prints "RFC 4122"

Building UUIDs from strings

guid, err := uuid.Parse("d9ab3f01-482f-425d-8a10-a24b0abfe661")
if err != nil {
	// handle error
}
log.Print(guid.String())           // prints "d9ab3f01-482f-425d-8a10-a24b0abfe661"
log.Print(guid.GUID())             // prints "{d9ab3f01-482f-425d-8a10-a24b0abfe661}"
log.Print(guid.Version().String()) // prints "Version 4"
log.Print(guid.Variant().String()) // prints "RFC 4122"

Contributing

How to help