mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add and use Relation enum
This commit is contained in:
@@ -1971,6 +1971,45 @@ namespace SabreTools.Library.Tools
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get Relation value from input string
|
||||
/// </summary>
|
||||
/// <param name="relation">String to get value from</param>
|
||||
/// <returns>Relation value corresponding to the string</returns>
|
||||
public static Relation AsRelation(this string relation)
|
||||
{
|
||||
#if NET_FRAMEWORK
|
||||
switch (relation?.ToLowerInvariant())
|
||||
{
|
||||
case "eq":
|
||||
return Relation.Equal;
|
||||
case "ne":
|
||||
return Relation.NotEqual;
|
||||
case "gt":
|
||||
return Relation.GreaterThan;
|
||||
case "le":
|
||||
return Relation.LessThanOrEqual;
|
||||
case "lt":
|
||||
return Relation.LessThan;
|
||||
case "ge":
|
||||
return Relation.GreaterThanOrEqual;
|
||||
default:
|
||||
return Relation.NULL;
|
||||
}
|
||||
#else
|
||||
return relation?.ToLowerInvariant() switch
|
||||
{
|
||||
"eq" => Relation.Equal,
|
||||
"ne" => Relation.NotEqual,
|
||||
"gt" => Relation.GreaterThan,
|
||||
"le" => Relation.LessThanOrEqual,
|
||||
"lt" => Relation.LessThan,
|
||||
"ge" => Relation.GreaterThanOrEqual,
|
||||
_ => Relation.NULL,
|
||||
};
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get Runnable value from input string
|
||||
/// </summary>
|
||||
@@ -2784,6 +2823,45 @@ namespace SabreTools.Library.Tools
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get string value from input Relation
|
||||
/// </summary>
|
||||
/// <param name="relation">Relation to get value from</param>
|
||||
/// <returns>String value corresponding to the Relation</returns>
|
||||
public static string FromRelation(this Relation relation)
|
||||
{
|
||||
#if NET_FRAMEWORK
|
||||
switch (relation)
|
||||
{
|
||||
case Relation.Equal:
|
||||
return "eq";
|
||||
case Relation.NotEqual:
|
||||
return "ne";
|
||||
case Relation.GreaterThan:
|
||||
return "gt";
|
||||
case Relation.LessThanOrEqual:
|
||||
return "le";
|
||||
case Relation.LessThan:
|
||||
return "lt";
|
||||
case Relation.GreaterThanOrEqual:
|
||||
return "ge";
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
#else
|
||||
return relation switch
|
||||
{
|
||||
Relation.Equal => "eq",
|
||||
Relation.NotEqual => "ne",
|
||||
Relation.GreaterThan => "gt",
|
||||
Relation.LessThanOrEqual => "le",
|
||||
Relation.LessThan => "lt",
|
||||
Relation.GreaterThanOrEqual => "ge",
|
||||
_ => null,
|
||||
};
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get string value from input Runnable
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user