/****************************************************************************/
// "Меркурий"-"Правда" - open source переводчик
// распространяется в соответсвии с лицензией GNU v 2.0
//
// Грамматический словарь
// Анисимов Д.В. сегодня
/****************************************************************************/
# ifndef SLOWO2_H
# define SLOWO2_H
# include <grammar.h>
struct t_Slowo2
{
t_Lang *Lang ; // язык, которому принадлежит словарь
t_Format *Format ; // формат словаря
long n_Word ; // число слов
short n_Form ; // число форм
char *Mass ; // Массив, в котором лежат слова
long *Word ; // ссылки на начала слов [n_Word*n_Form]
long *reverce ;// алфавитный список форм
t_Slowo2( void );
void set_lf( t_Lang *_Lang, t_Format *_Format );
void read( char *File, t_Lang *Lang, t_Format *Format );
void freverce( void );
char *normal( long index );
char *form( char *Str, t_Form *Form );
short quest( char *Str, long *Ant, t_Form *Form );
char word_exist( char *str );
void print_word( FILE *fw, long index );
private:
long find( char *str );
t_Form add_form( t_Form *Post,t_Form *Var );
char *form( long i, t_Form *Form );
};
# endif