Documentation
      ¶
    
    
  
    
  
    Overview ¶
package field provides utilities to set structure fields. It was inspired by the kubernetes package https://pkg.go.dev/k8s.io/utils/pointer.
Index ¶
- func Equal[T comparable](a, b *T) bool
 - func EqualValue[T comparable](field *T, value T) bool
 - func Optional[T any](ptr *T, defaultValue T) T
 - func OptionalAny(ptr *any, defaultValue any) any
 - func OptionalBool(ptr *bool, defaultValue bool) bool
 - func OptionalDuration(ptr *time.Duration, defaultValue time.Duration) time.Duration
 - func OptionalFloat32(ptr *float32, defaultValue float32) float32
 - func OptionalFloat64(ptr *float64, defaultValue float64) float64
 - func OptionalInt(ptr *int, defaultValue int) int
 - func OptionalInt32(ptr *int32, defaultValue int32) int32
 - func OptionalInt64(ptr *int64, defaultValue int64) int64
 - func OptionalString(ptr *string, defaultValue string) string
 - func OptionalTime(ptr *time.Time, defaultValue time.Time) time.Time
 - func OptionalUint(ptr *uint, defaultValue uint) uint
 - func OptionalUint32(ptr *uint32, defaultValue uint32) uint32
 - func OptionalUint64(ptr *uint64, defaultValue uint64) uint64
 - func ToOptional[T any](v T) *T
 - func ToOptionalAny(a any) *any
 - func ToOptionalBool(b bool) *bool
 - func ToOptionalDuration(f time.Duration) *time.Duration
 - func ToOptionalFloat32(f float32) *float32
 - func ToOptionalFloat64(f float64) *float64
 - func ToOptionalInt(f int) *int
 - func ToOptionalInt32(f int32) *int32
 - func ToOptionalInt64(f int64) *int64
 - func ToOptionalString(s string) *string
 - func ToOptionalTime(f time.Time) *time.Time
 - func ToOptionalUint(f uint) *uint
 - func ToOptionalUint32(f uint32) *uint32
 - func ToOptionalUint64(f uint64) *uint64
 
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Equal ¶ added in v1.77.0
func Equal[T comparable](a, b *T) bool
Equal returns true if both arguments are nil or both arguments dereference to the same value.
func EqualValue ¶ added in v1.77.0
func EqualValue[T comparable](field *T, value T) bool
EqualValue returns true if optional field dereferences to the value.
func Optional ¶ added in v1.77.0
func Optional[T any](ptr *T, defaultValue T) T
Optional returns the value of an optional field or else returns defaultValue.
func OptionalAny ¶
OptionalAny returns the value of an optional field or else returns defaultValue.
func OptionalBool ¶
OptionalBool returns the value of an optional field or else returns defaultValue.
func OptionalDuration ¶
OptionalDuration returns the value of an optional field or else returns defaultValue.
func OptionalFloat32 ¶
OptionalFloat32 returns the value of an optional field or else returns defaultValue.
func OptionalFloat64 ¶
OptionalFloat64 returns the value of an optional field or else returns defaultValue.
func OptionalInt ¶
OptionalInt returns the value of an optional field or else returns defaultValue.
func OptionalInt32 ¶
OptionalInt32 returns the value of an optional field or else returns defaultValue.
func OptionalInt64 ¶
OptionalInt64 returns the value of an optional field or else returns defaultValue.
func OptionalString ¶
OptionalString returns the value of an optional field or else returns defaultValue.
func OptionalTime ¶ added in v1.30.0
OptionalTime returns the value of an optional field or else returns defaultValue.
func OptionalUint ¶
OptionalUint returns the value of an optional field or else returns defaultValue.
func OptionalUint32 ¶
OptionalUint32 returns the value of an optional field or else returns defaultValue.
func OptionalUint64 ¶
OptionalUint64 returns the value of an optional field or else returns defaultValue.
func ToOptional ¶ added in v1.77.0
func ToOptional[T any](v T) *T
ToOptional returns a pointer to the given field value.
func ToOptionalDuration ¶
ToOptionalDuration returns a pointer to a Duration.
func ToOptionalFloat32 ¶
ToOptionalFloat32 returns a pointer to a float32.
func ToOptionalFloat64 ¶
ToOptionalFloat64 returns a pointer to a float64.
func ToOptionalInt32 ¶
ToOptionalInt32 returns a pointer to an int32.
func ToOptionalInt64 ¶
ToOptionalInt64 returns a pointer to an int64.
func ToOptionalString ¶
ToOptionalString returns a pointer to a string.
func ToOptionalTime ¶ added in v1.30.0
ToOptionalTime returns a pointer to a Time.
func ToOptionalUint32 ¶
ToOptionalUint32 returns a pointer to an uint32.
func ToOptionalUint64 ¶
ToOptionalUint64 returns a pointer to an uint64.
Types ¶
This section is empty.