From 593ef3b6ace4a56e31d332a4c073e6c0a172029b Mon Sep 17 00:00:00 2001 From: Alex Beregszaszi Date: Wed, 3 Jul 2019 15:56:26 +0100 Subject: [PATCH] rust: expect output as slice in ExecutionResult --- bindings/rust/evmc-vm/src/lib.rs | 10 +++++----- examples/example-rust-vm/src/lib.rs | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/bindings/rust/evmc-vm/src/lib.rs b/bindings/rust/evmc-vm/src/lib.rs index 79d1cf5..a7acbc4 100644 --- a/bindings/rust/evmc-vm/src/lib.rs +++ b/bindings/rust/evmc-vm/src/lib.rs @@ -51,13 +51,13 @@ impl ExecutionResult { pub fn new( _status_code: ffi::evmc_status_code, _gas_left: i64, - _output: Option<&Vec>, + _output: Option<&[u8]>, ) -> Self { ExecutionResult { status_code: _status_code, gas_left: _gas_left, output: if _output.is_some() { - Some(_output.unwrap().clone()) + Some(_output.unwrap().to_vec()) } else { None }, @@ -69,7 +69,7 @@ impl ExecutionResult { ExecutionResult::new(ffi::evmc_status_code::EVMC_FAILURE, 0, None) } - pub fn success(_gas_left: i64, _output: Option<&Vec>) -> Self { + pub fn success(_gas_left: i64, _output: Option<&[u8]>) -> Self { ExecutionResult::new(ffi::evmc_status_code::EVMC_SUCCESS, _gas_left, _output) } @@ -486,7 +486,7 @@ mod tests { let r = ExecutionResult::new( ffi::evmc_status_code::EVMC_FAILURE, 420, - Some(&vec![0xc0, 0xff, 0xee, 0x71, 0x75]), + Some(&[0xc0, 0xff, 0xee, 0x71, 0x75]), ); let f: *const ffi::evmc_result = r.into(); @@ -530,7 +530,7 @@ mod tests { let r = ExecutionResult::new( ffi::evmc_status_code::EVMC_FAILURE, 420, - Some(&vec![0xc0, 0xff, 0xee, 0x71, 0x75]), + Some(&[0xc0, 0xff, 0xee, 0x71, 0x75]), ); let f: ffi::evmc_result = r.into(); diff --git a/examples/example-rust-vm/src/lib.rs b/examples/example-rust-vm/src/lib.rs index 9a84978..cb64e94 100644 --- a/examples/example-rust-vm/src/lib.rs +++ b/examples/example-rust-vm/src/lib.rs @@ -20,7 +20,7 @@ impl EvmcVm for ExampleRustVM { if is_create { ExecutionResult::failure() } else { - ExecutionResult::success(66, Some(&vec![0xc0, 0xff, 0xee])) + ExecutionResult::success(66, Some(&[0xc0, 0xff, 0xee])) } } }