code wiki / _hdl_build / nx_doc_heal_let.nx

nx_doc_heal_let.nx

buildroot/runtime/_hdl_build/nx_doc_heal_let.nx

4139 B87 linesdepth 2pulls 2 transitivereach 14 importersview sourcekind librarytopic doc
docsdependenciesstructsconstsfunctions

about

nx_doc_heal_let.nx -- DOCTOR auto-fixer (doc_heal family) for the #1 empty-.s cause: a `let` binding that is later REASSIGNED (let is immutable in NishiLang -> reassign silently compile-fails to an empty .s). dhl_heal rewrites each offending `let NAME` -> `var NAME`, and ONLY those: it does NOT touch a clean `let` (never reassigned), a `==` comparison, or a `NAME[i] = ...` index-assignment (the pointer isn't reassigned). This turns the team from autonomous RECALL (NX-LET-REASSIGN) into autonomous FIX. Pure string transform; the wired Doctor runs it on an empty-.s source then recompiles. license_tier: ORIGINAL

dependencies 1 imports · 5 importers

nx_syscalls.nx nx_doc_heal_let.nx nx_doc_autoheal.nx nx_doc_constscan.nx nx_doc_heal_let_gate.nx nx_doc_kwscan.nx nx_doc_ubscan.nx

imports: nx_syscalls.nx

imported by: nx_doc_autoheal.nxnx_doc_constscan.nxnx_doc_heal_let_gate.nxnx_doc_kwscan.nxnx_doc_ubscan.nx

structs

none

consts

none

functions

9func dhl_isident(c: i64) -> i64
17func dhl_name_at(src: *u8, n: i64, pos: i64, out: *u8) -> i64
27func dhl_is_reassigned(src: *u8, n: i64, name: *u8, nl: i64, declnamepos: i64) -> i64
59func dhl_heal(src: *u8, n: i64, out: *u8, outcap: i64) -> i64