int gu_lisa( void ) { int r; r = lisa( gu_tyvi, gu_format, FSxSTR("gu") ); if ( !r ) return(0); if ( !FSxSTRCMP(gu_format, FSxSTR("GU")) ) /* lk 54 */ { r = lisa( gu_tyvi, FSxSTR("GEM"), FSxSTR("gem") ); if ( !r ) return(0); r = lisa( gu_tyvi, FSxSTR("GE"), FSxSTR("ge") ); if ( !r ) return(0); } else { r = lisa( gu_tyvi, FSxSTR("KEM"), FSxSTR("gem") ); if ( !r ) return(0); r = lisa( gu_tyvi, FSxSTR("KE"), FSxSTR("ge") ); if ( !r ) return(0); } return(1); }
int b_lisa( void ) { int r; r = lisa( b_tyvi, b_format, FSxSTR("b") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("N"), FSxSTR("n") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("D"), FSxSTR("d") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR(""), FSxSTR("o") ); /* o on 0 (lk. 52, 53) */ if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("KSIN"), FSxSTR("ksin") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("KSID"), FSxSTR("ksid") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("KS"), FSxSTR("ks") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("KSIME"), FSxSTR("ksime") ); if ( !r ) return(0); r = lisa( b_tyvi, FSxSTR("KSITE"), FSxSTR("ksite") ); if ( !r ) return(0); return(1); }
int ma_lisa( void ) { int r; r = lisa( ma_tyvi, ma_format, FSxSTR("ma") ); if ( !r ) return(0); r = lisa( ma_tyvi, FSxSTR("VAT"), FSxSTR("vat") ); /* analoogiareegel (lk 53) */ if ( !r ) return(0); return(1); }
int sime_lisa( void ) { int r; r = lisa( sime_tyvi, sime_format, FSxSTR("sime") ); if ( !r ) return(0); if ( !FSxSTRCMP(sime_format, FSxSTR("IME")) ) /* lk 54 */ r = lisa( sime_tyvi, FSxSTR("ITE"), FSxSTR("site") ); else r = lisa( sime_tyvi, FSxSTR("SITE"), FSxSTR("site") ); if ( !r ) return(0); return(1); }
int me_lisa( void ) { int r; r = lisa( me_tyvi, me_format, FSxSTR("me") ); if ( !r ) return(0); r = lisa( me_tyvi, FSxSTR("TE"), FSxSTR("te") ); if ( !r ) return(0); r = lisa( me_tyvi, FSxSTR("VAD"), FSxSTR("vad") ); if ( !r ) return(0); return(1); }
int sin_lisa( void ) { int r; r = lisa( sin_tyvi, sin_format, FSxSTR("sin") ); if ( !r ) return(0); if ( !FSxSTRCMP(sin_format, FSxSTR("IN")) ) /* lk 54 */ r = lisa( sin_tyvi, FSxSTR("ID"), FSxSTR("sid") ); else r = lisa( sin_tyvi, FSxSTR("SID"), FSxSTR("sid") ); if ( !r ) return(0); return(1); }
int takse_lisa( void ) { int r; r = lisa( takse_tyvi, takse_format, FSxSTR("takse") ); return(r); }
int s_lisa( void ) { int r; r = lisa( s_tyvi, s_format, FSxSTR("s") ); return(r); }
int v_lisa( void ) { int r; r = lisa( v_tyvi, v_format, FSxSTR("v") ); return(r); }
int da_lisa( void ) { int r; r = lisa( da_tyvi, da_format, FSxSTR("da") ); if ( !r ) return(0); if ( !FSxSTRCMP(da_format, FSxSTR("DA")) ) /* lk 54 */ r = lisa( da_tyvi, FSxSTR("DES"), FSxSTR("des") ); else if ( !FSxSTRCMP(da_format, FSxSTR("TA")) ) r = lisa( da_tyvi, FSxSTR("TES"), FSxSTR("des") ); else r = lisa( da_tyvi, FSxSTR("ES"), FSxSTR("des") ); if ( !r ) return(0); return(1); }
int nud_lisa( void ) { int r; r = lisa( nud_tyvi, FSxSTR("NUD"), FSxSTR("nud") ); if ( !r ) return(0); r = lisa( nud_tyvi, FSxSTR("NUKSIN"), FSxSTR("nuksin") ); if ( !r ) return(0); r = lisa( nud_tyvi, FSxSTR("NUKSID"), FSxSTR("nuksid") ); if ( !r ) return(0); r = lisa( nud_tyvi, FSxSTR("NUKS"), FSxSTR("nuks") ); if ( !r ) return(0); r = lisa( nud_tyvi, FSxSTR("NUKSIME"), FSxSTR("nuksime") ); if ( !r ) return(0); r = lisa( nud_tyvi, FSxSTR("NUKSITE"), FSxSTR("nuksite") ); if ( !r ) return(0); r = lisa( nud_tyvi, FSxSTR("NUVAT"), FSxSTR("nuvat") ); if ( !r ) return(0); return(1); }
int lisa_ainsus( FSXSTRING *stem ) { int i,r; FSXSTRING tmp1; for (i=0; i < 11; i++) /* lisa kõik gen-st tulenevad ainsuse vormid */ { tmp1 = (const FSxCHAR *)ains_vorm; tmp1 += analog_v[i]; r = lisa( stem, analog_l[i], (FSxCHAR *)(const FSxCHAR *)tmp1 ); if ( !r ) return( 0 ); } r = lisa( stem, FSxSTR("D"), FSxSTR("pl n") ); /* lisa mitmuse nimetav */ if ( !r ) return( 0 ); return(1); }
int mata_lisa( void ) { int r; r = lisa( mata_tyvi, mata_format, FSxSTR("mata") ); if ( !r ) return(0); r = lisa( mata_tyvi, FSxSTR("MAS"), FSxSTR("mas") ); if ( !r ) return(0); r = lisa( mata_tyvi, FSxSTR("MAST"), FSxSTR("mast") ); if ( !r ) return(0); r = lisa( mata_tyvi, FSxSTR("MAKS"), FSxSTR("maks") ); if ( !r ) return(0); return(1); }
int lisa_mitmus( FSXSTRING *stem, const FSxCHAR *tunnus, int mitu ) { int i,r; FSXSTRING tmp1; FSXSTRING lop; for (i=0; i < mitu; i++) /* lisa kõik mitm. gen-st tulenevad vormid */ { if (i >= 11 ) /* yle 11 ei saa olla */ break; tmp1 = (const FSxCHAR *)mitm_vorm; tmp1 += analog_v[i]; lop = tunnus; /* tunnus = de, te, i vms mitmuse tunnus */ lop += analog_l[i]; r = lisa( stem, (FSxCHAR *)(const FSxCHAR *)lop, (FSxCHAR *)(const FSxCHAR *)tmp1 ); if ( !r ) return( 0 ); } return(1); }
int vparpar( void ) { int r; if (tyybinr != 27) return(0); r = par27(); if (r) return(0); /* par27() peab andma tagasi veateate */ r = lisa( da_tyvi, da_format, FSxSTR("da") ); r = lisa( b_tyvi, b_format, FSxSTR("b") ); r = lisa( tud_tyvi, tud_format, FSxSTR("tud") ); r = lisa( gu_tyvi, gu_format, FSxSTR("gu") ); r = lisa( me_tyvi, me_format, FSxSTR("me") ); r = lisa( takse_tyvi, takse_format, FSxSTR("takse") ); if ( !FSxSTRCMP(da_format, FSxSTR("DA")) ) /* lk 54 */ r = lisa( da_tyvi, FSxSTR("DES"), FSxSTR("des") ); else if ( !FSxSTRCMP(da_format, FSxSTR("TA")) ) r = lisa( da_tyvi, FSxSTR("TES"), FSxSTR("des") ); else r = lisa( da_tyvi, FSxSTR("ES"), FSxSTR("des") ); if ( !FSxSTRCMP(gu_format, FSxSTR("GU")) ) /* lk 54 */ { r = lisa( gu_tyvi, FSxSTR("GEM"), FSxSTR("gem") ); r = lisa( gu_tyvi, FSxSTR("GE"), FSxSTR("ge") ); } else { r = lisa( gu_tyvi, FSxSTR("KEM"), FSxSTR("gem") ); r = lisa( gu_tyvi, FSxSTR("KE"), FSxSTR("ge") ); } r = lisa( gu_tyvi, FSxSTR("NUD"), FSxSTR("nud") ); r = lisa( gu_tyvi, FSxSTR("NUKSIN"), FSxSTR("nuksin") ); r = lisa( gu_tyvi, FSxSTR("NUKSID"), FSxSTR("nuksid") ); r = lisa( gu_tyvi, FSxSTR("NUKS"), FSxSTR("nuks") ); r = lisa( gu_tyvi, FSxSTR("NUKSIME"), FSxSTR("nuksime") ); r = lisa( gu_tyvi, FSxSTR("NUKSITE"), FSxSTR("nuksite") ); r = lisa( gu_tyvi, FSxSTR("NUKSID"), FSxSTR("nuksid") ); r = lisa( gu_tyvi, FSxSTR("NUVAT"), FSxSTR("nuvat") ); r = lisa( b_tyvi, FSxSTR("N"), FSxSTR("n") ); r = lisa( b_tyvi, FSxSTR("D"), FSxSTR("d") ); r = lisa( b_tyvi, FSxSTR(""), FSxSTR("o") ); /* o on 0 (lk. 52, 53) */ r = lisa( b_tyvi, FSxSTR("KSIN"), FSxSTR("ksin") ); r = lisa( b_tyvi, FSxSTR("KSID"), FSxSTR("ksid") ); r = lisa( b_tyvi, FSxSTR("KS"), FSxSTR("ks") ); r = lisa( b_tyvi, FSxSTR("KSIME"), FSxSTR("ksime") ); r = lisa( b_tyvi, FSxSTR("KSITE"), FSxSTR("ksite") ); r = lisa( b_tyvi, FSxSTR("KSID"), FSxSTR("ksid") ); r = lisa( me_tyvi, FSxSTR("TE"), FSxSTR("te") ); r = lisa( me_tyvi, FSxSTR("VAD"), FSxSTR("vad") ); if ( !FSxSTRCMP(tud_format, FSxSTR("TUD")) ) /* lk 54 */ { r = lisa( tud_tyvi, FSxSTR("TI"), FSxSTR("ti") ); r = lisa( tud_tyvi, FSxSTR("TAKS"), FSxSTR("taks") ); r = lisa( tud_tyvi, FSxSTR("TUKS"), FSxSTR("tuks") ); r = lisa( tud_tyvi, FSxSTR("TAVAT"), FSxSTR("tavat") ); r = lisa( tud_tyvi, FSxSTR("TUVAT"), FSxSTR("tuvat") ); r = lisa( tud_tyvi, FSxSTR("TAGU"), FSxSTR("tagu") ); r = lisa( tud_tyvi, FSxSTR("TAMA"), FSxSTR("tama") ); r = lisa( tud_tyvi, FSxSTR("TA"), FSxSTR("ta") ); r = lisa( tud_tyvi, FSxSTR("TAV"), FSxSTR("tav") ); } else { r = lisa( tud_tyvi, FSxSTR("DI"), FSxSTR("ti") ); r = lisa( tud_tyvi, FSxSTR("DAKS"), FSxSTR("taks") ); r = lisa( tud_tyvi, FSxSTR("DUKS"), FSxSTR("tuks") ); r = lisa( tud_tyvi, FSxSTR("DAVAT"), FSxSTR("tavat") ); r = lisa( tud_tyvi, FSxSTR("DUVAT"), FSxSTR("tuvat") ); r = lisa( tud_tyvi, FSxSTR("DAGU"), FSxSTR("tagu") ); r = lisa( tud_tyvi, FSxSTR("DAMA"), FSxSTR("tama") ); r = lisa( tud_tyvi, FSxSTR("DA"), FSxSTR("ta") ); r = lisa( tud_tyvi, FSxSTR("DAV"), FSxSTR("tav") ); } return(1); }
int tud_lisa( void ) { int r; r = lisa( tud_tyvi, tud_format, FSxSTR("tud") ); if ( !r ) return(0); if ( !FSxSTRCMP(tud_format, FSxSTR("TUD")) ) /* lk 54 */ { r = lisa( tud_tyvi, FSxSTR("TI"), FSxSTR("ti") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TAKS"), FSxSTR("taks") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TUKS"), FSxSTR("tuks") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TAVAT"), FSxSTR("tavat") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TUVAT"), FSxSTR("tuvat") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TAGU"), FSxSTR("tagu") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TAMA"), FSxSTR("tama") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TA"), FSxSTR("ta") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("TAV"), FSxSTR("tav") ); if ( !r ) return(0); } else { r = lisa( tud_tyvi, FSxSTR("DI"), FSxSTR("ti") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DAKS"), FSxSTR("taks") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DUKS"), FSxSTR("tuks") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DAVAT"), FSxSTR("tavat") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DUVAT"), FSxSTR("tuvat") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DAGU"), FSxSTR("tagu") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DAMA"), FSxSTR("tama") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DA"), FSxSTR("ta") ); if ( !r ) return(0); r = lisa( tud_tyvi, FSxSTR("DAV"), FSxSTR("tav") ); if ( !r ) return(0); } return(1); }
int nomnul( FSXSTRING *inbuf ) { int alg, lop, ja, frmt; int i; FSXSTRING buff, yks_tk, tyvi, lp; buff = (const FSxCHAR *)(*inbuf); alg = buff.Find(FSxSTR("|")); buff = (const FSxCHAR *)buff.Mid(alg+1); for (i=0; i < 29; i++) /* vt kõiki selle kirje sõnu */ { lop = buff.Find(FSxSTR(",")); if ( lop==-1 ) { printf("\n0-muuttyybi failis vale arv sõnu "); return(0); } yks_tk = (const FSxCHAR *)buff.Left(lop); buff = (const FSxCHAR *)buff.Mid(lop+2); // if ( !strcmp( alg, "--" ) ) /* seda vormi ei moodustata */ if (yks_tk == FSxSTR("--")) { continue; } ja = yks_tk.Find(FSxSTR(" & ")); if (ja!=-1) { FSXSTRING tyvi1; tyvi1 = (const FSxCHAR *)yks_tk.Left(ja); yks_tk = (const FSxCHAR *)yks_tk.Mid(ja+3); frmt = tyvi1.Find(FSxSTR("[")); if ( frmt==-1 ) /* on 0-lõpp */ lisa( &tyvi1, FSxSTR(""), vorm[i] ); else { lp = (const FSxCHAR *)tyvi1.Mid(frmt+1); tyvi1 = (const FSxCHAR *)tyvi1.Left(frmt); lisa( &tyvi1, (FSxCHAR *)(const FSxCHAR *)lp, vorm[i] ); } } // maksimaalselt on võimalik 3 paralleelvormi ja = yks_tk.Find(FSxSTR(" & ")); if (ja!=-1) { FSXSTRING tyvi1; tyvi1 = (const FSxCHAR *)yks_tk.Left(ja); yks_tk = (const FSxCHAR *)yks_tk.Mid(ja+3); frmt = tyvi1.Find(FSxSTR("[")); if ( frmt==-1 ) /* on 0-lõpp */ lisa( &tyvi1, FSxSTR(""), vorm[i] ); else { lp = (const FSxCHAR *)tyvi1.Mid(frmt+1); tyvi1 = (const FSxCHAR *)tyvi1.Left(frmt); lisa( &tyvi1, (FSxCHAR *)(const FSxCHAR *)lp, vorm[i] ); } } frmt = yks_tk.Find(FSxSTR("[")); if ( frmt==-1 ) /* on 0-lõpp */ lisa( &yks_tk, FSxSTR(""), vorm[i] ); else { lp = (const FSxCHAR *)yks_tk.Mid(frmt+1); yks_tk = (const FSxCHAR *)yks_tk.Left(frmt); lisa( &yks_tk, (FSxCHAR *)(const FSxCHAR *)lp, vorm[i] ); } } return(1); }