On Wed, 2006-05-17 at 04:14 +0900, Francis Cianfrocca wrote:
> The point of being able to turn off the result set is to save memory
> when the set is very large. The performance improvement is potentially
> very large.

Yeah, I understand that. What I suggested was that the decision to
return the full result set can depend only on wether a block is passed
or not, like

results = ldap.search(...) # no block, return full result set

or

ldap.search(...) { |entry|  ... } # a block was given, return nil
                                  # (like File#open, for example)

That is, only return the result set if no block is given. I suggested
this because when you process each entry on the block you usually don't
use the result set returned anyway. Unless there's some situation where
you need to do

results = ldap.search(...) { |entry| ... }

then I see why the flag is useful, but I couldn't think of a situation
where I'd need that.


> Thanks again for the testing you did.

Thank you for the great lib and the quick support!

Andre