code: func allExportedOrBuiltin(types []reflect.Type) bool {
  	for _, typ := range types {
  		for typ.Kind() == reflect.Ptr {
  			typ = typ.Elem()
  		}
  		// PkgPath will be non-empty even for an exported type,
  		// so we need to check the type name as well.
  		if !isExported(typ.Name()) && typ.PkgPath() != "" {
  			return false
  		}
  	}
  	return true
  }
docs: // Are all those types exported or built-in?