#wasm-module #type

unc-vm-types

unc VM Common Types

11 releases (4 breaking)

0.7.3 Apr 12, 2024
0.7.2 Apr 9, 2024
0.7.0 Mar 29, 2024
0.6.2 Mar 22, 2024
0.1.0 Mar 5, 2024

#1071 in WebAssembly

Download history 287/week @ 2024-03-03 312/week @ 2024-03-10 483/week @ 2024-03-17 150/week @ 2024-03-24 82/week @ 2024-03-31 430/week @ 2024-04-07

1,170 downloads per month
Used in 5 crates

GPL-2.0-or-later

145KB
3.5K SLoC

unc-vm-types

This crate is a fork of wasmer-types. A significant number of things changed, but the documentation is not up-to-date yet.

This library provides all the types and traits necessary to use WebAssembly easily anywhere.

Among other things, it defines the following types:

  • units like Pages or Bytes
  • types and values like I32, I64, F32, F64, ExternRef, FuncRef, V128, value conversions, ExternType, FunctionType etc.
  • native contains a set of trait and implementations to deal with WebAssembly types that have a direct representation on the host,
  • memory_view, an API to read/write memories when bytes are interpreted as particular types (i8, i16, i32 etc.)
  • indexes contains all the possible WebAssembly module indexes for various types
  • initializers for tables, data etc.
  • features to enable or disable some WebAssembly features inside the Wasmer runtime

Acknowledgments

This project borrowed some of the code for the entity structure from cranelift-entity. We decided to move it here to help on serialization/deserialization and also to ease the integration with other tools like loupe.

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

Dependencies

~2.5MB
~55K SLoC