Scroll to navigation

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:

Extract data from the Implicit dictionary.
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: DB_FIRST, DB_NEXT, DB_PREV, or DB_LAST as defined for the underlying database library.

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

Referenced database has not been opened, internal data structures are corrupted or some other general failure has occurred.
Internal memory allocation error.
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