diff --git a/sandbox/ConsoleApp1/Program.cs b/sandbox/ConsoleApp1/Program.cs index 754fa7be..4e5caf35 100644 --- a/sandbox/ConsoleApp1/Program.cs +++ b/sandbox/ConsoleApp1/Program.cs @@ -34,7 +34,7 @@ var count = await state.RootAccess.RunAsync(closure); Console.WriteLine("Result " + new string('-', 50)); - using var results = state.RootAccess.ReadReturnValues(count); + using var results = state.RootAccess.ReadTopValues(count); for (int i = 0; i < count; i++) { Console.WriteLine(results[i]); diff --git a/sandbox/ConsoleApp2/Program.cs b/sandbox/ConsoleApp2/Program.cs index 29cdaec3..51298237 100644 --- a/sandbox/ConsoleApp2/Program.cs +++ b/sandbox/ConsoleApp2/Program.cs @@ -11,7 +11,7 @@ var access = threadLease.Thread.RootAccess; { var count = await access.RunAsync(closure, 0); - var results = access.ReadReturnValues(count); + var results = access.ReadTopValues(count); for (int i = 0; i < results.Length; i++) { Console.WriteLine(results[i]); @@ -21,7 +21,7 @@ results.Dispose(); access.Push("hello", "world", 1, 2, 3); count = await access.RunAsync(f, 5); - results = access.ReadReturnValues(count); + results = access.ReadTopValues(count); for (int i = 0; i < results.Length; i++) { Console.WriteLine(results[i]); diff --git a/src/Lua/LuaReturnValuesReader.cs b/src/Lua/LuaTopValuesReader.cs similarity index 79% rename from src/Lua/LuaReturnValuesReader.cs rename to src/Lua/LuaTopValuesReader.cs index 88a064c6..695389c9 100644 --- a/src/Lua/LuaReturnValuesReader.cs +++ b/src/Lua/LuaTopValuesReader.cs @@ -2,12 +2,12 @@ namespace Lua; -public readonly struct LuaReturnValuesReader : IDisposable +public readonly struct LuaTopValuesReader : IDisposable { readonly LuaStack stack; readonly int returnBase; - internal LuaReturnValuesReader(LuaStack stack, int returnBase) + internal LuaTopValuesReader(LuaStack stack, int returnBase) { this.stack = stack; this.returnBase = returnBase; diff --git a/src/Lua/Runtime/LuaThreadAccessExtensions.cs b/src/Lua/Runtime/LuaThreadAccessExtensions.cs index 9da7d4a0..3b05d515 100644 --- a/src/Lua/Runtime/LuaThreadAccessExtensions.cs +++ b/src/Lua/Runtime/LuaThreadAccessExtensions.cs @@ -39,7 +39,7 @@ public static async ValueTask DoFileAsync(this LuaThreadAccess access, stri access.ThrowIfInvalid(); var closure = await access.State.LoadFileAsync(path, "bt", null, cancellationToken); var count = await access.RunAsync(closure, 0, cancellationToken); - using var results = access.ReadReturnValues(count); + using var results = access.ReadTopValues(count); results.AsSpan()[..Math.Min(buffer.Length, results.Length)].CopyTo(buffer.Span); return results.Count; } @@ -48,7 +48,7 @@ public static async ValueTask DoFileAsync(this LuaThreadAccess acces { var closure = await access.State.LoadFileAsync(path, "bt", null, cancellationToken); var count = await access.RunAsync(closure, 0, cancellationToken); - using var results = access.ReadReturnValues(count); + using var results = access.ReadTopValues(count); return results.AsSpan().ToArray(); } @@ -56,7 +56,7 @@ public static async ValueTask ExecuteAsync(this LuaThreadAccess access, Lua { access.ThrowIfInvalid(); var count = await access.RunAsync(closure, 0, cancellationToken); - using var results = access.ReadReturnValues(count); + using var results = access.ReadTopValues(count); results.AsSpan()[..Math.Min(buffer.Length, results.Length)].CopyTo(buffer.Span); return results.Count; } @@ -65,7 +65,7 @@ public static async ValueTask ExecuteAsync(this LuaThreadAccess acce { access.ThrowIfInvalid(); var count = await access.RunAsync(closure, 0, cancellationToken); - using var results = access.ReadReturnValues(count); + using var results = access.ReadTopValues(count); return results.AsSpan().ToArray(); } @@ -93,11 +93,11 @@ public static LuaValue Pop(this LuaThreadAccess access) return access.Stack.Pop(); } - public static LuaReturnValuesReader ReadReturnValues(this LuaThreadAccess access, int argumentCount) + public static LuaTopValuesReader ReadTopValues(this LuaThreadAccess access, int argumentCount) { access.ThrowIfInvalid(); var stack = access.Stack; - return new LuaReturnValuesReader(stack, stack.Count - argumentCount); + return new LuaTopValuesReader(stack, stack.Count - argumentCount); } public static ValueTask Add(this LuaThreadAccess access, LuaValue x, LuaValue y, CancellationToken cancellationToken = default) @@ -313,7 +313,7 @@ static async ValueTask Impl(LuaThreadAccess access, int funcIndex, C { await LuaVirtualMachine.Call(access.Thread, funcIndex, funcIndex, cancellationToken); var count = access.Stack.Count - funcIndex; - using var results = access.ReadReturnValues(count); + using var results = access.ReadTopValues(count); return results.AsSpan().ToArray(); } } diff --git a/src/Lua/Standard/StringLibrary.cs b/src/Lua/Standard/StringLibrary.cs index 31f3a4d6..32857b29 100644 --- a/src/Lua/Standard/StringLibrary.cs +++ b/src/Lua/Standard/StringLibrary.cs @@ -573,7 +573,7 @@ public async ValueTask GSub(LuaFunctionExecutionContext context, Cancellati // No captures, pass whole match stack.Push(s.AsSpan(sIdx, res - sIdx).ToString()); var retCount = await context.Access.RunAsync(func, 1, cancellationToken); - using var results = context.Access.ReadReturnValues(retCount); + using var results = context.Access.ReadTopValues(retCount); result = results.Count > 0 ? results[0] : LuaValue.Nil; } else @@ -593,7 +593,7 @@ public async ValueTask GSub(LuaFunctionExecutionContext context, Cancellati } var retCount = await context.Access.RunAsync(func, matchState.Level, cancellationToken); - using var results = context.Access.ReadReturnValues(retCount); + using var results = context.Access.ReadTopValues(retCount); result = results.Count > 0 ? results[0] : LuaValue.Nil; } }