github.com/ydb-platform/ydb-go-sdk/v3@v3.89.2/internal/params/variant.go (about) 1 package params 2 3 import "github.com/ydb-platform/ydb-go-sdk/v3/internal/value" 4 5 type ( 6 variant struct { 7 parent Builder 8 name string 9 value value.Value 10 } 11 12 variantBuilder struct { 13 variant *variant 14 } 15 ) 16 17 func (vb *variantBuilder) EndVariant() Builder { 18 vb.variant.parent.params = append(vb.variant.parent.params, &Parameter{ 19 parent: vb.variant.parent, 20 name: vb.variant.name, 21 value: vb.variant.value, 22 }) 23 24 return vb.variant.parent 25 } 26 27 func (v *variant) BeginTuple() *variantTuple { 28 return &variantTuple{ 29 parent: v, 30 } 31 } 32 33 func (v *variant) BeginStruct() *variantStruct { 34 return &variantStruct{ 35 parent: v, 36 } 37 }