summaryrefslogtreecommitdiff
path: root/vendor/github.com/uptrace/bun/internal/unsafe.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/github.com/uptrace/bun/internal/unsafe.go')
-rw-r--r--vendor/github.com/uptrace/bun/internal/unsafe.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/vendor/github.com/uptrace/bun/internal/unsafe.go b/vendor/github.com/uptrace/bun/internal/unsafe.go
new file mode 100644
index 000000000..4bc79701f
--- /dev/null
+++ b/vendor/github.com/uptrace/bun/internal/unsafe.go
@@ -0,0 +1,20 @@
+// +build !appengine
+
+package internal
+
+import "unsafe"
+
+// String converts byte slice to string.
+func String(b []byte) string {
+ return *(*string)(unsafe.Pointer(&b))
+}
+
+// Bytes converts string to byte slice.
+func Bytes(s string) []byte {
+ return *(*[]byte)(unsafe.Pointer(
+ &struct {
+ string
+ Cap int
+ }{s, len(s)},
+ ))
+}