2025-10-03 20:00:05 +05:00

33 lines
813 B
C#

using System;
using System.Collections.Generic;
using System.Text;
namespace Language.Lua
{
public partial class WhileStmt : Statement
{
public override LuaValue Execute(LuaTable enviroment, out bool isBreak)
{
while (true)
{
LuaValue condition = this.Condition.Evaluate(enviroment);
if (condition.GetBooleanValue() == false)
{
break;
}
var returnValue = this.Body.Execute(enviroment, out isBreak);
if (returnValue != null || isBreak == true)
{
isBreak = false;
return returnValue;
}
}
isBreak = false;
return null;
}
}
}