#[non_exhaustive]#[repr(C)]pub struct lua_Callbacks {
pub userdata: *mut c_void,
pub interrupt: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, gc: c_int)>,
pub panic: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, errcode: c_int)>,
pub userthread: Option<unsafe extern "C-unwind" fn(LP: *mut lua_State, L: *mut lua_State)>,
pub useratom: Option<unsafe extern "C-unwind" fn(s: *const c_char, l: usize) -> i16>,
pub debugbreak: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, ar: *mut lua_Debug)>,
pub debugstep: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, ar: *mut lua_Debug)>,
pub debuginterrupt: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, ar: *mut lua_Debug)>,
pub debugprotectederror: Option<unsafe extern "C-unwind" fn(L: *mut lua_State)>,
pub onallocate: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, osize: usize, nsize: usize)>,
}
Available on crate feature
luau
only.Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. }
syntax; cannot be matched against without a wildcard ..
; and struct update syntax will not work.userdata: *mut c_void
arbitrary userdata pointer that is never overwritten by Luau
interrupt: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, gc: c_int)>
gets called at safepoints (loop back edges, call/ret, gc) if set
panic: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, errcode: c_int)>
gets called when an unprotected error is raised (if longjmp is used)
userthread: Option<unsafe extern "C-unwind" fn(LP: *mut lua_State, L: *mut lua_State)>
gets called when L is created (LP == parent) or destroyed (LP == NULL)
useratom: Option<unsafe extern "C-unwind" fn(s: *const c_char, l: usize) -> i16>
gets called when a string is created; returned atom can be retrieved via tostringatom
debugbreak: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, ar: *mut lua_Debug)>
gets called when BREAK instruction is encountered
debugstep: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, ar: *mut lua_Debug)>
gets called after each instruction in single step mode
debuginterrupt: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, ar: *mut lua_Debug)>
gets called when thread execution is interrupted by break in another thread
debugprotectederror: Option<unsafe extern "C-unwind" fn(L: *mut lua_State)>
gets called when protected call results in an error
onallocate: Option<unsafe extern "C-unwind" fn(L: *mut lua_State, osize: usize, nsize: usize)>
gets called when memory is allocated
Auto Trait Implementations§
impl Freeze for lua_Callbacks
impl RefUnwindSafe for lua_Callbacks
impl !Send for lua_Callbacks
impl !Sync for lua_Callbacks
impl Unpin for lua_Callbacks
impl UnwindSafe for lua_Callbacks
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more