summaryrefslogtreecommitdiff
path: root/teleirc/matterbridge/vendor/github.com/valyala/fasttemplate/unsafe.go
diff options
context:
space:
mode:
Diffstat (limited to 'teleirc/matterbridge/vendor/github.com/valyala/fasttemplate/unsafe.go')
-rw-r--r--teleirc/matterbridge/vendor/github.com/valyala/fasttemplate/unsafe.go21
1 files changed, 21 insertions, 0 deletions
diff --git a/teleirc/matterbridge/vendor/github.com/valyala/fasttemplate/unsafe.go b/teleirc/matterbridge/vendor/github.com/valyala/fasttemplate/unsafe.go
new file mode 100644
index 0000000..1020ca3
--- /dev/null
+++ b/teleirc/matterbridge/vendor/github.com/valyala/fasttemplate/unsafe.go
@@ -0,0 +1,21 @@
+// +build !appengine
+
+package fasttemplate
+
+import (
+ "reflect"
+ "unsafe"
+)
+
+func unsafeBytes2String(b []byte) string {
+ return *(*string)(unsafe.Pointer(&b))
+}
+
+func unsafeString2Bytes(s string) (b []byte) {
+ sh := (*reflect.StringHeader)(unsafe.Pointer(&s))
+ bh := (*reflect.SliceHeader)(unsafe.Pointer(&b))
+ bh.Data = sh.Data
+ bh.Cap = sh.Len
+ bh.Len = sh.Len
+ return b
+}