code wiki / _hdl_build / nx_render_ascii.nx

nx_render_ascii.nx

buildroot/runtime/_hdl_build/nx_render_ascii.nx

3569 B69 linesdepth 7pulls 24 transitivereach 0 importersview sourcekind tooltopic render
docsdependenciesstructsconstsfunctions

about

nx_render_ascii.nx -- END-TO-END visual render: HTML string -> layout tree -> block geometry -> paint into a framebuffer -> ASCII dump to the terminal. Composes the gated browser pipeline organs (no new algorithms): nx_layout_from_dom + nx_layout_block + nx_paint_walk_layout + nx_paint_fb_ascii. This is rung 1 of the render-to-window arc: prove HTML renders to PIXELS, visibly. (rung 2 = an on-screen X11 window; rung 3 = wire nishi fetch -> render -> window.)

dependencies 12 imports · 0 importers

nx_syscalls.nx nx_css_tokenize.nx nx_css_apply.nx nx_css_color_decode.nx nx_layout_box.nx nx_layout_from_dom.nx nx_layout_block.nx nx_paint_solid_rect.nx nx_paint_text.nx nx_font_bitmap_5x7.nx nx_render_ascii.nx

diagram shows first 10 each side; +2 more imports, +0 more importers in the complete lists below.

imports: nx_syscalls.nxnx_css_tokenize.nxnx_css_apply.nxnx_css_color_decode.nxnx_layout_box.nxnx_layout_from_dom.nxnx_layout_block.nxnx_paint_solid_rect.nxnx_paint_text.nxnx_font_bitmap_5x7.nxnx_paint_walk_layout.nxnx_paint_fb_ascii_dump.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main r_slen sys_mmap nx_layout_tree_init nx_layout_from_dom_stack_i nx_layout_from_dom nx_layout_box_append _layout_box_at _lfd_push sys_mmap ↻ nx_html_cursor_init nx_html_next_token _scan_name _is_name _is_void_element _lc _lfd_is_chrome_start _lfd_chrome_tag _lfd_has_role_nav _lfd_name_eq _lfd_lc _lfd_has_chrome_class _lfd_src_has_sub _lfd_inline_hidden _lfd_src_has_sub ↻ nx_layout_default_display _disp_eq1 _disp_lc _disp_is_h_family _disp_lc ↻ _disp_eq2 _disp_lc ↻ _disp_eq3 _disp_lc ↻ _disp_eq4 _disp_lc ↻ _disp_eq5 _disp_lc ↻ _disp_eq6 _disp_lc ↻

structs

none

consts

none

functions

19func r_slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 1: main
21func main() -> i64