rulexdb_seq(3)

RULEXDB_SEQ(3) Library Functions Manual RULEXDB_SEQ(3)

NAME

rulexdb_seq - sequential retrieving dictionary items from the rulex database

SYNOPSIS

#include <rulexdb.h>

int rulexdb_search(RULEXDB *rulexdb, char *key, char *value, int item_type, int mode);

DESCRIPTION

The rulexdb_seq() function sequentially fetches lexical records one by one. It's operations are not disturbed by the key-based search.

The argument rulexdb references the rulex database.

The arguments key and value must point to the buffers with enough space for retrieved data.

The argument item_type specifies the dictionary dataset from which data will be retrieved. It may accept one of the following values:

RULEXDB_LEXBASE
Extract data from the Implicit dictionary.
RULEXDB_EXCEPTION
Extract data from the Explicit dictionary.

Note that the data type must be specified explicitly. The value RULEXDB_DEFAULT is not allowed here.

When fetching data from the Explicit dictionary the correction rules will be applied. To prevent this feature you can specify RULEXDB_EXCEPTION_RAW instead of RULEXDB_EXCEPTION.

The mode argument specifies direction of the dictionary scanning. Allowed
values are: RULEXDB_SEQ_FIRST, RULEXDB_SEQ_NEXT, RULEXDB_SEQ_PREV, or RULEXDB_SEQ_LAST.

RETURN VALUE

The rulexdb_seq() function returns RULEXDB_SUCCESS which is zero upon success, positive value RULEXDB_SPECIAL when no more records can be fetched, or negative error code if something is wrong.

ERRORS

RULEXDB_FAILURE
Referenced database has not been opened, internal data structures are corrupted or some other general failure has occurred.
RULEXDB_EMALLOC
Internal memory allocation error.
RULEXDB_EPARM
Invalid parameters are specified.

SEE ALSO

rulexdb_classify(3), rulexdb_close(3), rulexdb_dataset_name(3), rulexdb_discard_dictionary(3), rulexdb_discard_ruleset(3), rulexdb_fetch_rule(3), rulexdb_lexbase(3), rulexdb_load_ruleset(3), rulexdb_open(3), rulexdb_remove_item(3), rulexdb_remove_rule(3), rulexdb_remove_this_item(3), rulexdb_retrieve_item(3), rulexdb_search(3), rulexdb_subscribe_item(3), rulexdb_subscribe_rule(3)

AUTHOR

Igor B. Poretsky <poretsky@mlbox.ru>.

February 20, 2012