Skip to main content

boot_module

Function boot_module 

Source
pub fn boot_module(_table: &mut modulestab, name: &str) -> i32
Expand description

Port of boot_module(Module m) from Src/module.c:1910.

C body:

boot_module(Module m) {
    return ((m->node.flags & MOD_LINKED) ?
            (m->u.linked->boot)(m) : dyn_boot_module(m));
}

Static-link path: every modulestab entry is MOD_LINKED, so the branch collapses to (m->u.linked->boot)(m). The Rust analog of C’s m->u.linked->boot function-pointer is the per-module boot_(m) defined in src/ported/modules/<name>.rs. Dispatch via a static name → fn-pointer table.

Modules not in the dispatch table (because their per-module boot_ isn’t ported yet) fall through to 0 — same observable outcome as a no-op boot, matching pre-port behaviour. WARNING: param names don’t match C — Rust=(_table, name) vs C=(m)