/// <summary> /// Initializes a new instance of the <see cref="MetapostDrawer"/> class. /// </summary> /// <param name="settings"><inheritdoc cref="_settings" path="/summary"/></param> /// <param name="data"><inheritdoc cref="_data" path="/summary"/></param> /// <param name="constructor"><inheritdoc cref="_constructor" path="/summary"/></param> /// <param name="verifier"><inheritdoc cref="_verifier" path="/summary"/></param> public MetapostDrawer(MetapostDrawerSettings settings, MetapostDrawerData data, IGeometryConstructor constructor, IGeometricTheoremVerifier verifier) { _settings = settings ?? throw new ArgumentNullException(nameof(settings)); _data = data ?? throw new ArgumentNullException(nameof(data)); _constructor = constructor ?? throw new ArgumentNullException(nameof(constructor)); _verifier = verifier ?? throw new ArgumentNullException(nameof(verifier)); }
/// <summary> /// Initializes a new instance of the <see cref="TheoremProver"/> class. /// </summary> /// <param name="settings"><inheritdoc cref="_settings" path="/summary"/></param> /// <param name="manager"><inheritdoc cref="_manager" path="/summary"/></param> /// <param name="applier"><inheritdoc cref="_applier" path="/summary"/></param> /// <param name="producer"><inheritdoc cref="_producer" path="/summary"/></param> /// <param name="verifier"><inheritdoc cref="_verifier" path="/summary"/></param> /// <param name="introducer"><inheritdoc cref="_introducer" path="/summary"/></param> /// <param name="tracer"><inheritdoc cref="_tracer" path="/summary"/></param> public TheoremProver(TheoremProverSettings settings, IInferenceRuleManager manager, IInferenceRuleApplier applier, ITrivialTheoremProducer producer, IGeometricTheoremVerifier verifier, IObjectIntroducer introducer, IInvalidInferenceTracer tracer) { _settings = settings ?? throw new ArgumentNullException(nameof(settings)); _applier = applier ?? throw new ArgumentNullException(nameof(applier)); _manager = manager ?? throw new ArgumentNullException(nameof(manager)); _producer = producer ?? throw new ArgumentNullException(nameof(producer)); _verifier = verifier ?? throw new ArgumentNullException(nameof(verifier)); _introducer = introducer ?? throw new ArgumentNullException(nameof(introducer)); _tracer = tracer ?? throw new ArgumentNullException(nameof(tracer)); }