Go · Intermediário · Inglês · Técnico
Stringer
Interface do pacote fmt com o método String() string. Qualquer tipo que a implemente controla como seus valores são impressos por Println e pelo verbo %v.
Onde usar
Muito usada para dar nome legível a enums feitos com iota e a tipos de domínio em logs. Basta definir String no tipo para o fmt passar a usá-la.
Em código
type Cor int
const (
Verde Cor = iota
Azul
)
func (c Cor) String() string {
return [...]string{"verde", "azul"}[c]
}Exemplos
Implement Stringer so the enum prints a readable name.
Implemente Stringer para o enum imprimir um nome legível.
The log shows 2 because the type has no String method.
O log mostra 2 porque o tipo não tem método String.
Cuidado
Dentro de String, formatar o próprio receiver com %v chama String de novo e estoura a pilha.
Sinônimos
método String