最新发布的 Go 1.18 Beta 1 包含一个值得关注的 commit,它由 Go 开发团队技术 leader Russ Cox 提交,commit 内容是使用 gofmt 命令将 Go 源代码中的所有 'interface{}' 替换为 'any'。
- gofmt -w -r 'interface{} -> any' src
此 commit 页面展示了 445 个被修改的文件。
rsc 写道,执行完命令后,会恢复 bootstrap cmd 目录和某些测试数据,并根据需要调整测试。但不会恢复 std 中被引导的变化,因为其中一些变化会出现在 API 文档中,而开发团队希望能够一致地使用 'any'。
据了解,这是类型别名 (type alias) 语法,主要是为泛型而引入,最新发布 Go 1.8 Beta1 已带来了泛型支持。
本文地址:https://www.oschina.net/news/173782/go-replaces-interface-with-any