项目地址:
bill-cang/sloth (github.com)
sloth 工具:
1、支持为结构体属性自动生成Get\Set方法,必须参数
a、-out:需要自动生成生成代码的结构体(多个时,号分开),结构体必须存在。
b、-fun:set|get组合(,号分割),也可以是单独使用,即-fun=set只生成Set方法,-fun=get只生成Get方法。
c、-mod: 自定义模板支持,指定模板文件目录。模板文件命名必须为:sloth_getter.tmp|sloth_setter.tmp。
2、支持自定义模板: 模板变量使用{ {.var}}标识,可用组合变量:
Receiver:结构体简写(首字母)
Struct:结构体
Field:结构体public字段
Type:结构体public字段类型
Column:gorm映射字段
示例:
func ({
{.Receiver}} *{
{.Struct}}) Get{
{.Field}}() {
{.Type}} {
return {
{.Receiver}}.{
{.Field}}
}
func ({
{.Receiver}} *{
{.Struct}}) Set{
{.Field}}(val {
{.Type}})