FileReadFunction.cs 603 B

123456789101112131415161718
  1. using System.Buffers.Text;
  2. using System.Text;
  3. using Lua.Internal;
  4. namespace Lua.Standard.IO;
  5. public sealed class FileReadFunction : LuaFunction
  6. {
  7. public override string Name => "read";
  8. public static readonly FileReadFunction Instance = new();
  9. protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
  10. {
  11. var file = context.ReadArgument<FileHandle>(0);
  12. var resultCount = IOHelper.Read(file, Name, context, context.Arguments[1..], buffer);
  13. return new(resultCount);
  14. }
  15. }