|
@@ -50,6 +50,15 @@ public static class OpenLibExtensions
|
|
|
SelectFunction.Instance,
|
|
SelectFunction.Instance,
|
|
|
];
|
|
];
|
|
|
|
|
|
|
|
|
|
+ static readonly LuaFunction[] coroutineFunctions = [
|
|
|
|
|
+ CoroutineCreateFunction.Instance,
|
|
|
|
|
+ CoroutineResumeFunction.Instance,
|
|
|
|
|
+ CoroutineYieldFunction.Instance,
|
|
|
|
|
+ CoroutineStatusFunction.Instance,
|
|
|
|
|
+ CoroutineRunningFunction.Instance,
|
|
|
|
|
+ CoroutineWrapFunction.Instance,
|
|
|
|
|
+ ];
|
|
|
|
|
+
|
|
|
static readonly LuaFunction[] mathFunctions = [
|
|
static readonly LuaFunction[] mathFunctions = [
|
|
|
AbsFunction.Instance,
|
|
AbsFunction.Instance,
|
|
|
AcosFunction.Instance,
|
|
AcosFunction.Instance,
|
|
@@ -156,13 +165,11 @@ public static class OpenLibExtensions
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
// coroutine
|
|
// coroutine
|
|
|
- var coroutine = new LuaTable(0, 6);
|
|
|
|
|
- coroutine[CoroutineCreateFunction.FunctionName] = new CoroutineCreateFunction();
|
|
|
|
|
- coroutine[CoroutineResumeFunction.FunctionName] = new CoroutineResumeFunction();
|
|
|
|
|
- coroutine[CoroutineYieldFunction.FunctionName] = new CoroutineYieldFunction();
|
|
|
|
|
- coroutine[CoroutineStatusFunction.FunctionName] = new CoroutineStatusFunction();
|
|
|
|
|
- coroutine[CoroutineRunningFunction.FunctionName] = new CoroutineRunningFunction();
|
|
|
|
|
- coroutine[CoroutineWrapFunction.FunctionName] = new CoroutineWrapFunction();
|
|
|
|
|
|
|
+ var coroutine = new LuaTable(0, coroutineFunctions.Length);
|
|
|
|
|
+ foreach (var func in coroutineFunctions)
|
|
|
|
|
+ {
|
|
|
|
|
+ state.Environment[func.Name] = func;
|
|
|
|
|
+ }
|
|
|
|
|
|
|
|
state.Environment["coroutine"] = coroutine;
|
|
state.Environment["coroutine"] = coroutine;
|
|
|
}
|
|
}
|