|
|
@@ -0,0 +1,22 @@
|
|
|
+using Lua.IO;
|
|
|
+using Lua.Loaders;
|
|
|
+
|
|
|
+namespace Lua.Platforms;
|
|
|
+
|
|
|
+/// <summary>
|
|
|
+/// Platform abstraction for Lua.
|
|
|
+/// </summary>
|
|
|
+/// <param name="FileSystem"></param>
|
|
|
+/// <param name="OperatingSystem"></param>
|
|
|
+/// <param name="StandardIO"></param>
|
|
|
+public sealed record LuaPlatform(ILuaFileSystem FileSystem , ILuaOperatingSystem OperatingSystem,ILuaStandardIO StandardIO): ILuaPlatform
|
|
|
+{
|
|
|
+ /// <summary>
|
|
|
+ /// Standard console platform implementation.
|
|
|
+ /// Uses real file system, console I/O, and system operations.
|
|
|
+ /// </summary>
|
|
|
+ public static LuaPlatform Default => new(
|
|
|
+ FileSystem: new FileSystem(),
|
|
|
+ OperatingSystem: new OperatingSystem(),
|
|
|
+ StandardIO: new ConsoleStandardIO());
|
|
|
+}
|