Add IsString and Next helpers

This commit is contained in:
Sky Johnson 2025-02-03 18:52:26 -06:00
parent 262ada8e30
commit 229884ba97

View File

@ -185,6 +185,7 @@ func (s *State) toValueUnsafe(index int) (interface{}, error) {
// Simple operations remain unchanged as they don't need stack protection
func (s *State) GetType(index int) LuaType { return LuaType(C.lua_type(s.L, C.int(index))) }
func (s *State) IsString(index int) bool { return s.GetType(index) == TypeString }
func (s *State) IsFunction(index int) bool { return s.GetType(index) == TypeFunction }
func (s *State) IsTable(index int) bool { return s.GetType(index) == TypeTable }
func (s *State) ToBoolean(index int) bool { return C.lua_toboolean(s.L, C.int(index)) != 0 }
@ -207,6 +208,10 @@ func (s *State) PushString(str string) {
C.lua_pushstring(s.L, cstr)
}
func (s *State) Next(index int) bool {
return C.lua_next(s.L, C.int(index)) != 0
}
// Helper functions
func bool2int(b bool) int {
if b {