Main Page | Modules | Data Structures | Directories | File List | Data Fields | Examples

Search


Detailed Description

Searching

Reverse Polish Notation is used to define the search parameters.


Typedefs

typedef lnc_search lnc_search
 Search object.

Enumerations

enum  lnc_operator { LNC_OP_AND, LNC_OP_OR }
enum  lnc_comparator { LNC_COMP_LT, LNC_COMP_GT, LNC_COMP_EQ, LNC_COMP_NE }

Functions

lnc_searchlnc_search_create (lnc_dataset *dset)
 Creates an new search object.
void lnc_search_free (lnc_search *search)
 Free's a search and it resources.
int lnc_search_add_operator (lnc_search *search, lnc_operator op)
 Add an operation in RPN to the search.
int lnc_search_add_comparator (lnc_search *search, char *field, lnc_comparator comp, char *value)
 Add a comparator in RPN to the search.
int lnc_search_add_custom_comparator (lnc_search *search, lnc_custom_comparator comp)
 Add a comparator in RPN to the search.
int lnc_search_get_results (lnc_search *search, lnc_progress progress, lnc_slist **result, unsigned int flags)
 Execute a search.
void lnc_search_put_results (lnc_slist *results)
 Release the search results.
int lnc_search_get_hits (lnc_search *search)
 Get the number of search hits.
int lnc_search_get_tests (lnc_search *search)
 Get the number of search tests.


Enumeration Type Documentation

enum enum lnc_comparator
 

Search field comparators

enum enum lnc_operator
 

Search operators


Function Documentation

int lnc_search_add_comparator lnc_search search,
char *  field,
lnc_comparator  comp,
char *  value
 

Add a comparator in RPN to the search.

Parameters:
search Search
field Field name
comp Comparator
value Compare value
Add a comparator in RPN to the search
Examples:
client.c, and sky2k.c.

int lnc_search_add_custom_comparator lnc_search search,
lnc_custom_comparator  comp
 

Add a comparator in RPN to the search.

Parameters:
search Search
comp Custom comparator function
Returns:
0 on success
Add a custom search comparator. It should return 1 for a match and 0 for a search miss.

int lnc_search_add_operator lnc_search search,
lnc_operator  op
 

Add an operation in RPN to the search.

Parameters:
search Search
op Operator
Returns:
0 on success
Add a node operation in RPN to the search
Examples:
client.c, and sky2k.c.

lnc_search * lnc_search_create lnc_dataset dset  ) 
 

Creates an new search object.

Parameters:
dset dataset
Returns:
lnc_search object on success or NULL on failure
Creates an new search object
Examples:
client.c, and sky2k.c.

void lnc_search_free lnc_search search  ) 
 

Free's a search and it resources.

Parameters:
search Search
Free's a search and it resources
Examples:
client.c, and sky2k.c.

int lnc_search_get_hits lnc_search search  ) 
 

Get the number of search hits.

Parameters:
search Search
Returns:
Hits
Get the number of search hits.
Examples:
client.c, and sky2k.c.

int lnc_search_get_results lnc_search search,
lnc_progress  progress,
lnc_slist **  result,
unsigned int  flags
 

Execute a search.

Parameters:
search Search
progress Progress callback
result Search results
flags Flags
Get search results.
Examples:
client.c, and sky2k.c.

int lnc_search_get_tests lnc_search search  ) 
 

Get the number of search tests.

Parameters:
search Search
Returns:
Tests
Get the number of search tests
Examples:
client.c, and sky2k.c.

void lnc_search_put_results lnc_slist *  results  ) 
 

Release the search results.

Parameters:
results Frees search results
Examples:
client.c, and sky2k.c.


Generated on Tue Jul 5 14:34:14 2005 for libncat by  doxygen 1.4.2