23 throw new ArgumentNullException(nameof(analyzer));
26 public IReadOnlyList<LotSizingProblemClassMatchResult>
Detect(
29 ArgumentNullException.ThrowIfNull(descriptor);
31 IReadOnlyList<LotSizingProblemClassDefinition>
32 candidateDefinitions =
33 descriptor.Scheduling.HasIntegratedScheduling
37 return candidateDefinitions
43 .Where(result => result.IsMember)
52 result.Definition.Code,
53 StringComparer.Ordinal)
60 IReadOnlyList<LotSizingProblemClassMatchResult> matches =
63 return matches.Count == 1
Typed structured description of the factual lot-sizing problem characteristics currently represented ...
Assesses one descriptor against one canonical problem-class core.
Canonical lot-sizing problem-class catalog.
static IReadOnlyList< LotSizingProblemClassDefinition > SchedulingDetectableClasses
static IReadOnlyList< LotSizingProblemClassDefinition > ExecutableClasses
IReadOnlyList< LotSizingProblemClassMatchResult > Detect(LotSizingProblemDescriptor descriptor)
LotSizingProblemClassDetector()
LotSizingProblemClassDetector(LotSizingProblemClassAnalyzer analyzer)
LotSizingProblemClassMatchResult? DetectSingle(LotSizingProblemDescriptor descriptor)
Complete canonical problem-class membership assessment.
LotSizingProblemClassMatchKind
Relationship between an instance descriptor and one canonical problem class.