示例#1
0
 /// <summary>
 /// Heuristically guess is this one-word noun is in plural form
 /// </summary>
 public static bool NounAppearsPlural(string plural)
 {
     if (IrregularSingulars.ContainsKey(plural))
     {
         return(true);
     }
     foreach (var i in Inflections)
     {
         if (i.MatchPluralForSingular(plural))
         {
             return(true);
         }
     }
     return(false);
 }
示例#2
0
 public static bool NounAppearsPlural(string plural)
 {
     if (IrregularSingulars.TryGetValue(plural, out string singular))
     {
         return(true);
     }
     foreach (var i in Inflections)
     {
         if (i.MatchPluralForSingular(plural))
         {
             return(true);
         }
     }
     return(false);
 }
示例#3
0
 /// <summary>
 /// The singular form of a one-word plural noun
 /// </summary>
 public static string SingularOfNoun(string plural)
 {
     if (IrregularSingulars.TryGetValue(plural, out string singular))
     {
         return(singular);
     }
     foreach (var i in Inflections)
     {
         if (i.MatchPluralForSingular(plural))
         {
             return(i.InflectPluralForSingular(plural));
         }
     }
     throw new ArgumentException($"'{plural}' appears to be a plural noun, but I can't find a singular inflection for it");
 }
示例#4
0
 /// <summary>
 /// The singular form of a one-word plural noun
 /// </summary>
 public static string SingularOfNoun(string plural)
 {
     if (IrregularSingulars.TryGetValue(plural, out string singular))
     {
         return(singular);
     }
     foreach (var i in Inflections)
     {
         if (i.MatchPluralForSingular(plural))
         {
             return(i.InflectPluralForSingular(plural));
         }
     }
     throw new GrammaticalError($"'{plural}' appears to be a plural noun, but I can't find a singular inflection for it",
                                $"In this context, the term '<i>{plural}</i>' appears to be a plural noun, but I can't find a singular inflection for it");
 }