ffi-demo
Интеграция с C (§16.1): компилятор читает заголовок через libclang, типы C отображаются в типы OxL
(double → f64, int → i32, указатели → *T). Вызов внешней функции допустим только в unsafe, поэтому
пакет прячет его за обычной функцией.
oxl run examples/ffi-demo
oxl test examples/ffi-demoНа что смотреть:
import c "math.h" { sqrt, pow }и@nonblocking: вызов не уходит в пул блокирующих потоков.fn hypot(…) -> f64 pureсunsafe { … }внутри — безопасный интерфейс.export c fn compareInts(a: *u8, b: *u8) -> i32— функция с C ABI, имя которой передаётся вqsortкак указатель.- Сторонние библиотеки:
[deps] zlib = { c = "system", header = "zlib.h" }вoxl.tomlдобавляет-lzк линковке.