code: func (b *builtinInet6NtoaSig) evalString(row chunk.Row) (string, bool, error) {
  	val, isNull, err := b.args[0].EvalString(b.ctx, row)
  	if err != nil || isNull {
  		return "", true, err
  	}
  	ip := net.IP([]byte(val)).String()
  	if len(val) == net.IPv6len && !strings.Contains(ip, ":") {
  		ip = fmt.Sprintf("::ffff:%s", ip)
  	}
  
  	if net.ParseIP(ip) == nil {
  		return "", true, nil
  	}
  
  	return ip, false, nil
  }
docs: // evalString evals a builtinInet6NtoaSig.
  // See https://dev.mysql.com/doc/refman/5.7/en/miscellaneous-functions.html#function_inet6-ntoa