示例#1
0
        /// <summary>
        ///
        /// </summary>
        private EnglishPluralizationService()
        {
            Culture = new CultureInfo("en");

            _userDictionary = new BidirectionalDictionary <string, string>();

            _irregularPluralsPluralizationService =
                new StringBidirectionalDictionary(_irregularPluralsDictionary);
            _assimilatedClassicalInflectionPluralizationService =
                new StringBidirectionalDictionary(_assimilatedClassicalInflectionDictionary);
            _oSuffixPluralizationService =
                new StringBidirectionalDictionary(_oSuffixDictionary);
            _classicalInflectionPluralizationService =
                new StringBidirectionalDictionary(_classicalInflectionDictionary);
            _wordsEndingWithSePluralizationService =
                new StringBidirectionalDictionary(_wordsEndingWithSeDictionary);
            _wordsEndingWithSisPluralizationService =
                new StringBidirectionalDictionary(_wordsEndingWithSisDictionary);
            _wordsEndingWithSusPluralizationService =
                new StringBidirectionalDictionary(_wordsEndingWithSusDictionary);
            _wordsEndingWithInxAnxYnxPluralizationService =
                new StringBidirectionalDictionary(_wordsEndingWithInxAnxYnxDictionary);

            // verb
            _irregularVerbPluralizationService =
                new StringBidirectionalDictionary(_irregularVerbList);

            _knownSingluarWords = new List <string>(
                _irregularPluralsDictionary.Keys
                .Concat(_assimilatedClassicalInflectionDictionary.Keys)
                .Concat(_oSuffixDictionary.Keys)
                .Concat(_classicalInflectionDictionary.Keys)
                .Concat(_irregularVerbList.Keys)
                .Concat(_irregularPluralsDictionary.Keys)
                .Concat(_wordsEndingWithSeDictionary.Keys)
                .Concat(_wordsEndingWithSisDictionary.Keys)
                .Concat(_wordsEndingWithSusDictionary.Keys)
                .Concat(_wordsEndingWithInxAnxYnxDictionary.Keys)
                .Concat(_uninflectiveWordList)
                .Except(_knownConflictingPluralList)); // see the _knowConflictingPluralList comment above

            _knownPluralWords = new List <string>(
                _irregularPluralsDictionary.Values
                .Concat(_assimilatedClassicalInflectionDictionary.Values)
                .Concat(_oSuffixDictionary.Values)
                .Concat(_classicalInflectionDictionary.Values)
                .Concat(_irregularVerbList.Values)
                .Concat(_irregularPluralsDictionary.Values)
                .Concat(_wordsEndingWithSeDictionary.Values)
                .Concat(_wordsEndingWithSisDictionary.Values)
                .Concat(_wordsEndingWithSusDictionary.Values)
                .Concat(_wordsEndingWithInxAnxYnxDictionary.Values)
                .Concat(_uninflectiveWordList));
        }
 /// <summary>
 /// Constructs a new  instance  of default pluralization service
 /// used in Entity Framework.
 /// </summary>
 public EnglishPluralizationService()
 {
     _userDictionary = new BidirectionalDictionary<string, string>();
     _irregularPluralsPluralizationService = new StringBidirectionalDictionary(_irregularPluralsList);
     _assimilatedClassicalInflectionPluralizationService = new StringBidirectionalDictionary(_assimilatedClassicalInflectionList);
     _oSuffixPluralizationService = new StringBidirectionalDictionary(_oSuffixList);
     _classicalInflectionPluralizationService = new StringBidirectionalDictionary(_classicalInflectionList);
     _wordsEndingWithSePluralizationService = new StringBidirectionalDictionary(_wordsEndingWithSeList);
     _wordsEndingWithSisPluralizationService = new StringBidirectionalDictionary(_wordsEndingWithSisList);
     // verb
     _irregularVerbPluralizationService = new StringBidirectionalDictionary(_irregularVerbList);
     _knownSingluarWords = new List<string>(_irregularPluralsList.Keys.Concat(_assimilatedClassicalInflectionList.Keys).Concat(_oSuffixList.Keys).Concat(_classicalInflectionList.Keys).Concat(_irregularVerbList.Keys).Concat(_uninflectiveWords).Except(_knownConflictingPluralList)); // see the _knowConflictingPluralList comment above
     _knownPluralWords = new List<string>(_irregularPluralsList.Values.Concat(_assimilatedClassicalInflectionList.Values).Concat(_oSuffixList.Values).Concat(_classicalInflectionList.Values).Concat(_irregularVerbList.Values).Concat(_uninflectiveWords));
 }
示例#3
0
        public void BidirectionDicTest()
        {
            IncrementTestCount();
            var dic = new Dictionary <string, string>()
            {
                { "a", "1" }, { "b", "2" }
            };
            var result = new StringBidirectionalDictionary(dic);
            var revDic = result.SecondToFirstDictionary;

            result.AddValue("c", "3");
            Assert.AreEqual(true, result.ExistsInFirst("b"));
            Assert.AreEqual(false, result.ExistsInSecond("asdsdas"));
            Assert.AreEqual("a", result.GetFirstValue("1"));
            Assert.AreEqual("1", result.GetSecondValue("a"));
        }
        internal EnglishPluralizationService()
        {
            this.Culture = new CultureInfo("en");

            this._userDictionary = new BidirectionalDictionary<string, string>();

            this._irregularPluralsPluralizationService =
                new StringBidirectionalDictionary(this._irregularPluralsDictionary);
            this._assimilatedClassicalInflectionPluralizationService =
                new StringBidirectionalDictionary(this._assimilatedClassicalInflectionDictionary);
            this._oSuffixPluralizationService =
                new StringBidirectionalDictionary(this._oSuffixDictionary);
            this._classicalInflectionPluralizationService =
                new StringBidirectionalDictionary(this._classicalInflectionDictionary);
            this._wordsEndingWithSePluralizationService =
                new StringBidirectionalDictionary(this._wordsEndingWithSeDictionary);
            this._wordsEndingWithSisPluralizationService =
                new StringBidirectionalDictionary(this._wordsEndingWithSisDictionary);
            this._wordsEndingWithSusPluralizationService =
                new StringBidirectionalDictionary(this._wordsEndingWithSusDictionary);
            this._wordsEndingWithInxAnxYnxPluralizationService =
                new StringBidirectionalDictionary(this._wordsEndingWithInxAnxYnxDictionary);

            // verb
            this._irregularVerbPluralizationService =
                new StringBidirectionalDictionary(this._irregularVerbList);

            this._knownSingluarWords = new List<string>(
                _irregularPluralsDictionary.Keys
                .Concat(_assimilatedClassicalInflectionDictionary.Keys)
                .Concat(_oSuffixDictionary.Keys)
                .Concat(_classicalInflectionDictionary.Keys)
                .Concat(_irregularVerbList.Keys)
                .Concat(_irregularPluralsDictionary.Keys)
                .Concat(_wordsEndingWithSeDictionary.Keys)
                .Concat(_wordsEndingWithSisDictionary.Keys)
                .Concat(_wordsEndingWithSusDictionary.Keys)
                .Concat(_wordsEndingWithInxAnxYnxDictionary.Keys)
                .Concat(_uninflectiveWordList)
                .Except(this._knownConflictingPluralList)); // see the _knowConflictingPluralList comment above

            this._knownPluralWords = new List<string>(
                _irregularPluralsDictionary.Values
                .Concat(_assimilatedClassicalInflectionDictionary.Values)
                .Concat(_oSuffixDictionary.Values)
                .Concat(_classicalInflectionDictionary.Values)
                .Concat(_irregularVerbList.Values)
                .Concat(_irregularPluralsDictionary.Values)
                .Concat(_wordsEndingWithSeDictionary.Values)
                .Concat(_wordsEndingWithSisDictionary.Values)
                .Concat(_wordsEndingWithSusDictionary.Values)
                .Concat(_wordsEndingWithInxAnxYnxDictionary.Values)
                .Concat(_uninflectiveWordList));
        }
示例#5
0
 public EnglishPluralizationService()
 {
     base.Culture = new CultureInfo("en");
     this._userDictionary = new BidirectionalDictionary<string, string>();
     this._irregularPluralsPluralizationService = new StringBidirectionalDictionary(this._irregularPluralsList);
     this._assimilatedClassicalInflectionPluralizationService = new StringBidirectionalDictionary(this._assimilatedClassicalInflectionList);
     this._oSuffixPluralizationService = new StringBidirectionalDictionary(this._oSuffixList);
     this._classicalInflectionPluralizationService = new StringBidirectionalDictionary(this._classicalInflectionList);
     this._wordsEndingWithSePluralizationService = new StringBidirectionalDictionary(this._wordsEndingWithSeList);
     this._wordsEndingWithSisPluralizationService = new StringBidirectionalDictionary(this._wordsEndingWithSisList);
     this._irregularVerbPluralizationService = new StringBidirectionalDictionary(this._irregularVerbList);
     this._knownSingluarWords = new List<string>(this._irregularPluralsList.Keys.Concat(this._assimilatedClassicalInflectionList.Keys).Concat(this._oSuffixList.Keys).Concat(this._classicalInflectionList.Keys).Concat(this._irregularVerbList.Keys).Concat(this._uninflectiveWords).Except(this._knownConflictingPluralList));
     this._knownPluralWords = new List<string>(this._irregularPluralsList.Values.Concat(this._assimilatedClassicalInflectionList.Values).Concat(this._oSuffixList.Values).Concat(this._classicalInflectionList.Values).Concat(this._irregularVerbList.Values).Concat(this._uninflectiveWords));
 }