luaur_vm/functions/
lua_b_getmetatable.rs1use crate::functions::lua_getmetatable::lua_getmetatable;
2use crate::functions::lua_l_checkany::lua_l_checkany;
3use crate::functions::lua_l_getmetafield::lua_l_getmetafield;
4use crate::functions::lua_pushnil::lua_pushnil;
5use crate::type_aliases::lua_state::lua_State;
6
7#[no_mangle]
8pub unsafe fn lua_b_getmetatable(L: *mut lua_State) -> core::ffi::c_int {
9 lua_l_checkany(L, 1);
10
11 if lua_getmetatable(L, 1) == 0 {
12 lua_pushnil(L);
13 return 1; }
15
16 lua_l_getmetafield(L, 1, c"__metatable".as_ptr());
17 1 }