Repository: lucy Updated Branches: refs/heads/master 6cc97ecec -> b30f5c2be
Add utility converting Go string slice to Vector. Project: http://git-wip-us.apache.org/repos/asf/lucy/repo Commit: http://git-wip-us.apache.org/repos/asf/lucy/commit/3d858387 Tree: http://git-wip-us.apache.org/repos/asf/lucy/tree/3d858387 Diff: http://git-wip-us.apache.org/repos/asf/lucy/diff/3d858387 Branch: refs/heads/master Commit: 3d858387e037993cc21f4fe4b04f6ce34d666491 Parents: f5916a4 Author: Marvin Humphrey <[email protected]> Authored: Mon Dec 21 17:29:35 2015 -0800 Committer: Marvin Humphrey <[email protected]> Committed: Tue Dec 22 11:54:44 2015 -0800 ---------------------------------------------------------------------- go/lucy/lucy.go | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucy/blob/3d858387/go/lucy/lucy.go ---------------------------------------------------------------------- diff --git a/go/lucy/lucy.go b/go/lucy/lucy.go index 03307bb..4420e3d 100644 --- a/go/lucy/lucy.go +++ b/go/lucy/lucy.go @@ -626,3 +626,19 @@ func vecToStringSlice(v *C.cfish_Vector) []string { } return slice } + +// Turn a slice of Go strings into a Vector of Clownfish Strings. +func stringSliceToVec(strings []string) *C.cfish_Vector { + if strings == nil { + return nil + } + size := len(strings) + vec := C.cfish_Vec_new(C.size_t(size)) + for i := 0; i < size; i++ { + str := C.CString(strings[i]) + length := C.size_t(len(strings[i])) + cfStr := C.cfish_Str_new_steal_utf8(str, length) + C.CFISH_Vec_Push(vec, (*C.cfish_Obj)(unsafe.Pointer(cfStr))) + } + return vec +}
