Change signature of Function::dump() to remove Result

This commit is contained in:
Alex Orlenko 2021-05-02 11:48:42 +01:00
parent 3f55958bdd
commit e8505b5239
3 changed files with 5 additions and 5 deletions

View File

@ -187,7 +187,7 @@ impl<'lua> Function<'lua> {
/// ///
/// If `strip` is true, the binary representation may not include all debug information /// If `strip` is true, the binary representation may not include all debug information
/// about the function, to save space. /// about the function, to save space.
pub fn dump(&self, strip: bool) -> Result<Vec<u8>> { pub fn dump(&self, strip: bool) -> Vec<u8> {
unsafe extern "C" fn writer( unsafe extern "C" fn writer(
_state: *mut ffi::lua_State, _state: *mut ffi::lua_State,
buf: *const c_void, buf: *const c_void,
@ -213,7 +213,7 @@ impl<'lua> Function<'lua> {
ffi::lua_pop(lua.state, 1); ffi::lua_pop(lua.state, 1);
} }
Ok(data) data
} }
} }

View File

@ -83,7 +83,7 @@ fn test_dump() -> Result<()> {
let concat_lua = lua let concat_lua = lua
.load(r#"function(arg1, arg2) return arg1 .. arg2 end"#) .load(r#"function(arg1, arg2) return arg1 .. arg2 end"#)
.eval::<Function>()?; .eval::<Function>()?;
let concat = lua.load(&concat_lua.dump(false)?).into_function()?; let concat = lua.load(&concat_lua.dump(false)).into_function()?;
assert_eq!(concat.call::<_, String>(("foo", "bar"))?, "foobar"); assert_eq!(concat.call::<_, String>(("foo", "bar"))?, "foobar");

View File

@ -52,7 +52,7 @@ fn test_safety() -> Result<()> {
Ok(_) => panic!("expected SafetyError, got no error"), Ok(_) => panic!("expected SafetyError, got no error"),
} }
let bytecode = lua.load("return 1 + 1").into_function()?.dump(true)?; let bytecode = lua.load("return 1 + 1").into_function()?.dump(true);
match lua.load(&bytecode).exec() { match lua.load(&bytecode).exec() {
Err(Error::SafetyError(msg)) => { Err(Error::SafetyError(msg)) => {
assert!(msg.contains("binary chunks are disabled in safe mode")) assert!(msg.contains("binary chunks are disabled in safe mode"))
@ -162,7 +162,7 @@ fn test_load_mode() -> Result<()> {
Err(e) => panic!("expected SyntaxError, got {:?}", e), Err(e) => panic!("expected SyntaxError, got {:?}", e),
}; };
let bytecode = lua.load("return 1 + 1").into_function()?.dump(true)?; let bytecode = lua.load("return 1 + 1").into_function()?.dump(true);
assert_eq!(lua.load(&bytecode).eval::<i32>()?, 2); assert_eq!(lua.load(&bytecode).eval::<i32>()?, 2);
assert_eq!( assert_eq!(
lua.load(&bytecode) lua.load(&bytecode)