On Wed, Mar 17, 2010 at 12:59 PM, Ron Reynolds <tequila...@ymail.com> wrote:

> seems odd that you can delete all via clearXXX() or add via addAllXXX() and
> addXXX() but not remove a single element by index...
>

Our experience is that if we provide a way to remove a single element by
index, people will mistakenly think that the method is more efficient than
clearing the whole list and rebuilding it, when in fact both operations are
O(n).  The result of this is that people write loops like:

  for (all elements) {
    if (shouldFilter(element)) {
      remove(element);
    }
  }

This loop is O(n^2).


> well, here's a work-around - if you put a utility class into the same
> package as the ProtobufMessages generated class it can access the protected
> Builder.internalGetResult() - since package-level access is higher than
> protected-level access...
>

Yikes, is that true?  I don't think it is, but if so we need to fix it.  I'm
pretty sure "protected" is neither higher nor lower than package-level -- it
means something entirely different.

-- 
You received this message because you are subscribed to the Google Groups 
"Protocol Buffers" group.
To post to this group, send email to proto...@googlegroups.com.
To unsubscribe from this group, send email to 
protobuf+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/protobuf?hl=en.

Reply via email to