没有合适的资源?快使用搜索试试~ 我知道了~
govariant:【推荐使用https
共8个文件
go:6个
mkd:1个
license:1个
需积分: 10 1 下载量 146 浏览量
2021-07-02
02:26:33
上传
评论
收藏 12KB ZIP 举报
温馨提示
Go(lang) sum 类型的生成器 Go 没有 sum 类型。 我们模拟它们——最常用的是将空interface{}与类型开关结合使用。 这很好用。 仍然......我想尝试另一种方式来做这件事——并为它编写一个代码生成器,这很流行。 偶然地,它是简单代码生成器的理想情况,因为它需要在几种类型上编写重复的方法。 基本思想是用一个接口编码一个 sum 类型,每个变量对应一个方法。 这些方法以变体类型命名,并返回它的值和布尔值。 返回值对应于类型断言。 对于每个变体,我们还添加了一个将其转换为 sum 类型的方法。 然而,这种方法有缺点和局限性。 我们不能在内置类型、从其他包或接口导入的类型上定义方法,因此如果我们希望所有方法都自动生成,它们就不能是变体。 并且由于实际类型是一个接口,该语言认为 nil 是一个允许的值。 如何使用它 首先,它期望由go generate运行。 如果
资源推荐
资源详情
资源评论
收起资源包目录
govariant-master.zip (8个子文件)
govariant-master
README.mkd 2KB
template.go 1KB
LICENSE 16KB
main.go 2KB
example
Shape_variant.go 1KB
types.go 226B
generate
generate_test.go 5KB
generate.go 442B
共 8 条
- 1
资源评论
得陇而望蜀者
- 粉丝: 32
- 资源: 4586
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功