Eric Blake <ebl...@redhat.com> writes: > On 11/23/2015 07:27 AM, Paolo Bonzini wrote: >> >> >> On 20/11/2015 18:32, Eric Blake wrote: >>>> static void qlist_size_iter(QObject *obj, void *opaque) >>>> { >>>> size_t *count = opaque; >>>> (*count)++; >>>> } >>> >>> Yuck - we don't track size independently? Seems like it might make a >>> worthwhile addition, >> >> Would you change your mind, if I told you that qlist_size is unused? :) > > Deleting dead code is a perfectly acceptable alternative to advertising > what should normally be an O(1) operation with an O(n) implementation. :)
Well, "length of list" certainly isn't O(1) everywhere. The Common Lisp Hyperspec, for instance, gives an O(n) example implementation[*]. Generally just fine as long as callers are aware. [*] http://www.lispworks.com/documentation/HyperSpec/Body/f_list_l.htm#list-length