docs(cgo): add agent-oriented package usage examples

Co-Authored-By: Virgil <virgil@lethean.io>
This commit is contained in:
Virgil 2026-04-03 19:29:17 +00:00
parent e3a90fd781
commit d3e2f7da1e

23
doc.go Normal file
View file

@ -0,0 +1,23 @@
// Package cgo is a focused harness for safe Go-to-C interop helpers.
//
// Common usage:
//
// buffer := NewBuffer(32)
// n := buffer.CopyFrom([]byte("agent"))
// defer buffer.Free()
//
// err := Call(unsafe.Pointer(C.some_function), buffer.Ptr(), SizeT(n))
// if err != nil {
// // handle mapped C errno
// }
//
// scope := NewScope()
// defer scope.Close()
// cString := scope.CString("hello")
// buffer := scope.Buffer(16)
//
// if err := Call(unsafe.Pointer(C.another_function), cString, buffer.Ptr()); err != nil {
// // scope.Close() will release C string + buffer
// }
package cgo