mirror of
https://github.com/mlua-rs/mlua
synced 2026-06-08 16:05:43 +00:00
Add dyn to trait objects
This commit is contained in:
+1
-1
@@ -183,7 +183,7 @@ impl fmt::Display for Error {
|
||||
}
|
||||
|
||||
impl failure::Fail for Error {
|
||||
fn cause(&self) -> Option<&failure::Fail> {
|
||||
fn cause(&self) -> Option<&dyn failure::Fail> {
|
||||
match *self {
|
||||
Error::CallbackError { ref cause, .. } => Some(cause.as_ref()),
|
||||
Error::ExternalError(ref err) => err.as_fail().cause(),
|
||||
|
||||
+1
-1
@@ -17,7 +17,7 @@ pub type Number = ffi::lua_Number;
|
||||
pub struct LightUserData(pub *mut c_void);
|
||||
|
||||
pub(crate) type Callback<'lua, 'a> =
|
||||
Box<Fn(&'lua Lua, MultiValue<'lua>) -> Result<MultiValue<'lua>> + 'a>;
|
||||
Box<dyn Fn(&'lua Lua, MultiValue<'lua>) -> Result<MultiValue<'lua>> + 'a>;
|
||||
|
||||
/// An auto generated key into the Lua registry.
|
||||
///
|
||||
|
||||
+2
-2
@@ -661,11 +661,11 @@ pub unsafe fn init_error_metatables(state: *mut ffi::lua_State) {
|
||||
}
|
||||
|
||||
struct WrappedError(pub Error);
|
||||
struct WrappedPanic(pub Option<Box<Any + Send>>);
|
||||
struct WrappedPanic(pub Option<Box<dyn Any + Send>>);
|
||||
|
||||
// Pushes a WrappedError::Panic to the top of the stack. Uses two stack spaces and does not call
|
||||
// lua_checkstack.
|
||||
unsafe fn push_wrapped_panic(state: *mut ffi::lua_State, panic: Box<Any + Send>) {
|
||||
unsafe fn push_wrapped_panic(state: *mut ffi::lua_State, panic: Box<dyn Any + Send>) {
|
||||
gc_guard(state, || {
|
||||
let ud = ffi::lua_newuserdata(state, mem::size_of::<WrappedPanic>()) as *mut WrappedPanic;
|
||||
ptr::write(ud, WrappedPanic(Some(panic)))
|
||||
|
||||
Reference in New Issue
Block a user