core

package
v1.3.24 Latest Latest
Warning

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

Go to latest
Published: Aug 30, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var BaseType map[string]DataType

BaseType 存储了请求参数解析过程中对结构体内部字段类型的自定义支持,添加到 Type 中的类型在 控制器参数校验时候会自动跳过 key : 通过对类型的反射取到的类型名称 value : 定义了对应该类型的解析逻辑

Functions

func Assignment

func Assignment(arguments reflect.Value, value interface{}) error

Assignment 递归对单个反射结构体进行赋值 Assignment 带注入的参数,入参必须是值类型,指针类型赋值需要传递指针所指向的value,带注入的参数为map类型时候 arguments发射的map对应的接收类型必须是 map[string]interface{} value对应注入的 k/v

func AssignmentMap

func AssignmentMap(arguments reflect.Value, value map[string]interface{}) error

AssignmentMap 专门针对 map数据类型 进行解析

func AuroraQueuePointerType

func AuroraQueuePointerType(value reflect.Value, data any) error

func AuroraQueueType

func AuroraQueueType(value reflect.Value, data any) error

func AuroraStackPointerType

func AuroraStackPointerType(value reflect.Value, data any) error

func AuroraStackType

func AuroraStackType[T any](value reflect.Value, data any)

func BaseTypeKey

func BaseTypeKey(v reflect.Value) string

BaseTypeKey 通过 BaseTypeKey 得到的变量默认全包名对泛型参数进行特殊处理的,不会加上类型中的 [xxx]定义部分信息

func Injection

func Injection(field, value reflect.Value) error

Injection 反射初始化 把容器中对应的 value 赋值给 目标结构体的 field 字段

func StarAssignment

func StarAssignment(value reflect.Value, data interface{}) error

StarAssignment data 传入 value 对应的 map[string]interface{}

func TimePointerType

func TimePointerType(value reflect.Value, data any) error

TimePointerType 完成对时间指针 *time.Time 的赋值操作

func TimeType

func TimeType(value reflect.Value, data any) error

TimeType 完成对时间 time.Time 的赋值操作

func TypeKey

func TypeKey(t any) string

TypeKey 通过反射得到一个类型的类型字符串, 适用于普通类型

func ValueType added in v1.3.8

func ValueType(key string, dataType DataType)

ValueType 对外提供添加 自定义数据类型解析支持 key 需要通过 TypeKey 函数获取一个全局唯一的标识符 dataType 需要提供 对应数据解析逻辑细节可以参考 AuroraQueuePointerType 或者 AuroraStackPointerType

Types

type DataType

type DataType func(value reflect.Value, data any) error

DataType 函数定义反射赋值逻辑 value : 是在一个结构体内的字段反射,通过该函数可以对这个字段进行初始化赋值 data : 是value对应的具体参数值,可能是字符串,切片,map

Jump to

Keyboard shortcuts

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