https://github.com/gordonsmith/component-model-cpp
C++ ABI implementation of the WebAssembly Component Model
https://github.com/gordonsmith/component-model-cpp
wasm webassembly wit
Last synced: about 1 year ago
JSON representation
C++ ABI implementation of the WebAssembly Component Model
- Host: GitHub
- URL: https://github.com/gordonsmith/component-model-cpp
- Owner: GordonSmith
- License: unlicense
- Created: 2024-03-14T07:05:37.000Z (over 2 years ago)
- Default Branch: trunk
- Last Pushed: 2025-03-25T17:01:17.000Z (about 1 year ago)
- Last Synced: 2025-03-25T17:47:32.084Z (about 1 year ago)
- Topics: wasm, webassembly, wit
- Language: C++
- Homepage:
- Size: 355 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://github.com/GordonSmith/component-model-cpp/actions)
[](https://github.com/GordonSmith/component-model-cpp/actions)
[](https://github.com/GordonSmith/component-model-cpp/actions)
[](https://codecov.io/gh/GordonSmith/component-model-cpp)
# Component Model C++
This repository contains a C++ ABI implementation of the WebAssembly Component Model.
## Features
### OS
- [x] Ubuntu 24.04
- [x] MacOS 13
- [x] MacOS 14 (Arm)
- [x] Windows 2019
- [x] Windows 2022
### Host Data Types
- [x] Bool
- [x] S8
- [x] U8
- [x] S16
- [x] U16
- [x] S32
- [x] U32
- [x] S64
- [x] U64
- [x] F32
- [x] F64
- [x] Char
- [x] String
- [x] utf8 String
- [x] utf16 String
- [x] latin1+utf16 String
- [x] List
- [x] Record
- [x] Tuple
- [x] Variant
- [ ] Enum
- [ ] Option
- [ ] Result
- [x] Flags
- [ ] Own
- [ ] Borrow
### Host Functions
- [x] lower_values
- [x] lift_values
### Tests
- [x] ABI
- [ ] WasmTime
- [ ] Wamr
- [ ] WasmEdge
## Usage
TODO
## Related projects
- [**Component Model design and specification**](https://github.com/WebAssembly/component-model): Official Component Model specification.
- [**wit-bindgen c++ host**](https://github.com/cpetig/wit-bindgen): C++ host support for the WebAssembly Interface Types (WIT) Bindgen tool.
## Star History