From 8316b628bbc9945fd1d08305317cf49a6482801f Mon Sep 17 00:00:00 2001 From: Johannes Stoelp Date: Sun, 5 Mar 2023 22:20:48 +0100 Subject: Added CALL and call extern fn example --- src/rt.rs | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/rt.rs') diff --git a/src/rt.rs b/src/rt.rs index 1e9289e..7b5f74b 100644 --- a/src/rt.rs +++ b/src/rt.rs @@ -11,7 +11,7 @@ pub struct Runtime { impl Runtime { /// Create a new [Runtime]. - pub fn new(code: &[u8]) -> Runtime { + pub fn new(code: impl AsRef<[u8]>) -> Runtime { // Allocate a single page. let len = core::num::NonZeroUsize::new(4096).unwrap(); let buf = unsafe { @@ -27,6 +27,7 @@ impl Runtime { }; { // Copy over code. + let code = code.as_ref(); assert!(code.len() < len.get()); unsafe { std::ptr::copy_nonoverlapping(code.as_ptr(), buf.cast(), len.get()) }; } -- cgit v1.2.3