using System;
using static Ryujinx.Ui.Common.Configuration.ConfigurationState.UiSection;
namespace Ryujinx.Ui.Common
{
public static class FileTypesExtensions
{
///
/// Gets the current value for the correlating FileType name.
///
/// The name of the parameter to get the value of.
/// The config instance to get the value from.
/// The current value of the setting. Value is if the file type is the be shown on the games list, otherwise.
public static bool GetConfigValue(this FileTypes type, ShownFileTypeSettings config) => type switch
{
FileTypes.NSP => config.NSP.Value,
FileTypes.PFS0 => config.PFS0.Value,
FileTypes.XCI => config.XCI.Value,
FileTypes.NCA => config.NCA.Value,
FileTypes.NRO => config.NRO.Value,
FileTypes.NSO => config.NSO.Value,
_ => throw new ArgumentOutOfRangeException(nameof(type), type, null)
};
}
}