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