-static struct relevance *relevance_create(pp2_charset_fact_t pft,
- NMEM nmem, const char **terms)
-{
- struct relevance *res = nmem_malloc(nmem, sizeof(struct relevance));
- const char **p;
- int i;
-
- for (p = terms, i = 0; *p; p++, i++)
- ;
- res->vec_len = ++i;
- res->doc_frequency_vec = nmem_malloc(nmem, res->vec_len * sizeof(int));
- memset(res->doc_frequency_vec, 0, res->vec_len * sizeof(int));
- res->nmem = nmem;
- res->prt = pp2_charset_token_create(pft, "relevance");
- res->entries = build_word_entries(res->prt, nmem, terms);
- return res;
-}
-
-// Recursively traverse query structure to extract terms.
-static void pull_terms(NMEM nmem, struct ccl_rpn_node *n,
- char **termlist, int *num, int max_terms)