private static SqDotNet.Object GenerateInstanceRef(Squirrel vm, SqClass sqClass) { sqClass.PushSelf(); vm.CreateInstance(-1); vm.GetStackObj(-1, out var obj); return(obj); }
private static SqDotNet.Object GenerateClassRef(Squirrel vm, SqClass baseClass) { var hasBase = !(baseClass is null); if (hasBase) { baseClass.PushSelf(); } vm.NewClass(hasBase); vm.GetStackObj(-1, out var obj); return(obj); }
private static SqDotNet.Object GenerateTableRef(Squirrel vm) { vm.NewTable(); vm.GetStackObj(-1, out var obj); return(obj); }
private static SqDotNet.Object GenerateUserDataRef(Squirrel vm, uint size) { vm.NewUserData(size); vm.GetStackObj(-1, out var obj); return(obj); }
private static SqDotNet.Object GenerateClosureRef(Squirrel vm, Func <Squirrel, int, int> func) { vm.NewClosure(ScriptHandler.MakeFunction(func), 0); vm.GetStackObj(-1, out var obj); return(obj); }
private static SqDotNet.Object GenerateArrayRef(Squirrel vm, int size) { vm.NewArray(size); vm.GetStackObj(-1, out var obj); return(obj); }