Ensure all FS shim classes are updated for 14.0.0

This commit is contained in:
Alex Barney 2022-04-30 13:28:53 -07:00
parent 366aa51912
commit c2e4b80bac
24 changed files with 69 additions and 36 deletions

View file

@ -14,7 +14,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting application packages. /// Contains functions for mounting application packages.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class Application public static class Application
{ {

View file

@ -16,7 +16,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting BCAT save data. /// Contains functions for mounting BCAT save data.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class BcatSaveData public static class BcatSaveData
{ {

View file

@ -19,7 +19,7 @@ namespace LibHac.Fs.Shim;
/// Contains functions for mounting built-in-storage partition file systems /// Contains functions for mounting built-in-storage partition file systems
/// and opening the raw partitions as <see cref="IStorage"/>s. /// and opening the raw partitions as <see cref="IStorage"/>s.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class Bis public static class Bis
{ {

View file

@ -15,7 +15,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting code file systems. /// Contains functions for mounting code file systems.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class Code public static class Code
{ {

View file

@ -16,7 +16,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting content file systems. /// Contains functions for mounting content file systems.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class Content public static class Content
{ {

View file

@ -16,7 +16,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting the directories where content is stored. /// Contains functions for mounting the directories where content is stored.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class ContentStorage public static class ContentStorage
{ {

View file

@ -13,7 +13,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting custom storage file systems. /// Contains functions for mounting custom storage file systems.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class CustomStorage public static class CustomStorage
{ {

View file

@ -17,7 +17,7 @@ public enum DebugOptionKey : uint
/// <summary> /// <summary>
/// Contains debug-related functions for the FS service. /// Contains debug-related functions for the FS service.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class DebugShim public static class DebugShim
{ {
public static Result CreatePaddingFile(this FileSystemClient fs, long size) public static Result CreatePaddingFile(this FileSystemClient fs, long size)

View file

@ -10,12 +10,18 @@ namespace LibHac.Fs.Impl
/// <summary> /// <summary>
/// Handles getting scoped read access to the global file data cache. /// Handles getting scoped read access to the global file data cache.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
internal struct GlobalFileDataCacheAccessorReadableScopedPointer : IDisposable internal struct GlobalFileDataCacheAccessorReadableScopedPointer : IDisposable
{ {
private FileDataCacheAccessor _accessor; private FileDataCacheAccessor _accessor;
private ReaderWriterLock _lock; private ReaderWriterLock _lock;
public GlobalFileDataCacheAccessorReadableScopedPointer()
{
_accessor = null;
_lock = null;
}
public void Dispose() public void Dispose()
{ {
_lock?.ReleaseReadLock(); _lock?.ReleaseReadLock();
@ -36,6 +42,10 @@ namespace LibHac.Fs.Impl
namespace LibHac.Fs.Shim namespace LibHac.Fs.Shim
{ {
/// <summary>
/// Contains functions for configuring the global file data cache.
/// </summary>
/// <remarks>Based on nnSdk 14.3.0</remarks>
public static class FileDataCacheShim public static class FileDataCacheShim
{ {
internal struct Globals : IDisposable internal struct Globals : IDisposable

View file

@ -1,12 +1,13 @@
using System; using System;
using LibHac.Fs.Fsa; using LibHac.Fs.Fsa;
// ReSharper disable once CheckNamespace
namespace LibHac.Fs.Impl; namespace LibHac.Fs.Impl;
/// <summary> /// <summary>
/// Provides access to an <see cref="IFileDataCache"/>. /// Provides access to an <see cref="IFileDataCache"/>.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
internal class FileDataCacheAccessor internal class FileDataCacheAccessor
{ {
private readonly IFileDataCache _cache; private readonly IFileDataCache _cache;

View file

@ -21,7 +21,7 @@ namespace LibHac.Fs.Impl;
/// An adapter for using an <see cref="IFileSf"/> service object as an <see cref="IFile"/>. Used /// An adapter for using an <see cref="IFileSf"/> service object as an <see cref="IFile"/>. Used
/// when receiving a Horizon IPC file object so it can be used as an <see cref="IFile"/> locally. /// when receiving a Horizon IPC file object so it can be used as an <see cref="IFile"/> locally.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
internal class FileServiceObjectAdapter : IFile internal class FileServiceObjectAdapter : IFile
{ {
private SharedRef<IFileSf> _baseFile; private SharedRef<IFileSf> _baseFile;
@ -87,7 +87,7 @@ internal class FileServiceObjectAdapter : IFile
/// An adapter for using an <see cref="IDirectorySf"/> service object as an <see cref="IDirectory"/>. Used /// An adapter for using an <see cref="IDirectorySf"/> service object as an <see cref="IDirectory"/>. Used
/// when receiving a Horizon IPC directory object so it can be used as an <see cref="IDirectory"/> locally. /// when receiving a Horizon IPC directory object so it can be used as an <see cref="IDirectory"/> locally.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
internal class DirectoryServiceObjectAdapter : IDirectory internal class DirectoryServiceObjectAdapter : IDirectory
{ {
private SharedRef<IDirectorySf> _baseDirectory; private SharedRef<IDirectorySf> _baseDirectory;
@ -119,7 +119,7 @@ internal class DirectoryServiceObjectAdapter : IDirectory
/// An adapter for using an <see cref="IFileSystemSf"/> service object as an <see cref="IFileSystem"/>. Used /// An adapter for using an <see cref="IFileSystemSf"/> service object as an <see cref="IFileSystem"/>. Used
/// when receiving a Horizon IPC file system object so it can be used as an <see cref="IFileSystem"/> locally. /// when receiving a Horizon IPC file system object so it can be used as an <see cref="IFileSystem"/> locally.
/// </summary> /// </summary>
/// <remarks>Based on FS 13.1.0 (nnSdk 13.4.0)</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
internal class FileSystemServiceObjectAdapter : IFileSystem, IMultiCommitTarget internal class FileSystemServiceObjectAdapter : IFileSystem, IMultiCommitTarget
{ {
private SharedRef<IFileSystemSf> _baseFs; private SharedRef<IFileSystemSf> _baseFs;

View file

@ -14,6 +14,10 @@ using IStorageSf = LibHac.FsSrv.Sf.IStorage;
namespace LibHac.Fs.Shim; namespace LibHac.Fs.Shim;
/// <summary>
/// Contains functions used for mounting and interacting with the game card.
/// </summary>
/// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class GameCard public static class GameCard
{ {
@ -32,13 +36,13 @@ public static class GameCard
private class GameCardCommonMountNameGenerator : ICommonMountNameGenerator private class GameCardCommonMountNameGenerator : ICommonMountNameGenerator
{ {
private GameCardHandle Handle { get; } private readonly GameCardHandle _handle;
private GameCardPartition PartitionId { get; } private readonly GameCardPartition _partitionId;
public GameCardCommonMountNameGenerator(GameCardHandle handle, GameCardPartition partitionId) public GameCardCommonMountNameGenerator(GameCardHandle handle, GameCardPartition partitionId)
{ {
Handle = handle; _handle = handle;
PartitionId = partitionId; _partitionId = partitionId;
} }
public void Dispose() { } public void Dispose() { }
@ -50,7 +54,7 @@ public static class GameCard
// Determine how much space we need. // Determine how much space we need.
int requiredNameBufferSize = int requiredNameBufferSize =
StringUtils.GetLength(CommonMountNames.GameCardFileSystemMountName, PathTool.MountNameLengthMax) + StringUtils.GetLength(CommonMountNames.GameCardFileSystemMountName, PathTool.MountNameLengthMax) +
StringUtils.GetLength(GetGameCardMountNameSuffix(PartitionId), PathTool.MountNameLengthMax) + StringUtils.GetLength(GetGameCardMountNameSuffix(_partitionId), PathTool.MountNameLengthMax) +
handleDigitCount + 2; handleDigitCount + 2;
Assert.SdkRequiresGreaterEqual(nameBuffer.Length, requiredNameBufferSize); Assert.SdkRequiresGreaterEqual(nameBuffer.Length, requiredNameBufferSize);
@ -58,8 +62,8 @@ public static class GameCard
// Generate the name. // Generate the name.
var sb = new U8StringBuilder(nameBuffer); var sb = new U8StringBuilder(nameBuffer);
sb.Append(CommonMountNames.GameCardFileSystemMountName) sb.Append(CommonMountNames.GameCardFileSystemMountName)
.Append(GetGameCardMountNameSuffix(PartitionId)) .Append(GetGameCardMountNameSuffix(_partitionId))
.AppendFormat(Handle.Value, 'x', (byte)handleDigitCount) .AppendFormat(_handle.Value, 'x', (byte)handleDigitCount)
.Append(StringTraits.DriveSeparator); .Append(StringTraits.DriveSeparator);
Assert.SdkEqual(sb.Length, requiredNameBufferSize - 1); Assert.SdkEqual(sb.Length, requiredNameBufferSize - 1);
@ -180,4 +184,4 @@ public static class GameCard
outStorage.Set(ref storageAdapter.Ref()); outStorage.Set(ref storageAdapter.Ref());
return Result.Success; return Result.Success;
} }
} }

View file

@ -19,7 +19,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting file systems from a host computer. /// Contains functions for mounting file systems from a host computer.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class Host public static class Host
{ {

View file

@ -7,7 +7,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for use by the Loader service. /// Contains functions for use by the Loader service.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class LoaderApi public static class LoaderApi
{ {
public static Result IsArchivedProgram(this FileSystemClient fs, out bool isArchived, ProcessId processId) public static Result IsArchivedProgram(this FileSystemClient fs, out bool isArchived, ProcessId processId)

View file

@ -6,7 +6,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for setting the current time used by FS. /// Contains functions for setting the current time used by FS.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class PosixTimeShim public static class PosixTimeShim
{ {
public static Result SetCurrentPosixTime(this FileSystemClient fs, Time.PosixTime currentPosixTime, public static Result SetCurrentPosixTime(this FileSystemClient fs, Time.PosixTime currentPosixTime,

View file

@ -9,7 +9,7 @@ namespace LibHac.Fs.Shim;
/// Contains functions for registering multi-program application /// Contains functions for registering multi-program application
/// information of the currently running application with FS. /// information of the currently running application with FS.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class ProgramIndexMapInfoShim public static class ProgramIndexMapInfoShim
{ {
/// <summary> /// <summary>

View file

@ -12,7 +12,7 @@ namespace LibHac.Fs.Shim;
/// Contains functions for registering and unregistering currently running /// Contains functions for registering and unregistering currently running
/// processes and their permissions in the FS program registry. /// processes and their permissions in the FS program registry.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class ProgramRegistry public static class ProgramRegistry
{ {
/// <inheritdoc cref="ProgramRegistryImpl.RegisterProgram"/> /// <inheritdoc cref="ProgramRegistryImpl.RegisterProgram"/>

View file

@ -8,7 +8,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for working with rights IDs and external keys for NCA encryption. /// Contains functions for working with rights IDs and external keys for NCA encryption.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class RightsIdShim public static class RightsIdShim
{ {
public static Result GetRightsId(this FileSystemClient fs, out RightsId rightsId, ProgramId programId, public static Result GetRightsId(this FileSystemClient fs, out RightsId rightsId, ProgramId programId,

View file

@ -12,7 +12,7 @@ namespace LibHac.Fs.Impl;
/// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataChunkIterator"/> /// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataChunkIterator"/>
/// IPC service object via the non-IPC <see cref="ISaveDataChunkIterator"/> interface. /// IPC service object via the non-IPC <see cref="ISaveDataChunkIterator"/> interface.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataChunkIterator : ISaveDataChunkIterator public class SaveDataChunkIterator : ISaveDataChunkIterator
{ {
private SharedRef<FsSrv.Sf.ISaveDataChunkIterator> _baseInterface; private SharedRef<FsSrv.Sf.ISaveDataChunkIterator> _baseInterface;
@ -61,7 +61,7 @@ public class SaveDataChunkIterator : ISaveDataChunkIterator
/// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataChunkExporter"/> /// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataChunkExporter"/>
/// IPC service object via the non-IPC <see cref="ISaveDataChunkExporter"/> interface. /// IPC service object via the non-IPC <see cref="ISaveDataChunkExporter"/> interface.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataChunkExporter : ISaveDataChunkExporter public class SaveDataChunkExporter : ISaveDataChunkExporter
{ {
private SharedRef<FsSrv.Sf.ISaveDataChunkExporter> _baseInterface; private SharedRef<FsSrv.Sf.ISaveDataChunkExporter> _baseInterface;
@ -108,7 +108,7 @@ public class SaveDataChunkExporter : ISaveDataChunkExporter
/// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataChunkImporter"/> /// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataChunkImporter"/>
/// IPC service object via the non-IPC <see cref="ISaveDataChunkImporter"/> interface. /// IPC service object via the non-IPC <see cref="ISaveDataChunkImporter"/> interface.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataChunkImporter : ISaveDataChunkImporter public class SaveDataChunkImporter : ISaveDataChunkImporter
{ {
private SharedRef<FsSrv.Sf.ISaveDataChunkImporter> _baseInterface; private SharedRef<FsSrv.Sf.ISaveDataChunkImporter> _baseInterface;
@ -141,7 +141,7 @@ public class SaveDataChunkImporter : ISaveDataChunkImporter
/// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataDivisionExporter"/> /// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataDivisionExporter"/>
/// IPC service object via the non-IPC <see cref="ISaveDataDivisionExporter"/> interface. /// IPC service object via the non-IPC <see cref="ISaveDataDivisionExporter"/> interface.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataExporterVersion2 : ISaveDataDivisionExporter public class SaveDataExporterVersion2 : ISaveDataDivisionExporter
{ {
private SharedRef<FsSrv.Sf.ISaveDataDivisionExporter> _baseInterface; private SharedRef<FsSrv.Sf.ISaveDataDivisionExporter> _baseInterface;
@ -320,7 +320,7 @@ public class SaveDataExporterVersion2 : ISaveDataDivisionExporter
/// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataDivisionImporter"/> /// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataDivisionImporter"/>
/// IPC service object via the non-IPC <see cref="ISaveDataDivisionImporter"/> interface. /// IPC service object via the non-IPC <see cref="ISaveDataDivisionImporter"/> interface.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataImporterVersion2 : ISaveDataDivisionImporter public class SaveDataImporterVersion2 : ISaveDataDivisionImporter
{ {
private SharedRef<FsSrv.Sf.ISaveDataDivisionImporter> _baseInterface; private SharedRef<FsSrv.Sf.ISaveDataDivisionImporter> _baseInterface;

View file

@ -14,6 +14,11 @@ using static LibHac.Fs.SaveData;
// ReSharper disable once CheckNamespace // ReSharper disable once CheckNamespace
namespace LibHac.Fs namespace LibHac.Fs
{ {
/// <summary>
/// An adapter for interacting with an <see cref="FsSrv.Sf.ISaveDataTransferManagerWithDivision"/>
/// IPC service object.
/// </summary>
/// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataTransferManagerVersion2 : IDisposable public class SaveDataTransferManagerVersion2 : IDisposable
{ {
private SharedRef<ISaveDataTransferManagerWithDivision> _baseInterface; private SharedRef<ISaveDataTransferManagerWithDivision> _baseInterface;
@ -253,6 +258,11 @@ namespace LibHac.Fs
} }
} }
/// <summary>
/// An adapter that automatically closes a given <see cref="FsSrv.Sf.ISaveDataTransferProhibiter"/>
/// IPC service object when disposed.
/// </summary>
/// <remarks>Based on nnSdk 14.3.0</remarks>
public class SaveDataTransferProhibiterForCloudBackUp : IDisposable public class SaveDataTransferProhibiterForCloudBackUp : IDisposable
{ {
private SharedRef<ISaveDataTransferProhibiter> _prohibiter; private SharedRef<ISaveDataTransferProhibiter> _prohibiter;
@ -271,6 +281,10 @@ namespace LibHac.Fs
namespace LibHac.Fs.Shim namespace LibHac.Fs.Shim
{ {
/// <summary>
/// Contains functions used when doing save data cloud backup.
/// </summary>
/// <remarks>Based on nnSdk 14.3.0</remarks>
public static class SaveDataTransferVersion2Shim public static class SaveDataTransferVersion2Shim
{ {
public static Result OpenSaveDataTransferProhibiterForCloudBackUp(this FileSystemClientImpl fs, public static Result OpenSaveDataTransferProhibiterForCloudBackUp(this FileSystemClientImpl fs,

View file

@ -12,6 +12,10 @@ using IFileSystemSf = LibHac.FsSrv.Sf.IFileSystem;
namespace LibHac.Fs.Shim; namespace LibHac.Fs.Shim;
/// <summary>
/// Contains functions used for mounting and interacting with the SD card.
/// </summary>
/// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class SdCard public static class SdCard
{ {
@ -207,4 +211,4 @@ public static class SdCard
fs.AbortIfNeeded(rc); fs.AbortIfNeeded(rc);
return rc; return rc;
} }
} }

View file

@ -5,7 +5,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for suspending, resuming, and checking sdmmc status. /// Contains functions for suspending, resuming, and checking sdmmc status.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class SdmmcControl public static class SdmmcControl
{ {
public static Result GetSdmmcConnectionStatus(this FileSystemClient fs, out SdmmcSpeedMode speedMode, public static Result GetSdmmcConnectionStatus(this FileSystemClient fs, out SdmmcSpeedMode speedMode,

View file

@ -9,7 +9,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for checking if a mounted file system was created from a signed system partition. /// Contains functions for checking if a mounted file system was created from a signed system partition.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
public static class SignedSystemPartition public static class SignedSystemPartition
{ {
public static bool IsValidSignedSystemPartitionOnSdCard(this FileSystemClient fs, U8Span path) public static bool IsValidSignedSystemPartitionOnSdCard(this FileSystemClient fs, U8Span path)

View file

@ -16,7 +16,7 @@ namespace LibHac.Fs.Shim;
/// <summary> /// <summary>
/// Contains functions for mounting system save data file systems. /// Contains functions for mounting system save data file systems.
/// </summary> /// </summary>
/// <remarks>Based on nnSdk 13.4.0</remarks> /// <remarks>Based on nnSdk 14.3.0</remarks>
[SkipLocalsInit] [SkipLocalsInit]
public static class SystemSaveData public static class SystemSaveData
{ {