From 55cd9c544a66d11b6e8fa3c654fa57d27c7c4e14 Mon Sep 17 00:00:00 2001 From: Runxi Yu Date: Fri, 30 Jan 2026 10:02:45 +0100 Subject: diffbytes: Move to its own package --- diffbytes/unsafe.go | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 diffbytes/unsafe.go (limited to 'diffbytes/unsafe.go') 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 +} -- cgit v1.3.1-10-gc9f91