aboutsummaryrefslogtreecommitdiff
path: root/diffbytes/unsafe.go
diff options
context:
space:
mode:
authorGravatar Runxi Yu2026-01-30 10:02:45 +0100
committerGravatar Runxi Yu2026-01-30 10:02:45 +0100
commit55cd9c544a66d11b6e8fa3c654fa57d27c7c4e14 (patch)
treec4f99b2c33d8d0e90380e4e77756e61b3db1361a /diffbytes/unsafe.go
parentdiffbytes: Add comments for BytesDiffChunkKind enums (diff)
signatureNo signature
diffbytes: Move to its own package v0.1.5
Diffstat (limited to 'diffbytes/unsafe.go')
-rw-r--r--diffbytes/unsafe.go17
1 files changed, 17 insertions, 0 deletions
diff --git a/diffbytes/unsafe.go b/diffbytes/unsafe.go
new file mode 100644
index 00000000..79c215a2
--- /dev/null
+++ b/diffbytes/unsafe.go
@@ -0,0 +1,17 @@
+package diffbytes
+
+import "unsafe"
+
+// // stringToBytes converts a string to a byte slice without copying the string.
+// // Memory is borrowed from the string.
+// // The resulting byte slice must not be modified in any form.
+// func stringToBytes(s string) (bytes []byte) {
+// return unsafe.Slice(unsafe.StringData(s), len(s)) //#nosec G103
+// }
+
+// bytesToString converts a byte slice to a string without copying the bytes.
+// Memory is borrowed from the byte slice.
+// The source byte slice must not be modified.
+func bytesToString(b []byte) string {
+ return unsafe.String(unsafe.SliceData(b), len(b)) //#nosec G103
+}