Change signature of Function::dump() to remove Result
This commit is contained in:
parent
3f55958bdd
commit
e8505b5239
|
@ -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
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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");
|
||||||
|
|
||||||
|
|
|
@ -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)
|
||||||
|
|
Loading…
Reference in New Issue