Exemple #1
0
func (vg *VisGroups) FromKeyValues(kv *keyvalues.KeyValues) error {
	if !strings.EqualFold(kv.Name(), "visgroups") {
		return fmt.Errorf("VisGroups: key name was %q, not %q", kv.Name(), "visgroups")
	}

	*vg = (*vg)[:0]

	for subkey := range kv.Each() {
		var group VisGroup
		if err := group.FromKeyValues(subkey); err != nil {
			return err
		}
		*vg = append(*vg, group)
	}

	return nil
}