/// <summary> /// Initializes a new instance of <see cref="TypeRules"/> /// </summary> /// <param name="typeDiscoverer"><see cref="ITypeDiscoverer"/> used for discovering rules</param> /// <param name="container"><see cref="IContainer"/> used for getting instances</param> /// <param name="problemsFactory"><see cref="IProblemsFactory"/> used for creating problems</param> /// <param name="problemsReporter"><see cref="IProblemsReporter">Reporter</see> to use for reporting back any problems</param> public TypeRules( ITypeDiscoverer typeDiscoverer, IContainer container, IProblemsFactory problemsFactory, IProblemsReporter problemsReporter) { _typeDiscoverer = typeDiscoverer; _container = container; _problemsFactory = problemsFactory; _problemsReporter = problemsReporter; }