aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/github.com/google/uuid/version1.go
diff options
context:
space:
mode:
authorLibravatar Rutger Broekhoff2024-01-02 18:56:31 +0100
committerLibravatar Rutger Broekhoff2024-01-02 18:56:31 +0100
commit8db41da676ac8368ef7c2549d56239a5ff5eedde (patch)
tree09c427fd66de2ec1ebffc8342f5fdbb84b0701b5 /vendor/github.com/google/uuid/version1.go
parentd4f75fb6db22e57577867445a022227e70958931 (diff)
downloadgitolfs3-8db41da676ac8368ef7c2549d56239a5ff5eedde.tar.gz
gitolfs3-8db41da676ac8368ef7c2549d56239a5ff5eedde.zip
Delete vendor directory
Diffstat (limited to 'vendor/github.com/google/uuid/version1.go')
-rw-r--r--vendor/github.com/google/uuid/version1.go44
1 files changed, 0 insertions, 44 deletions
diff --git a/vendor/github.com/google/uuid/version1.go b/vendor/github.com/google/uuid/version1.go
deleted file mode 100644
index 4631096..0000000
--- a/vendor/github.com/google/uuid/version1.go
+++ /dev/null
@@ -1,44 +0,0 @@
1// Copyright 2016 Google Inc. All rights reserved.
2// Use of this source code is governed by a BSD-style
3// license that can be found in the LICENSE file.
4
5package uuid
6
7import (
8 "encoding/binary"
9)
10
11// NewUUID returns a Version 1 UUID based on the current NodeID and clock
12// sequence, and the current time. If the NodeID has not been set by SetNodeID
13// or SetNodeInterface then it will be set automatically. If the NodeID cannot
14// be set NewUUID returns nil. If clock sequence has not been set by
15// SetClockSequence then it will be set automatically. If GetTime fails to
16// return the current NewUUID returns nil and an error.
17//
18// In most cases, New should be used.
19func NewUUID() (UUID, error) {
20 var uuid UUID
21 now, seq, err := GetTime()
22 if err != nil {
23 return uuid, err
24 }
25
26 timeLow := uint32(now & 0xffffffff)
27 timeMid := uint16((now >> 32) & 0xffff)
28 timeHi := uint16((now >> 48) & 0x0fff)
29 timeHi |= 0x1000 // Version 1
30
31 binary.BigEndian.PutUint32(uuid[0:], timeLow)
32 binary.BigEndian.PutUint16(uuid[4:], timeMid)
33 binary.BigEndian.PutUint16(uuid[6:], timeHi)
34 binary.BigEndian.PutUint16(uuid[8:], seq)
35
36 nodeMu.Lock()
37 if nodeID == zeroID {
38 setNodeInterface("")
39 }
40 copy(uuid[10:], nodeID[:])
41 nodeMu.Unlock()
42
43 return uuid, nil
44}