type objset … // insert attempts to insert an object obj into objset s. // If s already contains an alternative object alt with // the same name, insert leaves s unchanged and returns alt. // Otherwise it inserts obj and returns nil. func (s *objset) insert(obj Object) Object { … }