21 releases (9 stable)

2.3.0 Jun 6, 2022
2.2.1 Mar 16, 2022
2.2.0 Feb 28, 2022
2.1.1 Dec 21, 2021
1.0.0-alpha5 Nov 6, 2020

#1571 in WebAssembly

Download history 4042/week @ 2024-07-21 4035/week @ 2024-07-28 4714/week @ 2024-08-04 4353/week @ 2024-08-11 3260/week @ 2024-08-18 4525/week @ 2024-08-25 3870/week @ 2024-09-01 3359/week @ 2024-09-08 2757/week @ 2024-09-15 3444/week @ 2024-09-22 3436/week @ 2024-09-29 3041/week @ 2024-10-06 3308/week @ 2024-10-13 2694/week @ 2024-10-20 3153/week @ 2024-10-27 2819/week @ 2024-11-03

12,113 downloads per month
Used in 85 crates (9 directly)

MIT OR Apache-2.0 WITH LLVM-exception

630KB
13K SLoC

wasmer-engine Build Status Join Wasmer Slack MIT License

This crate is the general abstraction for creating Engines in Wasmer.

Wasmer Engines are mainly responsible for two things:

  • Transform the compilation code (from any Wasmer Compiler) to create an Artifact,
  • Load anArtifact so it can be used by the user (normally, pushing the code into executable memory and so on).

It currently has three implementations:

  1. Universal with wasmer-engine-universal,
  2. Native with wasmer-engine-dylib,
  3. Object with wasmer-engine-staticlib.

Example Implementation

Please check wasmer-engine-dummy for an example implementation for an Engine.

Acknowledgments

This project borrowed some of the code of the trap implementation from the wasmtime-api, the code since then has evolved significantly.

Please check Wasmer ATTRIBUTIONS to further see licenses and other attributions of the project.

Dependencies

~5–14MB
~181K SLoC