mirror of
https://github.com/claunia/SabreTools.git
synced 2025-12-16 19:14:27 +00:00
Add and use Endianness enum
This commit is contained in:
@@ -208,6 +208,33 @@ namespace SabreTools.Library.Tools
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get Endianness value from input string
|
||||
/// </summary>
|
||||
/// <param name="endianness">String to get value from</param>
|
||||
/// <returns>Endianness value corresponding to the string</returns>
|
||||
public static Endianness AsEndianness(this string endianness)
|
||||
{
|
||||
#if NET_FRAMEWORK
|
||||
switch (endianness?.ToLowerInvariant())
|
||||
{
|
||||
case "big":
|
||||
return Endianness.Big;
|
||||
case "little":
|
||||
return Endianness.Little;
|
||||
default:
|
||||
return Endianness.NULL;
|
||||
}
|
||||
#else
|
||||
return endianness?.ToLowerInvariant() switch
|
||||
{
|
||||
"big" => Endianness.Big,
|
||||
"little" => Endianness.Little,
|
||||
_ => Endianness.NULL,
|
||||
};
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get FeatureStatus value from input string
|
||||
/// </summary>
|
||||
@@ -2207,6 +2234,33 @@ namespace SabreTools.Library.Tools
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get string value from input Endianness
|
||||
/// </summary>
|
||||
/// <param name="endianness">Endianness to get value from</param>
|
||||
/// <returns>String value corresponding to the Endianness</returns>
|
||||
public static string FromEndianness(this Endianness endianness)
|
||||
{
|
||||
#if NET_FRAMEWORK
|
||||
switch (endianness)
|
||||
{
|
||||
case Endianness.Big:
|
||||
return "big";
|
||||
case Endianness.Little:
|
||||
return "little";
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
#else
|
||||
return endianness switch
|
||||
{
|
||||
Endianness.Big => "big",
|
||||
Endianness.Little => "little",
|
||||
_ => null,
|
||||
};
|
||||
#endif
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Get string value from input FeatureStatus
|
||||
/// </summary>
|
||||
|
||||
Reference in New Issue
Block a user