namespace Lua.Standard.Mathematics; public sealed class MaxFunction : LuaFunction { public static readonly MaxFunction Instance = new(); public override string Name => "max"; protected override ValueTask InvokeAsyncCore(LuaFunctionExecutionContext context, Memory buffer, CancellationToken cancellationToken) { var x = context.GetArgument(0); for (int i = 1; i < context.ArgumentCount; i++) { x = Math.Max(x, context.GetArgument(i)); } buffer.Span[0] = x; return new(1); } }