option

package
v1.0.4 Latest Latest
Warning

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

Go to latest
Published: Jul 20, 2023 License: MIT Imports: 0 Imported by: 4

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Apply

func Apply[T any](target T, options ...Option[T, any])

Types

type AnyCustom

type AnyCustom = Custom[any]

type AnyFunc

type AnyFunc Func[any, any]

type AnyOption

type AnyOption Option[any, any]

type AnyProvider

type AnyProvider = Provider[any]

type Custom

type Custom[T any] func(target T)

Custom 与 Func 类似,但是没有返回值

func (Custom[T]) Apply

func (f Custom[T]) Apply(target T) any

type CustomFunc

type CustomFunc[T, O any] func(target T)

func (CustomFunc[T, O]) Apply

func (f CustomFunc[T, O]) Apply(target T) (o O)

type CustomOption

type CustomOption[T any] Option[T, any]

type Func

type Func[T, O any] func(target T) O

OptionFunc 使用配置函数配置一个对象的属性,此函数类型实现了 Option 接口

func (Func[T, O]) Apply

func (f Func[T, O]) Apply(target T) O

type Option

type Option[T, O any] interface {
	Apply(target T) O
}

Option 接口用于配置一个对象的属性

type Provider

type Provider[O any] func() O

Provider 通过函数提供一个配置属性用于配置对象

func (Provider[O]) Apply

func (p Provider[O]) Apply(target any) O

type ProviderFunc

type ProviderFunc[T, O any] func() O

func (ProviderFunc[T, O]) Apply

func (p ProviderFunc[T, O]) Apply(target any) O

type ProviderOption

type ProviderOption[O any] Option[any, O]

Jump to

Keyboard shortcuts

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