#oc-wasm #minecraft #opencomputers #system-interface #wasm-interface

no-std oc-wasm-safe

Safe but low-level wrappers around the OC-Wasm system call interface

8 releases (5 breaking)

0.12.0 Apr 6, 2024
0.5.0 Jan 8, 2024
0.4.0 Dec 30, 2022
0.3.1 Nov 18, 2022
0.1.1 Jul 26, 2021

#733 in Games

Download history 77/week @ 2023-12-22 9/week @ 2023-12-29 95/week @ 2024-01-05 109/week @ 2024-01-12 107/week @ 2024-01-19 296/week @ 2024-01-26 142/week @ 2024-02-02 144/week @ 2024-02-09 298/week @ 2024-02-16 160/week @ 2024-02-23 246/week @ 2024-03-01 171/week @ 2024-03-08 188/week @ 2024-03-15 188/week @ 2024-03-22 208/week @ 2024-03-29 406/week @ 2024-04-05

1,025 downloads per month
Used in 6 crates (5 directly)

GPL-3.0-only

88KB
1K SLoC

OC-Wasm-safe provides a memory-safe but low-level API for Rust code running on OpenComputers computers running the OC-Wasm architecture. This crate provides access to the full capabilities of OpenComputers as well as any other mods that add OpenComputers interoperability by means of Components or Signals. It is generally not meant to be used alone, but rather to provide some useful APIs directly while also serving as a building block for more ergonomic APIs where appropriate.


lib.rs:

This crate provides safe but low-level for the Wasm imports available in the OC-Wasm environment.

Features

The panic feature controls how certain system call errors which should be impossible are handled. When the feature is enabled, a panic is generated in those situations. When the feature is disabled, a Wasm unreachable (trap) instruction is executed instead; this produces smaller code but less useful error messages.

The std feature controls whether error::Error implements std::error::Error, which it cannot do in a no_std environment.

Dependencies

~645KB
~13K SLoC