analysis/analysis_thread.c [ Modules ]

[ Top ] [ Modules ]

SEE ALSO

For a description of public interface functions, module synopsis and its purpose see analysis/analysis_thread.


analysis_thread/atree_list_try_cell [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

atree_list_try_cell -- dispatch according to the cell_type and call the right function

SYNOPSIS

458     atree_list_try_cell(ms, cell_type, pei);

FUNCTION

The function calls the right function to handle the list cell in respect of its type. The type is given by the cell_type parameter. The cell is an item of the list found in the trie.

INPUTS

RESULT

void, but accumulated in ms->lresults


analysis_thread/atree_try_der_cell [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

atree_try_der_cell -- goes through the hash list and adds all the results

SYNOPSIS

398     atree_try_der_cell(ms, maw);

INPUTS

RESULT

void, but accumulated in ms->lresults


analysis_thread/find_lr [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

find_lr -- find a lemma result

SYNOPSIS

78     struct TRLemma *lr = find_lr(ms, lm_idx, attr_atom);

FUNCTION

The function finds a record in the ms->lresults stack using the ms->lht map. The record is specified by the lm_idx index parameter and attr_atom.

If the record is found, the lm_idx key string is removed from the ms->char_stack. Otherwise the record is created, registered into the hash table and initialized. The tag_list field is initialized with an empty list.

The string key is found in the hash table but the records differs in the attr_atom field, the former key storage is reused and new one is wipped out from the ms->char_stack.

INPUTS

RESULT


analysis_thread/form_constr_lemma [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

form_constr_lemma -- creates the resulting lemma string from the form record

SYNOPSIS

422     natural idx = form_constr_lemma(ms, f);

FUNCTION

The function concatenates several strings to get the resulting lemma. It uses ms->lemma_p to start with the prefix and continues with a part of the ms->form_str derived with the f->cut_idx string instruction.

INPUTS

RESULT

The index idx to the ms->char_stack is returned.

SEE ALSO

hash_der_cell_constr_lemma


analysis_thread/hash_der_cell_constr_lemma [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

hash_der_cell_constr_lemma -- creates the resulting lemma string from the pattern record

SYNOPSIS

350     natural idx = hash_der_cell_constr_lemma(ms, maw, fc);

FUNCTION

The function concatenates several strings to get the resulting lemma. It uses ms->lemma_p to start with the prefix and continues with kofix derived from ms->form_str possibly with the modification by the maw->rt2lmm_idx string instruction. Then it is finished by the fc.cut_idx string instruction.

INPUTS

RESULT

The index idx to the ms->char_stack is returned.

SEE ALSO

form_constr_lemma


analysis_thread/merge_tags [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

merge_tags -- merges the tg_idx tags to the lemma result; all megre_tags_XX functions are documented here

SYNOPSIS

198     ms->merge_tags(ms, lr, tg_idx);

FUNCTION

The function filters valid tags from the list and adds them to the lr->tag_list.

The tag validity definition changes with the particilar function.

The function merge_tags_ng considers the tag to be valid if:

The function merge_tags_prefix accepts tags that are not abbreviations and are compatible with the recognized prefix, i.e. if it is a noun or an adjective with the nominal prefix type or a verb with the verb prefix type.

The function merge_tags_prefix_ng combines the restriction on prefix and negation and grading.

The functions merge_tags_simple, merge_tags_fallback and merge_tags_number accept all tags. They only differs in source attribute.

INPUTS

RESULT

void


analysis_thread/morfo_analysis_trace_list [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

morfo_analysis_trace_list -- goes through the list of description structures found in the trie

SYNOPSIS

490     morfo_analysis_trace_list(ms, list_addr);

FUNCTION

The function iterates through the list found in a node of the trie.

INPUTS

RESULT

void, but accumulated in ms->lresults


analysis_thread/morfo_analysis_trace_tree [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

morfo_analysis_trace_tree -- goes through the trie searching the word form

SYNOPSIS

515     morfo_analysis_trace_tree(ms);

FUNCTION

The recursive function to descend into the trie. It is driven by the ms->form_end string.

INPUTS

RESULT

void, but accumulated in ms->lresults


analysis_thread/new_result [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

new_result -- merges the new result into that what have already been found

SYNOPSIS

315     new_result(ms, lm_idx, tg_idx, attr_atom);

FUNCTION

Merges the new result with the results for the lemma with those that have already been found.

No result may be added if all the tags are filtered out.

INPUTS

RESULT

void

SEE ALSO

find_lr, merge_tags


analysis_thread/new_t_result [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

new_t_result -- prepends an atom to the lr->tag_list

SYNOPSIS

143     lr->tag_list = new_t_result(ms, 8 * atom, lr->tag_list, rtsNumber);

FUNCTION

The function behaves like a list prepend. It works on a ms->tresults stack and initializes the inserted structure.

INPUTS

RESULT


analysis_thread/run_a_ng [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

run_a_ng -- run the analysis on the given string; consider ne-/nej-

SYNOPSIS

599     run_a_ng(ms, form_str);

FUNCTION

The function prepares the execution of the analysis if it recognizes ne-, nej-, and nejne- prefixes. The prefixes are not the subject of the analysis. However they are indicated by ms->neg and ms->grade fields.

It fills in the needed fields of the ms structure and runs the analysis of the form with the recognized prefixes removed. Only the tags that goes with the prefixes are accepted.

INPUTS

RESULT

void, but accumulated in ms->lresults

WARNING No analysis is executed if no prefix is recognized.


analysis_thread/run_a_prefix [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

run_a_prefix -- run the analysis on the given string; consider listed prefixes

SYNOPSIS

667     run_a_prefix(ms, form_str);

FUNCTION

The function prepares the execution of the analysis. It fills in the needed fields of the ms structure and runs the recognition of the listed prefixes followed by the form analysis.

Only the tags that goes with the recognized prefixe are accepted.

INPUTS

RESULT

void, but accumulated in ms->lresults

WARNING No analysis is executed if no prefix is recognized.


analysis_thread/run_a_prefix_ng [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

run_a_prefix_ng -- run the analysis on the given string; consider ne-/nej- and other prefixes

SYNOPSIS

711     run_a_prefix_ng(ms, form_str);

FUNCTION

The function prepares the execution of the analysis if it recognizes ne-, nej-, and nejne- prefixes. The prefixes ne- and nej- are not the subject of the analysis. However they are indicated by ms->neg and ms->grade fields.

It fills in the needed fields of the ms structure and runs the analysis of the form with the recognized prefixes ne- and nej- removed. Then the recognition of other prefixes starts.

Only the tags that goes with the prefixes are accepted.

INPUTS

RESULT

void, but accumulated in ms->lresults

WARNING No analysis is executed if no prefix is recognized.


analysis_thread/run_a_simple [ Functions ]

[ Top ] [ analysis_thread ] [ Functions ]

NAME

run_a_simple -- run the analysis on the given string

SYNOPSIS

564     run_a_simple(ms, form_str);

FUNCTION

The function prepares the execution of the analysis. It fills in the needed fields of the ms structure and runs the analysis. All the tags are accepted.

INPUTS

RESULT

void, but accumulated in ms->lresults