luaur_vm/functions/
lua_namecallatom.rs1use crate::macros::atom_undef::ATOM_UNDEF;
2use crate::macros::getstr::getstr;
3use crate::macros::lua_s_updateatom::luaS_updateatom;
4use crate::records::lua_state::lua_State;
5use crate::records::t_string::TString;
6use crate::type_aliases::lua_state::lua_State as lua_State_alias;
7use crate::type_aliases::t_string::TString as TString_alias;
8
9#[allow(non_snake_case)]
10pub unsafe fn lua_namecallatom(
11 L: *mut lua_State_alias,
12 atom: *mut i32,
13) -> *const core::ffi::c_char {
14 let s = (*L).namecall;
15 if s.is_null() {
16 return core::ptr::null();
17 }
18 if !atom.is_null() {
19 luaS_updateatom!(L, s);
20 *atom = (*s).atom as i32;
21 }
22 getstr(s)
23}