reflectutil

package module
v0.0.0-...-25cb3e1 Latest Latest
Warning

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

Go to latest
Published: Feb 18, 2025 License: GPL-3.0 Imports: 2 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func CreateNewInstance

func CreateNewInstance(t reflect.Type, isReturnVal bool) interface{}

根据类型创建新的实体(指针或值) isReturnVal 是否以值返回,调用方为匿名类调用时必须返回值,true:返回'值';false:返回'指针' 注意:入参数 t不是匿名函数时不能使用 isReturnVal=true

func DoMethod

func DoMethod(object interface{}, name string, paramList ...interface{}) []reflect.Value

*

  • 利用反射执行函数
  • @param object 被修改属性的对象
  • @param name 属性名
  • @return

func GetBaseEntity

func GetBaseEntity(entity interface{}) interface{}

取实体对应父类实体(对应数据库)

func GetFieldValue

func GetFieldValue(object interface{}, name string) interface{}

*

  • 利用反射取属性值
  • @param object 被修改属性的对象
  • @param name 属性名
  • @return

func GetMethod

func GetMethod(object interface{}, name string) reflect.Value

*

  • 取函数
  • object 待检查对象
  • name 函数名

func GetTagInfo

func GetTagInfo(entry interface{}) map[string]reflect.StructTag

取结构体各属性的tag信息

func GetTagInfoByName

func GetTagInfoByName(entry interface{}, name string) reflect.StructTag

取结构体指定属性的tag信息

func GetTypeName

func GetTypeName(object interface{}) string

*

  • 利用反射取实际类型名称
  • @param object 被修改属性的对象
  • @return

func HasField

func HasField(object interface{}, name string, fieldPrefix ...string) bool

*

  • 判断字段是否存在
  • object 待检查对象
  • name 成员名
  • fieldPrefix 字段前缀(可不传)

func HasMethod

func HasMethod(object interface{}, name string) bool

*

  • 判断函数是否存在
  • object 待检查对象
  • name 函数名

func HoldByEntity

func HoldByEntity(entity interface{}, data map[string]interface{}, fieldPrefix ...string) map[string]interface{}

*

  • 按实体保留map中的数据
  • object 待检查对象
  • data 数据
  • fieldPrefix 字段前缀(可不传)

func HoldByEntityToArray

func HoldByEntityToArray(entity interface{}, data []string, fieldPrefix ...string) []string

*

  • 按实体保留切片中的数据
  • object 待检查对象
  • data 数据
  • fieldPrefix 字段前缀(可不传)

func MakArray

func MakArray(entity interface{}) interface{}

*

  • 动态创建数组
  • entity 结构参照

func MakMap

func MakMap(keyEntity interface{}, valEntity interface{}) interface{}

*

  • 动态创建数组
  • keyEntity 键结构参照
  • valEntity 值结构参照

func RemoveByEntity

func RemoveByEntity(entity interface{}, data map[string]interface{}, fieldPrefix ...string) map[string]interface{}

*

  • 按实体剔除map中的数据
  • object 待检查对象
  • data 数据
  • fieldPrefix 字段前缀(可不传)

func RemoveByEntityToArray

func RemoveByEntityToArray(entity interface{}, data []string, fieldPrefix ...string) []string

*

  • 按实体剔除切片中的数据
  • object 待检查对象
  • data 数据
  • fieldPrefix 字段前缀(可不传)

func SetFieldInt

func SetFieldInt(object interface{}, name string, val int)

*

  • 利用反射设置属性值
  • @param object 被修改属性的对象
  • @param name 属性名
  • @param val 值 字符串
  • @return

func SetFieldString

func SetFieldString(object interface{}, name string, val string)

*

  • 利用反射设置属性值
  • @param object 被修改属性的对象
  • @param name 属性名
  • @param val 值 字符串
  • @return

func SetFieldValue

func SetFieldValue(object interface{}, name string, val interface{})

*

  • 利用反射设置属性值
  • @param object 被修改属性的对象
  • @param name 属性名
  • @param val 值 不确定类型
  • @return

func ToEntity

func ToEntity(data []interface{}, entity interface{}) (interface{}, bool)

*

  • 数组转指定结构数组
  • data 待转换数据,结构: []map[string]interface{}
  • entity 结构参照,结构: []entity

func ToEntityMap

func ToEntityMap(data map[string]interface{}, entity interface{}, tt reflect.Type) (interface{}, bool)

*

  • 通用Map转指定结构Map
  • data 待转换Map,结构:
  • entity 结构参照

Types

This section is empty.

Jump to

Keyboard shortcuts

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