2using System.Collections.Generic;
5using System.Threading.Tasks;
6using LotSizingDataModel.Instance;
25 private readonly IReadOnlyList<IStandardLotSizingVariableFamilyBuilder>
44 IEnumerable<IStandardLotSizingVariableFamilyBuilder> familyBuilders)
46 ArgumentNullException.ThrowIfNull(
50 familyBuilders.ToArray();
56 throw new InvalidOperationException(
57 "The standard variable-family builder collection " +
58 "cannot contain a null entry.");
61 string[] duplicateFamilyIds =
66 StringComparer.OrdinalIgnoreCase)
75 if (duplicateFamilyIds.Length > 0)
77 throw new InvalidOperationException(
78 "Duplicate standard variable-family identifiers " +
92 public IReadOnlyList<IStandardLotSizingVariableFamilyBuilder>
123 LotSizingInstance instance,
126 CancellationToken cancellationToken =
default)
128 ArgumentNullException.ThrowIfNull(
131 ArgumentNullException.ThrowIfNull(
134 ArgumentNullException.ThrowIfNull(
143 cancellationToken.ThrowIfCancellationRequested();
195 LotSizingInstance instance,
218 LotSizingInstance instance,
221 CancellationToken cancellationToken =
default);
Provides the shared state required while constructing a solver-independent mathematical model.