codegen [链接] 是一个专注于提高开发效率的代码生成工具集合。目前主要包含了数据库访问层(Repository)代码生成功能,未来可能会扩展更多功能模块如: API ...
和http server 一样,提供了go-zero内置的一些管控中间件 我们可以注意到第3点,基本在不使用 codegen tool 情况下,开发者需要自己执行protoc+protoc-gen-go插件生成对应的.pb.go文件。整个过程比较繁琐。 以上是goctl rpc的背景。本篇文章先从整体生成的角度阐述 goctl 生成过程,之后再分析一些关键的部分,从而让各...
File-based dependency model means fast codegen regardless of source tree size.Consider the following:const Eight = 8 type MyInt int type Data []byte type Struct struct { Which map[string]*MyInt `msg:"which"` Other Data `msg:"other"` Nums [Eight]float64 `msg:"nums"` }As...
使用 kin-openapi 可以确保你的 API 符合OpenAPI 规范,并提高 API 的可靠性和可测试性。 oapi-codegen oapi-codegen 是一个用于生成 Go 客户端和服务器端代码的 OpenAPI 3.0 代码生成器。它基于 OpenAPI 规范,可以将 OpenAPI 文档转换为可用的 Go 代码。使用 oapi-codegen 可以加速 API 的开发过程,同时提高代码...
dir │ ├─codegen │ ├─ddd2.dir │ ├─dwarf │ │ └─dwarf.dir │ ├─fixedbugs │ │ ├─bug083.dir │ │ ├─bug088.dir │ │ ├─bug106.dir │ │ ├─bug133.dir │ │ ├─bug160.dir │ │ ├─bug191.dir │ │ ├─bug222.dir │ │ ├─bug248.dir │ │ ├...
我们可以注意到第3点,基本在不使用 codegen tool 情况下,开发者需要自己执行protoc+protoc-gen-go插件生成对应的.pb.go文件。整个过程比较繁琐。 以上是goctl rpc的背景。本篇文章先从整体生成的角度阐述 goctl 生成过程,之后再分析一些关键的部分,从而让各位开发者可以开发出契合自己业务系统的codegen tool。
前面是我们codegen工具自动生成的埋点。我们还可以对一些重要的函数调用进行手动埋点。 比如我们比较关注从数据库中查询用户的函数。 func getUser(ctx Context, id string) *User { span, ctx := ctx.StartSpanFromContext("read_user_from_db") span.LogFields( ...
我们可以注意到第3点,基本在不使用 codegen tool 情况下,开发者需要自己执行protoc+protoc-gen-go插件生成对应的.pb.go文件。整个过程比较繁琐。 以上是goctl rpc的背景。本篇文章先从整体生成的角度阐述 goctl 生成过程,之后再分析一些关键的部分,从而让各位开发者可以开发出契合自己业务系统的codegen tool。
Watch 1Star0Fork0 go-genie/codegen 代码Issues0Pull Requests0Wiki统计流水线 服务 Gitee Pages JavaDoc PHPDoc 质量分析 Jenkins for Gitee 腾讯云托管 腾讯云 Serverless 悬镜安全 阿里云 SAE Codeblitz 我知道了,不再自动展开 加入Gitee 与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :) ...
Generator{ Name: "mockgen", Doc: "mockgen generates a mock of interface", Run: func(pass *codegen.Pass) error { if flagTypeName == "" { return errors.New("type must be specified") } td := &knife.TempalteData{ Fset: pass.Fset, Files: pass.Files, TypesInfo: pass.TypesInfo, Pkg...