/// <summary> /// Initializes a new instance of the <see cref="LocalizationMatchEvaluatorData"/> structure. /// </summary> /// <param name="name">The match evaluator name.</param> /// <param name="evaluator">The match evaluator.</param> public LocalizationMatchEvaluatorData(String name, LocalizationMatchEvaluator evaluator) { Contract.Require(name, nameof(name)); Contract.Require(evaluator, nameof(evaluator)); this.Name = name; this.Evaluator = evaluator; }
/// <summary> /// <para>Registers a match evaluator function for the specified culture.</para> /// <para>Match evaluators are used to determine how to make a localized string match another string variant.</para> /// </summary> /// <param name="culture">The culture for which to register a match evaluator.</param> /// <param name="name">The evaluator's unique name.</param> /// <param name="evaluator">The evaluator to register.</param> public static void RegisterMatchEvaluator(String culture, String name, LocalizationMatchEvaluator evaluator) { Contract.RequireNotEmpty(culture, nameof(culture)); Contract.RequireNotEmpty(name, nameof(name)); Contract.Require(evaluator, nameof(evaluator)); if (!registeredMatchEvaluators.ContainsKey(culture)) { registeredMatchEvaluators[culture] = new Dictionary <String, LocalizationMatchEvaluator>(); } registeredMatchEvaluators[culture][name] = evaluator; }
/// <summary> /// Registers a match evaluator function for the specified language. Match evaluators are used to determine /// how to make a localized string match another string variant. /// </summary> /// <param name="language">The language for which to register a match evaluator.</param> /// <param name="name">The evaluator's unique name.</param> /// <param name="evaluator">The evaluator to register.</param> public static void RegisterMatchEvaluatorForLanguage(String language, String name, LocalizationMatchEvaluator evaluator) { Contract.RequireNotEmpty(language, nameof(language)); Contract.RequireNotEmpty(name, nameof(name)); Contract.Require(evaluator, nameof(evaluator)); if (!registeredMatchEvaluatorsByLanguage.ContainsKey(language)) { registeredMatchEvaluatorsByLanguage[language] = new Dictionary <String, LocalizationMatchEvaluator>(); } registeredMatchEvaluatorsByLanguage[language][name] = evaluator; }
/// <summary> /// <para>Registers a match evaluator function for the specified culture.</para> /// <para>Match evaluators are used to determine how to make a localized string match another string variant.</para> /// </summary> /// <param name="culture">The culture for which to register a match evaluator.</param> /// <param name="name">The evaluator's unique name.</param> /// <param name="evaluator">The evaluator to register.</param> public static void RegisterMatchEvaluator(String culture, String name, LocalizationMatchEvaluator evaluator) { Contract.RequireNotEmpty(culture, "culture"); Contract.RequireNotEmpty(name, "name"); Contract.Require(evaluator, "evaluator"); if (!registeredMatchEvaluators.ContainsKey(culture)) { registeredMatchEvaluators[culture] = new Dictionary<String, LocalizationMatchEvaluator>(); } registeredMatchEvaluators[culture][name] = evaluator; }