wasmi-labs / wasmi

WebAssembly (Wasm) interpreter.
https://wasmi-labs.github.io/wasmi/
Apache License 2.0
1.52k stars 274 forks source link

Add `wasmi_collections` crate #1007

Closed Robbepop closed 2 months ago

Robbepop commented 2 months ago

This replaces the old wasmi_arena crate with a more versatile and general wasmi_collections crate. Inspired by wasmparser's upcoming collections module found here: https://github.com/bytecodealliance/wasm-tools/pull/1521

This allows Wasmi to be run as efficiently as possible in all supported environments via the new no-hash-maps crate feature which can be used to toggle HashMap or BTreeMap usage within the entire Wasmi crate.

image

codecov[bot] commented 2 months ago

Codecov Report

Attention: Patch coverage is 8.50440% with 312 lines in your changes are missing coverage. Please review.

Project coverage is 80.74%. Comparing base (492be5a) to head (818994f).

Files Patch % Lines
crates/collections/src/map.rs 8.63% 127 Missing :warning:
crates/collections/src/set.rs 0.00% 87 Missing :warning:
crates/collections/src/string_interner/detail.rs 0.00% 62 Missing :warning:
crates/collections/src/hash.rs 47.05% 18 Missing :warning:
crates/collections/src/string_interner.rs 0.00% 18 Missing :warning:
Additional details and impacted files ```diff @@ Coverage Diff @@ ## master #1007 +/- ## ========================================== - Coverage 81.75% 80.74% -1.01% ========================================== Files 264 269 +5 Lines 24445 24785 +340 ========================================== + Hits 19984 20012 +28 - Misses 4461 4773 +312 ```

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.