1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
//! # SOKR — Sovereign Open Kernel Runtime
//!
//! **This crate is in early design phase. No API is stable.**
//!
//! SOKR is a sovereign compute runtime where the core is immutable
//! and everything else is a plugin: IR, substrate backends, language
//! bindings, and dispatch policy.
//!
//! The core exposes exactly three operations:
//! - **Capability** — can this substrate fulfill this computation?
//! - **Dispatch** — fulfill it
//! - **Completion** — signal when fulfilled
//!
//! ## Module Structure
//!
//! - [`types`] — C ABI struct and enum definitions (`#[repr(C)]`)
//! - [`registry`] — Plugin registry for substrate management
//! - [`ffi`] — `#[no_mangle] extern "C"` function exports (unsafe)
//!
//! No assumption is made about memory model, parallelism, execution
//! time, or computation representation. Any substrate that can answer
//! three questions is a valid SOKR backend, including substrates that
//! do not yet exist.
use PanicInfo;
pub use ;
pub use *;
// Panic handler for no_std environment.
// Intentionally spins forever (halts) on panic — this is the no_std equivalent
// of aborting. In embedded contexts, this prevents undefined behavior from
// unwinding. The CPU will burn cycles; external watchdog or reset is expected.
!