isfd | isam file descriptor |
kdsc | description of index to be selected or NULL to retain the current index |
len | partial length of key, or 0 for full |
data | data record pointer if needed for search mode, or NULL |
mode | see search modes |
ISTRUE, or ISFALSE, in which case the error code is returned by isErrno, or found in isfd->iserrno
this routine has multiple purposes.
if kdsc is passed then the index described will become current.
if length is non zero then isStart will set a partial key length for the selected index, and will only consider the first len bytes of the key during subsequent searches. this will remain in effect until the next isStart call.
the selected location in the index will be flagged as a start point, which means that the next call to isRead, if made with a search mode of ISNEXT or ISPREV, will return the current record, rather than the actual next or previous. this is often useful for initialising next or previous read loops.
after a successful isStart call, isfd->isrecnum will be set to the current record number.