List <Ukrainian.Data.Entry> Ukrainian.IExceptionDictionary.GetAll() { var correctionCache = GetAll(CorrectionLanguage.Ukrainian); List <Ukrainian.Data.Entry> entries = new List <Ukrainian.Data.Entry>(); foreach (var name in correctionCache) { var correction = name.NameForms; var entry = new Ukrainian.Data.Entry( new Ukrainian.Data.DeclensionForms(correction.Where(form => !form.Plural).ToList())); entries.Add(entry); } return(entries); }
Ukrainian.Data.Entry Ukrainian.IUserDictionaryLookup.Lookup(string nominativeSingular) { var list = Lookup(nominativeSingular, CorrectionLanguage.Ukrainian); if (list == null) { return(null); } Ukrainian.Data.Entry entry = new Ukrainian.Data.Entry(); entry.Singular = new Ukrainian.Data.DeclensionForms() { Nominative = list.SingleOrDefault(form => form.FormID == 'Н' && !form.Plural)?.AccentedText, Genitive = list.SingleOrDefault(form => form.FormID == 'Р' && !form.Plural)?.AccentedText, Accusative = list.SingleOrDefault(form => form.FormID == 'З' && !form.Plural)?.AccentedText, Dative = list.SingleOrDefault(form => form.FormID == 'Д' && !form.Plural)?.AccentedText, Instrumental = list.SingleOrDefault(form => form.FormID == 'О' && !form.Plural)?.AccentedText, Prepositional = list.SingleOrDefault(form => form.FormID == 'М' && !form.Plural)?.AccentedText, Vocative = list.SingleOrDefault(form => form.FormID == 'К' && !form.Plural)?.AccentedText }; return(entry); }