Я пытаюсь преобразовать отраженный UUID обратно в фактический объект UUID снова, но не могу найти способ, когда я печатаю отраженное значение, оно выглядит правильно, но при попытке преобразовать я не могу найти способ.
package main
import (
"fmt"
"reflect"
uuid "github.com/satori/go.uuid"
)
func main() {
value := uuid.Must(uuid.NewV4())
reflectedValue := reflect.ValueOf(value)
fmt.Println(reflectedValue)
result := reflectedValue.String()
fmt.Println(result)
}
вывод:
$ go run main.go
0cca93f8-1763-4816-a2a0-09e7aeeb674c
<uuid.UUID Value>
Как напрямую преобразовать отраженное значение в uuid.UUID или [] байт / строку, чтобы я мог сделать из этого объект uuid.UUID.Поскольку fmt.Println удается вывести правильное значение, должно быть возможно выполнить преобразование, но я не могу понять, как.
Кажется, что объект uuid.UUID имеет структуру данных 16 uint8значения.