Use fmt.Stringer or encoding.TextMarshaler if possible