summaryrefslogtreecommitdiff
path: root/model/uuid.go
blob: f072d9215d9be0f1ecbcc07a47846edf73e13359 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package model

import (
    sqldriver "database/sql/driver"
    "github.com/google/uuid"
)

type UUID struct {
    payload     uuid.UUID
}

func NewUUID() UUID {
    id, _ := uuid.NewRandom()
    return UUID { payload: id }
}

func (self UUID) Value() (sqldriver.Value, error) {
    return self.payload.MarshalBinary()
}

func (self *UUID) Scan(value any) error {
    return self.payload.Scan(value)
}

func (self UUID) String() string {
    return self.payload.String()
}