AIMA.Core.Logic.FOL.StandardizeApartIndexicalFactory.newStandardizeApartIndexical C# (CSharp) Метод

newStandardizeApartIndexical() публичный статический Метод

public static newStandardizeApartIndexical ( Char preferredPrefix ) : StandardizeApartIndexical
preferredPrefix Char
Результат StandardizeApartIndexical
        public static StandardizeApartIndexical newStandardizeApartIndexical(
                Char preferredPrefix) {
		char ch = preferredPrefix;
		if (!(Char.IsLetter(ch) && Char.IsLower(ch))) {
			throw new ArgumentException("Preferred prefix :"
					+ preferredPrefix + " must be a valid a lower case letter.");
		}

		StringBuilder sb = new StringBuilder();
		lock (_assignedIndexicals) {
			int currentPrefixCnt = -1;
            if (!_assignedIndexicals.ContainsKey(preferredPrefix))
            {
				currentPrefixCnt = 0;
                _assignedIndexicals.Add(preferredPrefix, currentPrefixCnt);
			} else {
				currentPrefixCnt += 1;
                _assignedIndexicals[preferredPrefix] = currentPrefixCnt;
			}

			sb.Append(preferredPrefix);
			for (int i = 0; i < currentPrefixCnt; i++) {
				sb.Append(preferredPrefix);
			}
		}

		return new StandardizeApartIndexicalImpl(sb.ToString());
	}
    }
StandardizeApartIndexicalFactory