LotSizingDataModel.Instance
2.0.1
Lot-sizing instance representation, descriptors and problem characterization.
Loading...
Searching...
No Matches
LotSizingProblemClassAliasResolver.cs
Go to the documentation of this file.
1
namespace
LotSizingDataModel.Instance.ProblemClasses
;
2
3
/// <summary>
4
/// Resolves canonical codes and historical/literature aliases without
5
/// arbitrarily collapsing ambiguous acronyms.
6
/// </summary>
7
public
sealed
class
LotSizingProblemClassAliasResolver
8
{
9
public
LotSizingProblemClassAliasResolution
Resolve
(
10
string
query)
11
{
12
if
(
string
.IsNullOrWhiteSpace(query))
13
{
14
return
new
LotSizingProblemClassAliasResolution
(
15
query ??
string
.Empty,
16
Array.Empty<
LotSizingProblemClassDefinition
>());
17
}
18
19
string
normalized = query.Trim();
20
21
LotSizingProblemClassDefinition
[] matches =
22
LotSizingProblemClassCatalog.All
23
.Where(
24
definition =>
25
definition.Code.Equals(
26
normalized,
27
StringComparison.OrdinalIgnoreCase) ||
28
definition.Id.ToString().Equals(
29
normalized,
30
StringComparison.OrdinalIgnoreCase) ||
31
definition.Aliases.Any(
32
alias =>
33
alias.Equals(
34
normalized,
35
StringComparison.OrdinalIgnoreCase)))
36
.ToArray();
37
38
return
new
LotSizingProblemClassAliasResolution
(
39
normalized,
40
matches);
41
}
42
}
LotSizingDataModel.Instance.ProblemClasses.LotSizingProblemClassAliasResolution
Result of resolving a literature/project acronym or canonical code.
Definition
LotSizingProblemClassAliasResolution.cs:7
LotSizingDataModel.Instance.ProblemClasses.LotSizingProblemClassAliasResolver
Resolves canonical codes and historical/literature aliases without arbitrarily collapsing ambiguous a...
Definition
LotSizingProblemClassAliasResolver.cs:8
LotSizingDataModel.Instance.ProblemClasses.LotSizingProblemClassAliasResolver.Resolve
LotSizingProblemClassAliasResolution Resolve(string query)
Definition
LotSizingProblemClassAliasResolver.cs:9
LotSizingDataModel.Instance.ProblemClasses.LotSizingProblemClassCatalog.All
static IReadOnlyList< LotSizingProblemClassDefinition > All
Definition
LotSizingProblemClassCatalog.cs:175
LotSizingDataModel.Instance.ProblemClasses.LotSizingProblemClassDefinition
One canonical scientific problem-class definition.
Definition
LotSizingProblemClassDefinition.cs:10
LotSizingDataModel.Instance.ProblemClasses
Definition
CanonicalLotSizingProblemClassId.cs:1
LotSizingDataModel.Instance
ProblemClasses
LotSizingProblemClassAliasResolver.cs
Generated by
1.17.0