On Aug 28, 2009, at 1:03 PM, Yonik Seeley wrote:

On Fri, Aug 28, 2009 at 10:26 AM, Grant Ingersoll<gsing...@apache.org> wrote:
 If I say
String.substring().length(), I wouldn't expect the length returned to be the same as the parent (unless of course the substring requested is the identity
one), so I'm not sure why DocSlice.subset does.

.size() should reflect the new size.
.matches() always reflects the total number of matches that this
DocList is a window into.

 Likewise for the maxScore,
etc.

Is there a reason why, if I know I have a DocSlice, I can't cast the docList to it and make some of these lower level changes to the member variables? It would be a lot more efficient than having to copy over all the docs,
etc. to a new DocSlice.

Just make a new DocSlice - one shouldn't be modifying these since they
can be cached.

Sure, but that requires creating a new int [] doc array, copying elements, etc. all over again and I may not need to do that (for instance, if I am shortening the list based on some business rules)

My solution so far is a light weight wrapper around DocList that seems to be working just fine.

Reply via email to