types

package
v1.10.2 Latest Latest
Warning

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

Go to latest
Published: Jun 1, 2024 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CastFloat added in v1.5.0

func CastFloat[T, V constraints.Float](v V) T

func CastInteger added in v1.5.0

func CastInteger[T, V constraints.Integer](v V) T

func CastNumber added in v1.5.0

func CastNumber[T, V constraintsi.Number](v V) T

func CastSigned added in v1.5.0

func CastSigned[T, V constraints.Signed](v V) T

func CastUnsigned added in v1.5.0

func CastUnsigned[T, V constraints.Unsigned](v V) T

func Match added in v1.5.1

func Match[T any](yes bool, a, b T) T

func ResultVal added in v1.9.0

func ResultVal[T any](v T, err error) T

func Zero added in v1.5.0

func Zero[T any]() T

func Zero2 added in v1.5.0

func Zero2[T any]() T

Types

type Basic

type Basic struct {
}

type Bool

type Bool int8

func (Bool) IsFalse

func (b Bool) IsFalse() bool

func (Bool) IsNone

func (b Bool) IsNone() bool

func (Bool) IsTrue

func (b Bool) IsTrue() bool

func (Bool) MarshalBinary

func (b Bool) MarshalBinary() ([]byte, error)

MarshalBinary

func (Bool) MarshalJSON

func (b Bool) MarshalJSON() ([]byte, error)

func (Bool) MarshalText

func (b Bool) MarshalText() ([]byte, error)

MarshalText

func (Bool) String

func (b Bool) String() string

String implements Stringer.

func (*Bool) UnmarshalBinary

func (b *Bool) UnmarshalBinary(data []byte) error

UnmarshalBinary implements encoding.BinaryUnmarshaler.

func (*Bool) UnmarshalJSON

func (b *Bool) UnmarshalJSON(data []byte) error

UnmarshalJSON implements json.Unmarshaler.

func (*Bool) UnmarshalText

func (b *Bool) UnmarshalText(data []byte) error

UnmarshalText implements encoding.TextUnmarshaler.

type Delete added in v1.6.3

type Delete[K constraints.Key, V any] interface {
	Delete(key K)
}

type Dict

type Dict[K comparable, V any] struct {
	Key   K
	Value V
}

type DurationGenerator added in v1.6.3

type DurationGenerator interface {
	Duration() time.Duration
}

type Enum

type Enum[T constraints.Unsigned | ~string] struct {
	Value T
}

type Func

type Func func()

type FuncWithErr

type FuncWithErr func() error

type Get added in v1.6.3

type Get[K constraints.Key, V any] interface {
	Get(key K) V
}

type GrpcServiceMethod

type GrpcServiceMethod[REQ, RES any] func(context.Context, REQ) (RES, error)

type ID

type ID[T constraintsi.ID] struct {
	Id T `json:"id"`
}

func (ID[KEY]) Key added in v1.6.3

func (s ID[KEY]) Key() KEY

type IdGenerator added in v1.6.3

type IdGenerator[T constraints.ID] interface {
	Id() T
}

type Init added in v1.6.3

type Init interface {
	Init()
}

type Int

type Int int

func (Int) Key

func (s Int) Key() int

type Key added in v1.6.3

type Key[T constraints.Key] interface {
	Key() T
}

type Option

type Option[T any] struct {
	// contains filtered or unexported fields
}

返回option 返回时会有两次复制value,后续使用还有可能更多次,自行选择用不用

func MapOption

func MapOption[T any, R any](opt Option[T], fn func(T) R) Option[R]

func Nil

func Nil[T any]() Option[T]

func None

func None[T any]() Option[T]

func Some

func Some[T any](v T) Option[T]

func (*Option[T]) Get

func (opt *Option[T]) Get() (T, bool)

func (*Option[T]) IfNone

func (opt *Option[T]) IfNone(action func())

func (*Option[T]) IfSome

func (opt *Option[T]) IfSome(action func(value T))

func (*Option[T]) IsNone

func (opt *Option[T]) IsNone() bool

func (*Option[T]) IsSome

func (opt *Option[T]) IsSome() bool

func (*Option[T]) MarshalJSON

func (opt *Option[T]) MarshalJSON() ([]byte, error)

func (*Option[T]) Next

func (opt *Option[T]) Next() *Option[T]

func (*Option[T]) UnmarshalJSON

func (opt *Option[T]) UnmarshalJSON(data []byte) error

func (*Option[T]) Unwrap

func (opt *Option[T]) Unwrap() T

func (*Option[T]) UnwrapOr

func (opt *Option[T]) UnwrapOr(def T) T

func (*Option[T]) UnwrapOrElse

func (opt *Option[T]) UnwrapOrElse(fn func() T) T

func (*Option[T]) Val

func (opt *Option[T]) Val() (T, bool)

type OptionP added in v1.8.2

type OptionP[T any] struct {
	// contains filtered or unexported fields
}

func MapOptionP added in v1.8.2

func MapOptionP[T any, R any](opt *OptionP[T], fn func(T) R) *OptionP[R]

func NilP added in v1.8.2

func NilP[T any]() *OptionP[T]

func NoneP added in v1.8.2

func NoneP[T any]() *OptionP[T]

func SomeP added in v1.8.2

func SomeP[T any](v T) *OptionP[T]

func (*OptionP[T]) Get added in v1.8.2

func (opt *OptionP[T]) Get() (T, bool)

func (*OptionP[T]) IfNone added in v1.8.2

func (opt *OptionP[T]) IfNone(action func())

func (*OptionP[T]) IfSome added in v1.8.2

func (opt *OptionP[T]) IfSome(action func(value T))

func (*OptionP[T]) IsNone added in v1.8.2

func (opt *OptionP[T]) IsNone() bool

func (*OptionP[T]) IsSome added in v1.8.2

func (opt *OptionP[T]) IsSome() bool

func (*OptionP[T]) MarshalJSON added in v1.8.2

func (opt *OptionP[T]) MarshalJSON() ([]byte, error)

func (*OptionP[T]) Next added in v1.8.2

func (opt *OptionP[T]) Next() *OptionP[T]

func (*OptionP[T]) UnmarshalJSON added in v1.8.2

func (opt *OptionP[T]) UnmarshalJSON(data []byte) error

func (*OptionP[T]) Unwrap added in v1.8.2

func (opt *OptionP[T]) Unwrap() T

func (*OptionP[T]) UnwrapOr added in v1.8.2

func (opt *OptionP[T]) UnwrapOr(def T) T

func (*OptionP[T]) UnwrapOrElse added in v1.8.2

func (opt *OptionP[T]) UnwrapOrElse(fn func() T) T

func (*OptionP[T]) Val added in v1.8.2

func (opt *OptionP[T]) Val() (T, bool)

type Pair

type Pair[T1 any, T2 any] struct {
	First  T1
	Second T2
}

func PairEmpty added in v1.6.10

func PairEmpty[T1 any, T2 any]() *Pair[T1, T2]

func PairOf

func PairOf[T1 any, T2 any](f T1, s T2) *Pair[T1, T2]

func (*Pair[T1, T2]) Val

func (a *Pair[T1, T2]) Val() (T1, T2)

type Ref

type Ref[T any] struct {
	// contains filtered or unexported fields
}

func RefOf

func RefOf[T any](v *T) Ref[T]

func (Ref[T]) Get

func (a Ref[T]) Get() T

func (Ref[T]) IsNil

func (a Ref[T]) IsNil() bool

func (Ref[T]) IsNotNil

func (a Ref[T]) IsNotNil() bool

func (Ref[T]) Set

func (a Ref[T]) Set(v T) T

func (Ref[T]) Val

func (a Ref[T]) Val() (v T, ok bool)

type Result

type Result[T any] struct {
	// contains filtered or unexported fields
}

func Err

func Err[T any](a error) Result[T]

func Ok

func Ok[T any](a T) Result[T]

func (Result[T]) IfErr

func (a Result[T]) IfErr(action func(err error))

func (Result[T]) IfOk

func (a Result[T]) IfOk(action func(value T))

func (Result[T]) IsErr

func (a Result[T]) IsErr() bool

func (Result[T]) IsErrAnd

func (a Result[T]) IsErrAnd(f func(error) bool) bool

func (Result[T]) IsOk

func (a Result[T]) IsOk() bool

func (Result[T]) IsOkAnd

func (a Result[T]) IsOkAnd(f func(T) bool) bool

func (*Result[T]) MarshalJSON

func (a *Result[T]) MarshalJSON() ([]byte, error)

func (Result[T]) Or

func (a Result[T]) Or(value T) T

func (Result[T]) OrDefault

func (a Result[T]) OrDefault() (v T)

func (Result[T]) OrPanic

func (a Result[T]) OrPanic() T

func (*Result[T]) UnmarshalJSON

func (a *Result[T]) UnmarshalJSON(data []byte) error

func (Result[T]) Val

func (a Result[T]) Val() (value T, err error)

type Set added in v1.6.3

type Set[K constraints.Key, V any] interface {
	Set(key K, v V)
}

type SetWithExpire added in v1.6.3

type SetWithExpire[K constraints.Key, V any] interface {
	SetWithExpire(key K, v V, expire time.Duration)
}

type Store

type Store[K constraints.Key, V any] interface {
	Set[K, V]
	Get[K, V]
	Delete[K, V]
}

type StoreWithExpire

type StoreWithExpire[K constraints.Key, V any] interface {
	SetWithExpire[K, V]
	Get[K, V]
	Delete[K, V]
}

type String

type String string

func (String) Key

func (s String) Key() string

type Task added in v1.6.3

type Task func(context.Context)

type TaskWithErr added in v1.6.3

type TaskWithErr func(context.Context) error

type Tuple

type Tuple[T1 any, T2 any, T3 any] struct {
	First  T1
	Second T2
	Third  T3
}

func TupleOf

func TupleOf[T1 any, T2 any, T3 any](f T1, s T2, t T3) *Tuple[T1, T2, T3]

func (*Tuple[T1, T2, T3]) Val

func (a *Tuple[T1, T2, T3]) Val() (T1, T2, T3)

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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