|
Data Structures |
| struct | searchm_nodeelem |
| | node elements of a list. More...
|
| struct | searchm_metaelem |
| | A metaname element in the meta list. More...
|
| struct | searchm_metalist |
| | The meta list. More...
|
Functions |
| int | searchm_nullstrcmp (const char *const t1, const char *const t2, const int bCase) |
| | compares t1 and t2, allowing for t1 and/or t2 to be NULL. if t1 and t2 are NULL, strings are considered equal The NULL string is considered less than a non NULL string. return: 0 strings are equal 1 strings are not equal
|
| apr_status_t | searchm_metalist_process (p_query_info_t p_qi) |
| | called during results phase to create the meta list
|
| apr_status_t | searchm_subquery_process (p_searchm_metalist_t const p_ml, const char **sl, unsigned int *index_sl, const char *meta_def, apr_pool_t *p) |
| | process a Swish-e subquery (as opposed to a searchm sub-query)
|
| searchm_termtype_e | searchm_gettermtype (const char *t) |
| | determines a term type.
|
| searchm_termtype_e | searchm_conjtype (const char *const t) |
| | Determines if t is a conjunction. Case is irrelevant.
|
| apr_status_t | searchm_addterm (p_searchm_metalist_t p_ml, const char **sl, int *index_sl, const char *m, int bP, int nterms, apr_pool_t *p) |
| apr_status_t | searchm_metalist_add (p_searchm_metalist_t const p_ml, const char *mn, p_searchm_metaelem_t *pp_me, apr_pool_t *p) |
| p_searchm_metaelem_t | searchm_metalist_get (p_searchm_metalist_t p_ml, const char *mn, int *bFound) |
| apr_status_t | searchm_nodelist_add (p_searchm_metaelem_t const p_me, const char **sl, int *index_sl, int bP, int nterms, apr_pool_t *p) |
| | adds the term(s) at index_sl in sl to nodelist of me. me->l may be null. if nterms==1, then in phrase with one term. When added to nodelist, will become a single term, with phrase distinction lost. return:
|
| void | searchm_metalist_destroy (p_searchm_metalist_t const p_ml) |
| | destroys the metalist.
|
| apr_status_t | searchm_nodelist_match (p_searchm_metaelem_t const p_me, const char **sl, const int index_sl, const int bP, const int nterms, int *bFound, apr_pool_t *p) |
| apr_status_t | searchm_phrase_match (p_searchm_metaelem_t const p_me, const char **sl, const int index_sl, const int bP, const int nterms, int *bResult, apr_pool_t *p) |
| | Checks if this phrase at ls[index_sl] is a match of an existing phrase in nodelist. If an existing phrase may be modified to match this phrase, it is modified, and match is successful. A match: If each term of a phrase is exaclty equal. Ex: "jack and jill" matches "jack and jill" If each term in phrase matches, with swap if necessary, match. Ex: "ja* and ji*" match "jack and jill" Ex: "jack and jill" match "ja* and ji*", with swap. Ex: "blackja* and ji*" match "ja* and ji*" with swap. If nterms in this phrase is not equal to the the number of terms in match phrase, then assume never equal.
|
| apr_status_t | searchm_single_match (const char *t1, const char *t2, const int bWay, int *Result, apr_pool_t *p) |