Exemplo n.º 1
0
 public EkYonetici ekler()
 {
     if (ekYonetici != null)
     {
         return(ekYonetici);
     }
     else
     {
         alfabe();
         try {
             logger.Info("Ek yonetici uretiliyor:" + dilAdi);
             Type            clazz = dilAyarlari.ekYoneticiSinifi();
             ConstructorInfo ci    = clazz.GetConstructor(new Type[] {
                 typeof(Alfabe), typeof(String),
                 typeof(EkUretici), typeof(EkOzelDurumUretici), typeof(IDictionary <KelimeTipi, String>)
             });
             ekYonetici = (EkYonetici)ci.Invoke(new object[] {
                 _alfabe,
                 ekDosyaAdi,
                 dilAyarlari.ekUretici(_alfabe),
                 dilAyarlari.ekOzelDurumUretici(_alfabe),
                 dilAyarlari.baslangiEkAdlari()
             });
         } catch (Exception e) {
             logger.Fatal("ek yonetici sinif uretilemiyor.");
             e.StackTrace.ToString();
         }
     }
     return(ekYonetici);
 }
 public ToleransliCozumleyici(KokBulucu kokBulucu,
                              EkYonetici yonetici,
                              Alfabe alfabe,
                              CozumlemeYardimcisi yardimci) {
     this.kokBulucu = kokBulucu;
     this.ekYonetici = yonetici;
     this.alfabe = alfabe;
     this.yardimci = yardimci;
 }
 public ToleransliCozumleyici(KokBulucu kokBulucu,
                              EkYonetici yonetici,
                              Alfabe alfabe,
                              CozumlemeYardimcisi yardimci)
 {
     this.kokBulucu  = kokBulucu;
     this.ekYonetici = yonetici;
     this.alfabe     = alfabe;
     this.yardimci   = yardimci;
 }
Exemplo n.º 4
0
 public StandartCozumleyici(KokBulucu kokBulucu,
                            HarfDizisiKiyaslayici kiyaslayci,
                            Alfabe alfabe,
                            EkYonetici ekYonetici,
                            CozumlemeYardimcisi yardimci) {
     this.kokBulucu = kokBulucu;
     this.harfDizisiKiyaslayici = kiyaslayci;
     this.ekYonetici = ekYonetici;
     this.alfabe = alfabe;
     this.yardimci = yardimci;
 }
Exemplo n.º 5
0
 public StandartCozumleyici(KokBulucu kokBulucu,
                            HarfDizisiKiyaslayici kiyaslayci,
                            Alfabe alfabe,
                            EkYonetici ekYonetici,
                            CozumlemeYardimcisi yardimci)
 {
     this.kokBulucu             = kokBulucu;
     this.harfDizisiKiyaslayici = kiyaslayci;
     this.ekYonetici            = ekYonetici;
     this.alfabe   = alfabe;
     this.yardimci = yardimci;
 }
Exemplo n.º 6
0
        public void FindStempForWords()
        {
            int      o        = 0;
            Zemberek zemberek = new Zemberek(new TurkiyeTurkcesi());

            for (o = 0; o < WordsOfFile.Count; o++)
            {
                Word   _word     = new Word();
                string _wordfull = WordsOfFile[o].WFull;
                //sırayla kelimeleri ek kök ayrımına sokmak gerekli

                int           c             = 0;
                Kelime[]      CozumluKelime = zemberek.kelimeCozumle(_wordfull);
                EkYonetici    sozluk        = zemberek.dilBilgisi().ekler();
                string        kok           = string.Empty;
                string        tip           = string.Empty;
                List <string> ektipler      = new List <string>();
                if (CozumluKelime.Length > 0)
                {
                    c = CozumluKelime.Count() - 1;
                    Kok       _wstemp = CozumluKelime[c].kok();
                    List <Ek> leks    = CozumluKelime[c].ekler();

                    for (int e = 0; e < leks.Count; e++)
                    {
                        string ektip = leks[e].ad();
                        ektipler.Add(ektip);
                    }
                    kok = _wstemp.icerik();
                    tip = leks[0].ad();
                }
                else
                {
                    kok = _wordfull;
                    tip = "ISIM_KOK";
                }
                WordsOfFile[o].WType  = tip;             //Kök tipi
                WordsOfFile[o].WStemp = kok;             //kökün ne olduğu
                WordsOfFile[o].Wadds.AddRange(ektipler); //eklenen eklerin listesi tiple birlikte
            }
            StemTypeBrief = WordsOfFile.GroupBy(x => x.WType)
                            .Select(n => new Stem
            {
                Type  = n.Key,
                Count = n.Count()
            }
                                    ).ToList();
        }
        public RastgeleKelimeUretici() {

            DilBilgisi db = new TurkceDilBilgisi(new TurkiyeTurkcesi());
            alfabe = db.alfabe();
            ekYonetici = db.ekler();
            kelimeUretici = new KelimeUretici(alfabe, db.cozumlemeYardimcisi());

            foreach (Kok kok in db.kokler().tumKokler()) {
                if (kok.tip() == KelimeTipi.ISIM) {
                    isimler.Add(kok);
                } else if (kok.tip() == KelimeTipi.FIIL) {
                    fiiller.Add(kok);
                } else if (kok.tip() == KelimeTipi.SIFAT) {
                    sifatlar.Add(kok);
                }
            }
        }
        public RastgeleKelimeUretici()
        {
            DilBilgisi db = new TurkceDilBilgisi(new TurkiyeTurkcesi());

            alfabe        = db.alfabe();
            ekYonetici    = db.ekler();
            kelimeUretici = new KelimeUretici(alfabe, db.cozumlemeYardimcisi());

            foreach (Kok kok in db.kokler().tumKokler())
            {
                if (kok.tip() == KelimeTipi.ISIM)
                {
                    isimler.Add(kok);
                }
                else if (kok.tip() == KelimeTipi.FIIL)
                {
                    fiiller.Add(kok);
                }
                else if (kok.tip() == KelimeTipi.SIFAT)
                {
                    sifatlar.Add(kok);
                }
            }
        }
Exemplo n.º 9
0
 public EkYonetici ekler() {
     if (ekYonetici != null) {
         return ekYonetici;
     } else {
         alfabe();
         try {
             logger.Info("Ek yonetici uretiliyor:" + dilAdi);
             Type clazz = dilAyarlari.ekYoneticiSinifi();
             ConstructorInfo ci = clazz.GetConstructor(new Type[]{
                 typeof(Alfabe),typeof(String),
                 typeof(EkUretici),typeof(EkOzelDurumUretici),typeof(IDictionary<KelimeTipi,String>)});
             ekYonetici = (EkYonetici)ci.Invoke(new object[]{
                     _alfabe,
                     ekDosyaAdi,
                     dilAyarlari.ekUretici(_alfabe),
                     dilAyarlari.ekOzelDurumUretici(_alfabe),
                     dilAyarlari.baslangiEkAdlari()});
         } catch (Exception e) {
             logger.Fatal("ek yonetici sinif uretilemiyor.");
             e.StackTrace.ToString();
         }
     }
     return ekYonetici;
 }
 public TurkceKokOzelDurumBilgisi(EkYonetici ekler, Alfabe alfabe) : base(ekler, alfabe)
 {
     uret();
 }
 public TurkceKokOzelDurumBilgisi(EkYonetici ekler, Alfabe alfabe):base(ekler,alfabe)
 {
     uret();
 }
 public TemelKokOzelDurumBilgisi(EkYonetici ekYonetici, Alfabe alfabe) {
     this.ekYonetici = ekYonetici;
     this.alfabe = alfabe;
 }
Exemplo n.º 13
0
 public TemelKokOzelDurumBilgisi(EkYonetici ekYonetici, Alfabe alfabe)
 {
     this.ekYonetici = ekYonetici;
     this.alfabe     = alfabe;
 }
Exemplo n.º 14
0
 public SoruEkiIsleyici(EkYonetici yonetici)
 {
     this.ekYonetici = yonetici;
 }
Exemplo n.º 15
0
 public SoruEkiIsleyici(EkYonetici yonetici)
 {
     this.ekYonetici = yonetici;
 }