func()

in gazelle/pythonconfig/types.go [75:97]


func (sml *StringMapList) Set(s string) error {
	list := strings.Split(s, sml.listSeparator)
	for _, v := range list {
		trimmed := strings.TrimSpace(v)
		if trimmed == "" {
			continue
		}
		mapList := strings.SplitN(trimmed, sml.mapSeparator, 2)
		if len(mapList) < 2 {
			return fmt.Errorf(
				"%q is not a valid map using %q as a separator",
				trimmed, sml.mapSeparator,
			)
		}
		key := mapList[0]
		if _, exists := sml.mapping[key]; exists {
			return fmt.Errorf("key %q already set", key)
		}
		val := mapList[1]
		sml.mapping[key] = val
	}
	return nil
}