From 239c4e2cb32c7af71ab14668ccc2f52ea59653f9 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Tue, 22 Apr 2025 13:25:40 +0000 Subject: [PATCH] chore(utils): add internal resp to param utility --- internal/paramutil/field.go | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/internal/paramutil/field.go b/internal/paramutil/field.go index 7bc23f5..48f4e60 100644 --- a/internal/paramutil/field.go +++ b/internal/paramutil/field.go @@ -1,6 +1,9 @@ package paramutil -import "github.com/openai/openai-go/packages/param" +import ( + "github.com/openai/openai-go/packages/param" + "github.com/openai/openai-go/packages/resp" +) func AddrIfPresent[T comparable](v param.Opt[T]) *T { if v.IsPresent() { @@ -8,3 +11,12 @@ func AddrIfPresent[T comparable](v param.Opt[T]) *T { } return nil } + +func ToOpt[T comparable](v T, meta resp.Field) param.Opt[T] { + if meta.IsPresent() { + return param.NewOpt(v) + } else if meta.IsExplicitNull() { + return param.NullOpt[T]() + } + return param.Opt[T]{} +}