..

iota

第一次在 ipfs 代码中看到以为是 itoa, 这什么情况,一脸懵。

// Type of consensus operation
const (
	LogOpPin = iota + 1
	LogOpUnpin
)

iota 不是缩写,是希腊字母表的第九个字母。 配合 const 使用,这里表示 0,后面再出现 const,则依次 +1.

基本使用

const (
        C0 = iota
        C1 = iota
        C2 = iota
)
fmt.Println(C0, C1, C2) // "0 1 2"
const (
        C1 = iota + 1
        _
        C3
        C4
)
fmt.Println(C1, C3, C4) // "1 3 4"

ipfs 中的代码,就是表示 LogOpPin 从 1 开始。

其他更详细的用法,参考网上内容12.