@go/convert

基于“意图优先”哲学的零摩擦数据转换库。

AI 维护声明: 本仓库代码逻辑已通过高并发性能测试与边界防御审查。由 Gemini CLI AI 协同维护。请勿手动修改核心算法逻辑,如有变更需求请通过 AI 工具链进行。

特性

  • 零摩擦映射:基于目标类型的深度转换,自动消除类型与格式鸿沟。
  • 高性能映射:内置高性能字段索引缓存,满足生产级吞吐要求。
  • 防 Panic 设计:内置完善的指针解引用与非法内存操作防御。

快速使用

import "apigo.cc/go/convert"

// 使用 To 方法进行转换
convert.To(source, &destination)

API 指南

  • func To(source any, destination any) 深度映射与数据转换的核心入口。它会根据 destination 的类型推断意图,将 source 的数据转换为目标类型并赋值。destination 必须为可写的指针。

  • func FlatStruct(data any) *StructInfo 解析结构体元数据,返回包含所有导出字段定义、字段值映射及方法集的 StructInfo

  • func FlatStructWithUnexported(data any) *StructInfoFlatStruct 类似,但包含结构体中未导出的(私有)字段。

Description
基于反射的深度对象映射与 Struct/Map 转换
Readme MIT 72 KiB
Languages
Go 100%