cast_anything

package module
v0.0.0-...-86028f8 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 2, 2022 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var DefaultBoolOptions = Options{
	Float:       ToDefaultZeroValue,
	EmptyString: ToDefaultZeroValue,
	Nil:         NilToZeroValue,
}

DefaultBoolOptions 默认类型转换默认处理规则

View Source
var DefaultUintOptions = Options{
	Float:       ToForceCast,
	EmptyString: ToDefaultZeroValue,
	Nil:         NilToZeroValue,
}

Functions

func IsNil

func IsNil(x any) bool

IsNil 判断参数是否为nil,当只有type但是value为nil的时候会认为是nil

func IsNotNil

func IsNotNil(v any) bool

IsNotNil 判断参数是否不为nil

func ToBool

func ToBool(value any, options ...Options) bool

func ToBoolE

func ToBoolE(value any, options ...Options) (bool, error)

func ToBoolOrDefault

func ToBoolOrDefault(value any, defaultValue bool, options ...Options) bool

func ToBoolSlice

func ToBoolSlice(value any, options ...Options) []bool

func ToBoolSliceE

func ToBoolSliceE(value any, options ...Options) ([]bool, error)

func ToBoolSliceOrDefault

func ToBoolSliceOrDefault(value any, defaultValue []bool, options ...Options) []bool

func ToFloat32

func ToFloat32(value any, options ...Options) float32

func ToFloat32E

func ToFloat32E(value any, options ...Options) (float32, error)

func ToFloat32OrDefault

func ToFloat32OrDefault(value any, defaultValue float32, options ...Options) float32

func ToFloat32Slice

func ToFloat32Slice(value any, options ...Options) []float32

func ToFloat32SliceE

func ToFloat32SliceE(value any, options ...Options) ([]float32, error)

func ToFloat32SliceOrDefault

func ToFloat32SliceOrDefault(value []any, defaultValue []float32, options ...Options) []float32

func ToFloat64

func ToFloat64(value any, options ...Options) float64

func ToFloat64E

func ToFloat64E(value any, options ...Options) (float64, error)

func ToFloat64OrDefault

func ToFloat64OrDefault(value any, defaultValue float64, options ...Options) float64

func ToFloat64Slice

func ToFloat64Slice(value any, options ...Options) []float64

func ToFloat64SliceE

func ToFloat64SliceE(value any, options ...Options) ([]float64, error)

func ToFloat64SliceOrDefault

func ToFloat64SliceOrDefault(value []any, defaultValue []float64, options ...Options) []float64

func ToInt

func ToInt(value any) int

func ToInt16

func ToInt16(value any, options ...Options) int16

func ToInt16E

func ToInt16E(value any, options ...Options) (int16, error)

func ToInt16OrDefault

func ToInt16OrDefault(value any, defaultValue int16, options ...Options) int16

func ToInt16Slice

func ToInt16Slice(value any, options ...Options) []int16

func ToInt16SliceE

func ToInt16SliceE(value any, options ...Options) ([]int16, error)

func ToInt16SliceOrDefault

func ToInt16SliceOrDefault(value []any, defaultValue []int16, options ...Options) []int16

func ToInt32

func ToInt32(value any, options ...Options) int32

func ToInt32E

func ToInt32E(value any, options ...Options) (int32, error)

func ToInt32OrDefault

func ToInt32OrDefault(value any, defaultValue int32, options ...Options) int32

func ToInt32Slice

func ToInt32Slice(value any, options ...Options) []int32

func ToInt32SliceE

func ToInt32SliceE(value any, options ...Options) ([]int32, error)

func ToInt32SliceOrDefault

func ToInt32SliceOrDefault(value []any, defaultValue []int32, options ...Options) []int32

func ToInt64

func ToInt64(value any, options ...Options) int64

func ToInt64E

func ToInt64E(value any, options ...Options) (int64, error)

func ToInt64OrDefault

func ToInt64OrDefault(value any, defaultValue int64, options ...Options) int64

func ToInt64Slice

func ToInt64Slice(value any, options ...Options) []int64

func ToInt64SliceE

func ToInt64SliceE(value any, options ...Options) ([]int64, error)

func ToInt64SliceOrDefault

func ToInt64SliceOrDefault(value []any, defaultValue []int64, options ...Options) []int64

func ToInt8

func ToInt8(value any, options ...Options) int8

func ToInt8E

func ToInt8E(value any, options ...Options) (int8, error)

func ToInt8OrDefault

func ToInt8OrDefault(value any, defaultValue int8, options ...Options) int8

func ToInt8Slice

func ToInt8Slice(value any, options ...Options) []int8

func ToInt8SliceE

func ToInt8SliceE(value any, options ...Options) ([]int8, error)

func ToInt8SliceOrDefault

func ToInt8SliceOrDefault(value []any, defaultValue []int8, options ...Options) []int8

func ToIntE

func ToIntE(value any, options ...Options) (int, error)

func ToIntOrDefault

func ToIntOrDefault(value any, defaultValue int) int

func ToIntSlice

func ToIntSlice(value any, options ...Options) []int

func ToIntSliceE

func ToIntSliceE(value any, options ...Options) ([]int, error)

func ToIntSliceOrDefault

func ToIntSliceOrDefault(value []any, defaultValue []int, options ...Options) []int

func ToUint

func ToUint(value any, options ...Options) uint

func ToUint16

func ToUint16(value any, options ...Options) uint16

func ToUint16E

func ToUint16E(value any, options ...Options) (uint16, error)

func ToUint16OrDefault

func ToUint16OrDefault(value any, defaultValue uint16, options ...Options) uint16

func ToUint16Slice

func ToUint16Slice(value any, options ...Options) []uint16

func ToUint16SliceE

func ToUint16SliceE(value any, options ...Options) ([]uint16, error)

func ToUint16SliceOrDefault

func ToUint16SliceOrDefault(value any, defaultValue []uint16, options ...Options) []uint16

func ToUint32

func ToUint32(value any, options ...Options) uint32

func ToUint32E

func ToUint32E(value any, options ...Options) (uint32, error)

func ToUint32OrDefault

func ToUint32OrDefault(value any, defaultValue uint32, options ...Options) uint32

func ToUint32Slice

func ToUint32Slice(value any, options ...Options) []uint32

func ToUint32SliceE

func ToUint32SliceE(value any, options ...Options) ([]uint32, error)

func ToUint32SliceOrDefault

func ToUint32SliceOrDefault(value any, defaultValue []uint32, options ...Options) []uint32

func ToUint64

func ToUint64(value any, options ...Options) uint64

func ToUint64E

func ToUint64E(value any, options ...Options) (uint64, error)

func ToUint64OrDefault

func ToUint64OrDefault(value any, defaultValue uint64, options ...Options) uint64

func ToUint64Slice

func ToUint64Slice(value any, options ...Options) []uint64

func ToUint64SliceE

func ToUint64SliceE(value any, options ...Options) ([]uint64, error)

func ToUint64SliceOrDefault

func ToUint64SliceOrDefault(value []any, defaultValue []uint64, options ...Options) []uint64

func ToUint8

func ToUint8(value any, options ...Options) uint8

func ToUint8E

func ToUint8E(value any, options ...Options) (uint8, error)

func ToUint8OrDefault

func ToUint8OrDefault(value any, defaultValue uint8, options ...Options) uint8

func ToUint8Slice

func ToUint8Slice(value any, options ...Options) []uint8

func ToUint8SliceE

func ToUint8SliceE(value any, options ...Options) ([]uint8, error)

func ToUint8SliceOrDefault

func ToUint8SliceOrDefault(value any, defaultValue []uint8, options ...Options) []uint8

func ToUintE

func ToUintE(value any, options ...Options) (uint, error)

func ToUintOrDefault

func ToUintOrDefault(value any, defaultValue uint, options ...Options) uint

func ToUintSlice

func ToUintSlice(value any, options ...Options) []uint

func ToUintSliceE

func ToUintSliceE(value any, options ...Options) ([]uint, error)

func ToUintSliceOrDefault

func ToUintSliceOrDefault(value any, defaultValue []uint, options ...Options) []uint

func ToUnsignedE

func ToUnsignedE[T gtypes.Unsigned](value any, options ...Options) (T, error)

ToUnsignedE 把目标转换为无符号类型

Types

type NegativeSignedToUnsignedCastRule

type NegativeSignedToUnsignedCastRule int
const (

	// NegativeSignedToUnsignedRuleToZero 转换为零值
	NegativeSignedToUnsignedRuleToZero NegativeSignedToUnsignedCastRule = iota

	// NegativeSignedToUnsignedRuleAbs 转换为绝对值
	NegativeSignedToUnsignedRuleAbs

	// NegativeSignedToUnsignedRuleError 转换为错误
	NegativeSignedToUnsignedRuleError
)

type NilCastRule

type NilCastRule = int

NilCastRule nil值应该如何转换

const (

	// NilToZeroValue 转换为对应类型的零值
	NilToZeroValue NilCastRule = iota

	// NilToError 直接返回错误
	NilToError
)

type Options

type Options struct {

	// 如果被转换的类型是float类型时如何处理
	Float ValueCastRule

	// 如果被转换的类型是空字符串时如何处理
	EmptyString ValueCastRule

	// 如果被转换的类型是nil时如何处理
	Nil NilCastRule

	// 有符号类型的负数向无符号类型转换时应该如何处理
	NegativeSignedToUnsigned NegativeSignedToUnsignedCastRule
}

type ValueCastRule

type ValueCastRule int
const (

	// ToDefaultZeroValue 转换为对应类型默认的零值
	ToDefaultZeroValue ValueCastRule = iota

	// ToForceCast 做一个强制类型转换
	ToForceCast

	// ToError 报错,认为是处理不了
	ToError
)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL