Beispiel #1
0
 public AddressObjectType(string fullName, string abbreviatedName, int level, GenderNoun genderType = GenderNoun.Uknown)
 {
     FullName        = fullName;
     AbbreviatedName = abbreviatedName;
     GenderType      = genderType;
     Level           = level;
 }
Beispiel #2
0
        /// <summary>
        /// хеширование
        /// </summary>
        /// <returns></returns>
        public override int GetHashCode()
        {
            var hashCode = 1881619974;

            hashCode = hashCode * -1521134295 + GenderNoun.GetHashCode();
            hashCode = hashCode * -1521134295 + EqualityComparer <string> .Default.GetHashCode(PluralForm);

            hashCode = hashCode * -1521134295 + Transitive.GetHashCode();
            hashCode = hashCode * -1521134295 + ConjugationType.GetHashCode();
            hashCode = hashCode * -1521134295 + EqualityComparer <string> .Default.GetHashCode(AuxiliaryVerb);

            hashCode = hashCode * -1521134295 + EqualityComparer <string> .Default.GetHashCode(Description);

            return(hashCode);
        }
Beispiel #3
0
 /// <summary>
 /// Возвращает регулярное выражение всех аббревиатур типов обьекта по роду и уровню обьекта.
 /// </summary>
 /// <returns></returns>
 internal string GetRegexMultiPattern(int level, GenderNoun gender)
 {
     sb.Clear();
     sb.Append("(");
     foreach (var obj in objectTypes)
     {
         if (obj.Value.Level == level && obj.Value.GenderType == gender)
         {
             if (sb.ToString() != "(")
             {
                 sb.Append("|");
             }
             sb.Append(obj.Value.AbbreviatedName);
         }
     }
     sb.Append(")");
     return(sb.ToString());
 }