Hi,
I've cut the Walk function of htword in three functions
WalkInit, WalkNext and WalkFinish because it became too hairy to
understand. Besides, this allows effective use of many index cursors
at a given time. But I've not modified any code to use this since
we're feature freeze.
* htword/WordList.cc (SkipUselessSequentialWalking): return OK if skipping,
NOTOK if not skipping.
* htword/WordReference.h: remove useless Clear in WordReference(key, record)
constructor.
* htword/WordList.h,WordList.cc: Split Walk in three separate functions
WalkInit, WalkNext and WalkFinish. Much clearer. Fill the status field
of WordSearchDescription to have more information about the error condition.
Add found field to WordSearchDescription for WalkNext result. Add
cursor_get_flags
and searchKeyIsSamePrefix fields to WordSearchDescription as internal state
information.
* htword/WordList.h,WordList.cc: WalkInit to create and prepare cursor,
WalkNext to move to next match
WalkNextStep to move to next index entry, be it a match or not
WalkFinish to release cursor.
* htword/WordList.h: WordSearchDescription::ModifyKey add to jump
while walking.
* htword/WordList.cc (WalkNext) : it is now legal to step without
collection or callback because search contains the last match (found
field) and it s therefore not useless.
--
Loic Dachary
24 av Secretan
75019 Paris
Tel: 33 1 42 45 09 16
e-mail: [EMAIL PROTECTED]
URL: http://www.senga.org/
------------------------------------
To unsubscribe from the htdig3-dev mailing list, send a message to
[EMAIL PROTECTED]
You will receive a message to confirm this.