| Go's ` iota ` identifier is used in ` const ` declarations to simplify definitions of incrementing numbers. Because it can be used in expressions, it provides a generality beyond that of simple enumerations. |
| The values of iota is reset to 0 whenever the reserved word ` const ` appears in the source (i.e. each const block) and increments by one after each [ConstSpec](https://golang.org/ref/spec#ConstSpec) e.g. each Line. This can be combined with the constant shorthand (leaving out everything after the constant name) to very concisely define related constants. |
| Iota: http://golang.org/doc/go_spec.html#Iota |
| Constant declarations: http://golang.org/doc/go_spec.html#Constant_declarations |
| The official spec has two great examples: |
| http://golang.org/doc/go_spec.html#Iota |
| Here's one from Effective Go: |
| _ = iota // ignore first value by assigning to blank identifier |
| KB ByteSize = 1 << (10 * iota) |