p2p/enr: simplify Set

This commit is contained in:
Felix Lange 2017-12-05 13:58:10 +01:00
parent 96431d83c9
commit 260989e77d

View file

@ -89,29 +89,21 @@ func (r *Record) Set(k Key) error {
if err != nil {
return err
}
var inserted bool
for i, p := range r.pairs {
if p.k == k.ENRKey() {
// replace value of pair
r.pairs[i].v = blob
inserted = true
break
return nil
} else if p.k > k.ENRKey() {
// insert pair before i-th elem
el := pair{k.ENRKey(), blob}
r.pairs = append(r.pairs, pair{})
copy(r.pairs[i+1:], r.pairs[i:])
r.pairs[i] = el
inserted = true
break
return nil
}
}
if !inserted {
r.pairs = append(r.pairs, pair{k.ENRKey(), blob})
}
return nil
}