Skip to content
Beskid Platform specification

Beskid

Jump to a Beskid service

Beskid

Jump to a Beskid service

Export attribute

Spec standingStandard

Owner
Piotr Mikstacki
Submitter
Piotr Mikstacki

Export applies to pub function definitions only in v0.3 Standard. Contract methods, types, and modules must not use Export until a future profile promotes contract vtables.

FieldRequiredMeaning
Abiyes"C" for v0.3 Standard
SymbolnoExported linker symbol; default is the Beskid function name (unmangled)

Example:

[Export(Abi:"C", Symbol:"beskid_plugin_init")]
pub i64 plugin_init(i64 host_api_version) {
return 0;
}

Export functions must use the same type set as Extern import methods in v0.3.0 (interop view types).

Exported symbols must be emitted with global linkage visible to the platform linker. The build driver must include Beskid-generated objects and the runtime static archive per backend docs.

Panics in exported functions must be treated as non-returning traps across the boundary (error and unwind).