WriteFunction.cs 550 B

1234567891011121314
  1. namespace Lua.Standard.IO;
  2. public sealed class WriteFunction : LuaFunction
  3. {
  4. public override string Name => "write";
  5. public static readonly WriteFunction Instance = new();
  6. protected override ValueTask<int> InvokeAsyncCore(LuaFunctionExecutionContext context, Memory<LuaValue> buffer, CancellationToken cancellationToken)
  7. {
  8. var file = context.State.Environment["io"].Read<LuaTable>()["stdout"].Read<FileHandle>();
  9. var resultCount = IOHelper.Write(file, Name, context, buffer);
  10. return new(resultCount);
  11. }
  12. }