Crate catlog_wasm

Source
Expand description

Rust-TypeScript interop for categorical logic.

This crate provides WebAssembly (Wasm) bindings for the catlog crate using Rust’s wasm-bindgen. The aim is to keep the logic here as simple as possible, with catlog doing all the real work. However, the translation is nontrivial because there is a single, catch-all type definition for a double theory in TypeScript, but several kinds of double theories implemented in Rust (discrete theories, modal theories, and so on). The same is true for other structures, such as models of theories and diagrams in models.

Modules§

analyses
Auxiliary structs for data passed to/from analyses.
model
Wasm bindings for models of a double theory.
model_diagram
Wasm bindings for diagrams in models of a double theory.
model_morphism
Wasm bindings for morphisms between models of a double theory.
notation
Traits concerning quoting and elaboration.
result
Result of fallible computation that translates to/from JavaScript.
theories
Wasm bindings for the standard library of theories in catlog.
theory
Wasm bindings for double theories.

Functions§

set_panic_hook
Set panic hook to get better error messages on panics.