aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/rt.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/rt.rs')
-rw-r--r--src/rt.rs3
1 files changed, 2 insertions, 1 deletions
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()) };
}