LotSizingDataModel.Instance 2.0.1
Lot-sizing instance representation, descriptors and problem characterization.
Loading...
Searching...
No Matches
Lsi10Projection.cs
Go to the documentation of this file.
2
3/// <summary>
4/// Immutable scientific compatibility projection for the LSI/1.0 notation.
5/// </summary>
6/// <remarks>
7/// LSI/1.0 is a view over the stable typed descriptor and Universal Notation.
8/// It is not an independent source of semantic truth.
9/// </remarks>
10public sealed class Lsi10Projection
11{
13 string canonicalText,
14 string universalNotationText,
15 string legacyProblemFamily,
16 IReadOnlyDictionary<string, string> dimensions)
17 {
19 canonicalText ??
20 throw new ArgumentNullException(nameof(canonicalText));
21
23 universalNotationText ??
24 throw new ArgumentNullException(nameof(universalNotationText));
25
27 legacyProblemFamily ??
28 throw new ArgumentNullException(nameof(legacyProblemFamily));
29
31 dimensions ??
32 throw new ArgumentNullException(nameof(dimensions));
33 }
34
35 public string SchemeVersion => "1.0";
36
37 public string CanonicalText { get; }
38
39 public string UniversalNotationText { get; }
40
41 public string LegacyProblemFamily { get; }
42
43 public IReadOnlyDictionary<string, string> Dimensions { get; }
44
45 public override string ToString() => CanonicalText;
46}
Lsi10Projection(string canonicalText, string universalNotationText, string legacyProblemFamily, IReadOnlyDictionary< string, string > dimensions)
IReadOnlyDictionary< string, string > Dimensions