|
@@ -63,20 +63,20 @@ public sealed class IOLibrary
|
|
|
|
|
|
|
|
if (context.ArgumentCount == 0 || context.Arguments[0].Type is LuaValueType.Nil)
|
|
if (context.ArgumentCount == 0 || context.Arguments[0].Type is LuaValueType.Nil)
|
|
|
{
|
|
{
|
|
|
- return new(context.Return(io["stdio"]));
|
|
|
|
|
|
|
+ return new(context.Return(io["stdin"]));
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
var arg = context.Arguments[0];
|
|
var arg = context.Arguments[0];
|
|
|
if (arg.TryRead<FileHandle>(out var file))
|
|
if (arg.TryRead<FileHandle>(out var file))
|
|
|
{
|
|
{
|
|
|
- io["stdio"] = new(file);
|
|
|
|
|
|
|
+ io["stdin"] = new(file);
|
|
|
return new(context.Return(new LuaValue(file)));
|
|
return new(context.Return(new LuaValue(file)));
|
|
|
}
|
|
}
|
|
|
else
|
|
else
|
|
|
{
|
|
{
|
|
|
var stream = File.Open(arg.ToString()!, FileMode.Open, FileAccess.ReadWrite);
|
|
var stream = File.Open(arg.ToString()!, FileMode.Open, FileAccess.ReadWrite);
|
|
|
var handle = new FileHandle(stream);
|
|
var handle = new FileHandle(stream);
|
|
|
- io["stdio"] = new(handle);
|
|
|
|
|
|
|
+ io["stdin"] = new(handle);
|
|
|
return new(context.Return(new LuaValue(handle)));
|
|
return new(context.Return(new LuaValue(handle)));
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -85,7 +85,7 @@ public sealed class IOLibrary
|
|
|
{
|
|
{
|
|
|
if (context.ArgumentCount == 0)
|
|
if (context.ArgumentCount == 0)
|
|
|
{
|
|
{
|
|
|
- var file = context.State.Environment["io"].Read<LuaTable>()["stdio"].Read<FileHandle>();
|
|
|
|
|
|
|
+ var file = context.State.Environment["io"].Read<LuaTable>()["stdin"].Read<FileHandle>();
|
|
|
return new(context.Return(new CSharpClosure("iterator", [new(file)], static (context, ct) =>
|
|
return new(context.Return(new CSharpClosure("iterator", [new(file)], static (context, ct) =>
|
|
|
{
|
|
{
|
|
|
var file = context.GetCsClosure()!.UpValues[0].Read<FileHandle>();
|
|
var file = context.GetCsClosure()!.UpValues[0].Read<FileHandle>();
|
|
@@ -167,7 +167,7 @@ public sealed class IOLibrary
|
|
|
|
|
|
|
|
public ValueTask<int> Read(LuaFunctionExecutionContext context, CancellationToken cancellationToken)
|
|
public ValueTask<int> Read(LuaFunctionExecutionContext context, CancellationToken cancellationToken)
|
|
|
{
|
|
{
|
|
|
- var file = context.State.Environment["io"].Read<LuaTable>()["stdio"].Read<FileHandle>();
|
|
|
|
|
|
|
+ var file = context.State.Environment["io"].Read<LuaTable>()["stdin"].Read<FileHandle>();
|
|
|
context.Return();
|
|
context.Return();
|
|
|
var stack = context.Thread.Stack;
|
|
var stack = context.Thread.Stack;
|
|
|
|
|
|