On Wed, Aug 18, 2010 at 11:28 AM,  <karl.wri...@nokia.com> wrote:
> If you are correct, the comment is certainly incorrect, since it implies that 
> the SAME BytesRef is returned as you pass in.

Yes, that's correct.  BytesRef is mutable.  You pass in an instance,
and the value is set and the same BytesRef is normally returned to
you.  I guess the fact that it's returned at all is to allow a
flexible implementation to possibly return a BytesRef from somewhere
else.

So:
  BytesRef reuse = new BytesRef();
  for (;;) {
    BytesRef val = docTerms.getTerm(id, reuse);
    // use val, but make a copy
  }

I think Mike changed the implementation in the past.  We should check
if a BytesRef return value is really needed.

-Yonik
http://www.lucidimagination.com

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to