/// <summary> /// Bindings for the dependencies for the TheoremSimplifier.RuleProvider module. /// </summary> /// <param name="kernel">The kernel.</param> /// <param name="settings">The settings for <see cref="SimplificationRuleProvider"/>.</param> /// <returns>The kernel for chaining.</returns> public static IKernel AddSimplificationRuleProvider(this IKernel kernel, SimplificationRuleProviderSettings settings) { // Bind the rule provider kernel.Bind <ISimplificationRuleProvider>().To <SimplificationRuleProvider>().WithConstructorArgument(settings); // Return the kernel for chaining return(kernel); }
/// <summary> /// Initializes a new instance of the <see cref="SimplificationRuleProvider"/> class. /// </summary> /// <param name="settings">The settings for the provider.</param> public SimplificationRuleProvider(SimplificationRuleProviderSettings settings) { _settings = settings ?? throw new ArgumentNullException(nameof(settings)); }