Implement RFC 11: Redesigning Wasmtime's APIs (#2897)

Implement Wasmtime's new API as designed by RFC 11. This is quite a large commit which has had lots of discussion externally, so for more information it's best to read the RFC thread and the PR thread.
This commit is contained in:
Alex Crichton
2021-06-03 09:10:53 -05:00
committed by GitHub
parent a5a28b1c5b
commit 7a1b7cdf92
233 changed files with 13349 additions and 11997 deletions

View File

@@ -217,8 +217,9 @@ fn limit_instances() -> Result<()> {
)
"#,
)?;
let store = Store::new_with_limits(&engine, StoreLimitsBuilder::new().instances(10).build());
let err = Instance::new(&store, &module, &[]).err().unwrap();
let mut store = Store::new(&engine, ());
store.limiter(StoreLimitsBuilder::new().instances(10).build());
let err = Instance::new(&mut store, &module, &[]).err().unwrap();
assert!(
err.to_string().contains("resource limit exceeded"),
"bad error: {}",
@@ -252,8 +253,9 @@ fn limit_memories() -> Result<()> {
)
"#,
)?;
let store = Store::new_with_limits(&engine, StoreLimitsBuilder::new().memories(10).build());
let err = Instance::new(&store, &module, &[]).err().unwrap();
let mut store = Store::new(&engine, ());
store.limiter(StoreLimitsBuilder::new().memories(10).build());
let err = Instance::new(&mut store, &module, &[]).err().unwrap();
assert!(
err.to_string().contains("resource limit exceeded"),
"bad error: {}",
@@ -286,8 +288,9 @@ fn limit_tables() -> Result<()> {
)
"#,
)?;
let store = Store::new_with_limits(&engine, StoreLimitsBuilder::new().tables(10).build());
let err = Instance::new(&store, &module, &[]).err().unwrap();
let mut store = Store::new(&engine, ());
store.limiter(StoreLimitsBuilder::new().tables(10).build());
let err = Instance::new(&mut store, &module, &[]).err().unwrap();
assert!(
err.to_string().contains("resource limit exceeded"),
"bad error: {}",