mirror of
https://github.com/mii443/wasmer.git
synced 2025-12-08 05:38:19 +00:00
Migrated internal samples to new Context API
This commit is contained in:
committed by
Manos Pitsidianakis
parent
267a09ce8e
commit
d12759f150
30
lib/api/src/sys/externals/memory.rs
vendored
30
lib/api/src/sys/externals/memory.rs
vendored
@@ -42,9 +42,11 @@ impl Memory {
|
||||
///
|
||||
/// ```
|
||||
/// # use wasmer::{Memory, MemoryType, Pages, Store, Type, Value};
|
||||
/// # use wasmer::Context as WasmerContext;
|
||||
/// # let store = Store::default();
|
||||
/// # let mut ctx = WasmerContext::new(&store, ());
|
||||
/// #
|
||||
/// let m = Memory::new(&store, MemoryType::new(1, None, false)).unwrap();
|
||||
/// let m = Memory::new(&mut ctx, MemoryType::new(1, None, false)).unwrap();
|
||||
/// ```
|
||||
pub fn new(ctx: &mut impl AsContextMut, ty: MemoryType) -> Result<Self, MemoryError> {
|
||||
let mut ctx = ctx.as_context_mut();
|
||||
@@ -63,12 +65,14 @@ impl Memory {
|
||||
///
|
||||
/// ```
|
||||
/// # use wasmer::{Memory, MemoryType, Pages, Store, Type, Value};
|
||||
/// # use wasmer::Context as WasmerContext;
|
||||
/// # let store = Store::default();
|
||||
/// # let mut ctx = WasmerContext::new(&store, ());
|
||||
/// #
|
||||
/// let mt = MemoryType::new(1, None, false);
|
||||
/// let m = Memory::new(&store, mt).unwrap();
|
||||
/// let m = Memory::new(&mut ctx, mt).unwrap();
|
||||
///
|
||||
/// assert_eq!(m.ty(), mt);
|
||||
/// assert_eq!(m.ty(&mut ctx), mt);
|
||||
/// ```
|
||||
pub fn ty(&self, ctx: &impl AsContextRef) -> MemoryType {
|
||||
self.handle.get(ctx.as_context_ref().objects()).ty()
|
||||
@@ -94,11 +98,13 @@ impl Memory {
|
||||
///
|
||||
/// ```
|
||||
/// # use wasmer::{Memory, MemoryType, Pages, Store, Type, Value};
|
||||
/// # use wasmer::Context as WasmerContext;
|
||||
/// # let store = Store::default();
|
||||
/// # let mut ctx = WasmerContext::new(&store, ());
|
||||
/// #
|
||||
/// let m = Memory::new(&store, MemoryType::new(1, None, false)).unwrap();
|
||||
/// let m = Memory::new(&mut ctx, MemoryType::new(1, None, false)).unwrap();
|
||||
///
|
||||
/// assert_eq!(m.size(), Pages(1));
|
||||
/// assert_eq!(m.size(&mut ctx), Pages(1));
|
||||
/// ```
|
||||
pub fn size(&self, ctx: &impl AsContextRef) -> Pages {
|
||||
self.handle.get(ctx.as_context_ref().objects()).size()
|
||||
@@ -111,13 +117,15 @@ impl Memory {
|
||||
///
|
||||
/// ```
|
||||
/// # use wasmer::{Memory, MemoryType, Pages, Store, Type, Value, WASM_MAX_PAGES};
|
||||
/// # use wasmer::Context as WasmerContext;
|
||||
/// # let store = Store::default();
|
||||
/// # let mut ctx = WasmerContext::new(&store, ());
|
||||
/// #
|
||||
/// let m = Memory::new(&store, MemoryType::new(1, Some(3), false)).unwrap();
|
||||
/// let p = m.grow(2).unwrap();
|
||||
/// let m = Memory::new(&mut ctx, MemoryType::new(1, Some(3), false)).unwrap();
|
||||
/// let p = m.grow(&mut ctx, 2).unwrap();
|
||||
///
|
||||
/// assert_eq!(p, Pages(1));
|
||||
/// assert_eq!(m.size(), Pages(3));
|
||||
/// assert_eq!(m.size(&mut ctx), Pages(3));
|
||||
/// ```
|
||||
///
|
||||
/// # Errors
|
||||
@@ -127,12 +135,14 @@ impl Memory {
|
||||
///
|
||||
/// ```should_panic
|
||||
/// # use wasmer::{Memory, MemoryType, Pages, Store, Type, Value, WASM_MAX_PAGES};
|
||||
/// # use wasmer::Context as WasmerContext;
|
||||
/// # let store = Store::default();
|
||||
/// # let mut ctx = WasmerContext::new(&store, ());
|
||||
/// #
|
||||
/// let m = Memory::new(&store, MemoryType::new(1, Some(1), false)).unwrap();
|
||||
/// let m = Memory::new(&mut ctx, MemoryType::new(1, Some(1), false)).unwrap();
|
||||
///
|
||||
/// // This results in an error: `MemoryError::CouldNotGrow`.
|
||||
/// let s = m.grow(1).unwrap();
|
||||
/// let s = m.grow(&mut ctx, 1).unwrap();
|
||||
/// ```
|
||||
pub fn grow<IntoPages>(
|
||||
&self,
|
||||
|
||||
Reference in New Issue
Block a user