Browse Source

Change: IOHelper.Read arguments order

AnnulusGames 1 year ago
parent
commit
1050fdae50

+ 1 - 1
src/Lua/Standard/IO/FileLinesFunction.cs

@@ -22,7 +22,7 @@ public sealed class FileLinesFunction : LuaFunction
 
 
         protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
         protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
         {
         {
-            var resultCount = IOHelper.Read(file, Name, 0, true, context, formats, buffer);
+            var resultCount = IOHelper.Read(context.State, file, Name, 0, formats, buffer, true);
             return new(resultCount);
             return new(resultCount);
         }
         }
     }
     }

+ 1 - 1
src/Lua/Standard/IO/FileReadFunction.cs

@@ -12,7 +12,7 @@ public sealed class FileReadFunction : LuaFunction
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     {
     {
         var file = context.ReadArgument<FileHandle>(0);
         var file = context.ReadArgument<FileHandle>(0);
-        var resultCount = IOHelper.Read(file, Name, 1, false, context, context.Arguments[1..], buffer);
+        var resultCount = IOHelper.Read(context.State, file, Name, 1, context.Arguments[1..], buffer, false);
         return new(resultCount);
         return new(resultCount);
     }
     }
 }
 }

+ 1 - 1
src/Lua/Standard/IO/FileWriteFunction.cs

@@ -8,7 +8,7 @@ public sealed class FileWriteFunction : LuaFunction
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     {
     {
         var file = context.ReadArgument<FileHandle>(0);
         var file = context.ReadArgument<FileHandle>(0);
-        var resultCount = IOHelper.Write(file, Name, context, buffer, cancellationToken);
+        var resultCount = IOHelper.Write(file, Name, context, buffer);
         return new(resultCount);
         return new(resultCount);
     }
     }
 }
 }

+ 4 - 4
src/Lua/Standard/IO/IOHelper.cs

@@ -45,7 +45,7 @@ internal static class IOHelper
 
 
     // TODO: optimize (use IBuffertWrite<byte>, async)
     // TODO: optimize (use IBuffertWrite<byte>, async)
 
 
-    public static int Write(FileHandle file, string name, LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
+    public static int Write(FileHandle file, string name, LuaFunctionExecutionContext context, Memory<LuaValue> buffer)
     {
     {
         try
         try
         {
         {
@@ -87,7 +87,7 @@ internal static class IOHelper
 
 
     static readonly LuaValue[] defaultReadFormat = ["*l"];
     static readonly LuaValue[] defaultReadFormat = ["*l"];
 
 
-    public static int Read(FileHandle file, string name, int startArgumentIndex, bool throwError, LuaFunctionExecutionContext context, ReadOnlySpan<LuaValue> formats, Memory<LuaValue> buffer)
+    public static int Read(LuaState state, FileHandle file, string name, int startArgumentIndex, ReadOnlySpan<LuaValue> formats, Memory<LuaValue> buffer, bool throwError)
     {
     {
         if (formats.Length == 0)
         if (formats.Length == 0)
         {
         {
@@ -126,7 +126,7 @@ internal static class IOHelper
                 {
                 {
                     if (!MathEx.IsInteger(d))
                     if (!MathEx.IsInteger(d))
                     {
                     {
-                        throw new LuaRuntimeException(context.State.GetTraceback(), $"bad argument #{i + startArgumentIndex} to 'read' (number has no integer representation)");
+                        throw new LuaRuntimeException(state.GetTraceback(), $"bad argument #{i + startArgumentIndex} to 'read' (number has no integer representation)");
                     }
                     }
 
 
                     var count = (int)d;
                     var count = (int)d;
@@ -148,7 +148,7 @@ internal static class IOHelper
                 }
                 }
                 else
                 else
                 {
                 {
-                    LuaRuntimeException.BadArgument(context.State.GetTraceback(), i + 1, name);
+                    LuaRuntimeException.BadArgument(state.GetTraceback(), i + 1, name);
                 }
                 }
             }
             }
 
 

+ 1 - 1
src/Lua/Standard/IO/LinesFunction.cs

@@ -34,7 +34,7 @@ public sealed class LinesFunction : LuaFunction
 
 
         protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
         protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
         {
         {
-            var resultCount = IOHelper.Read(file, Name, 0, true, context, formats, buffer);
+            var resultCount = IOHelper.Read(context.State, file, Name, 0, formats, buffer, true);
             if (resultCount > 0 && buffer.Span[0].Type is LuaValueType.Nil)
             if (resultCount > 0 && buffer.Span[0].Type is LuaValueType.Nil)
             {
             {
                 file.Close();
                 file.Close();

+ 1 - 1
src/Lua/Standard/IO/ReadFunction.cs

@@ -8,7 +8,7 @@ public sealed class ReadFunction : LuaFunction
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     {
     {
         var file = context.State.Environment["io"].Read<LuaTable>()["stdio"].Read<FileHandle>();
         var file = context.State.Environment["io"].Read<LuaTable>()["stdio"].Read<FileHandle>();
-        var resultCount = IOHelper.Read(file, Name, 0, false, context, context.Arguments, buffer);
+        var resultCount = IOHelper.Read(context.State, file, Name, 0, context.Arguments, buffer, false);
         return new(resultCount);
         return new(resultCount);
     }
     }
 }
 }

+ 1 - 1
src/Lua/Standard/IO/WriteFunction.cs

@@ -8,7 +8,7 @@ public sealed class WriteFunction : LuaFunction
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
     {
     {
         var file = context.State.Environment["io"].Read<LuaTable>()["stdio"].Read<FileHandle>();
         var file = context.State.Environment["io"].Read<LuaTable>()["stdio"].Read<FileHandle>();
-        var resultCount = IOHelper.Write(file, Name, context, buffer, cancellationToken);
+        var resultCount = IOHelper.Write(file, Name, context, buffer);
         return new(resultCount);
         return new(resultCount);
     }
     }
 }
 }