Из http://golang.org/src/pkg/database/sql/driver/types.go :
type ValueConverter interface {
// ConvertValue converts a value to a driver Value.
ConvertValue(v interface{}) (Value, error)
}
var Bool boolType
type boolType struct{}
var _ ValueConverter = boolType{} // line 58
func (boolType) String() string { return "Bool" }
func (boolType) ConvertValue(src interface{}) (Value, error) {....}
Я знал, что ValueConverter - это имя интерфейса. Строка 58, кажется, объявляет, что boolType реализует интерфейс ValueConverter, но необходимо ли это? Я удалил строку 58, и код работает хорошо.
_
может использоваться для строгого предоставления ключей в структуре. Смотрите это для справки