Component diagrams ← Maps gallery

Component Diagrams

12 components69 relations312 files
Layertestingutility
calls into497 calls · 2 importscalls into19 calls · 1 importscalls into7 calls · 1 importscalls into113 calls · 0 importscalls into105 calls · 3 importscalls into1017 calls · 2 importscalls into167 calls · 7 importscalls into12 calls · 4 importscalls into4 calls · 3 importscalls into34 calls · 4 importscalls into32 calls · 2 importscalls into8 calls · 0 importscalls into2 calls · 0 importsdepends on1 calls · 2 importscalls into1 calls · 0 importscalls into2 calls · 1 importscalls into13 calls · 0 importscalls into8 calls · 0 importscalls into2 calls · 0 importscalls into103 calls · 7 importscalls into24 calls · 2 importscalls into5 calls · 1 importscalls into45 calls · 11 importscalls into10 calls · 4 importscalls into133 calls · 7 importscalls into51 calls · 4 importscalls into8 calls · 4 importscalls into35 calls · 2 importscalls into25 calls · 3 importscalls into140 calls · 6 importscalls into25 calls · 2 importscalls into17 calls · 1 importscalls into53 calls · 1 importscalls into24 calls · 0 importscalls into24 calls · 9 importscalls into13 calls · 3 importscalls into31 calls · 2 importscalls into256 calls · 0 importscalls into1 calls · 0 importscalls into115 calls · 1 importsdepends on0 calls · 1 importsdepends on11 calls · 13 importscalls into1 calls · 0 importscalls into589 calls · 7 importscalls into1 calls · 0 importscalls into49 calls · 0 importscalls into79 calls · 3 importscalls into749 calls · 8 importscalls into5 calls · 2 importsdepends on1 calls · 3 importscalls into1 calls · 0 importscalls into57 calls · 1 importscalls into2 calls · 0 importscalls into1 calls · 0 importscalls into1 calls · 0 importscalls into287 calls · 0 importscalls into8 calls · 1 importscalls into9 calls · 3 importscalls into9 calls · 1 importscalls into12 calls · 0 importscalls into10 calls · 1 importscalls into9 calls · 0 importscalls into3 calls · 0 importscalls into2 calls · 1 importscalls into10 calls · 1 importscalls into52 calls · 1 importscalls into20 calls · 0 importscalls into4 calls · 1 importscalls into5 calls · 0 importssrc: tab51 files · 1561 symbolsutilityFREEDOM_HTML_PARSE_Hhp_statusmax_bytes+1363 moreHUBinclude: tab7 files · 126 symbolsutilityFREEDOM_FRAME_BROKER_HFBK_MAX_FRAMESFBK_MAX_DEPTH+109 moreinclude: prefetch6 files · 116 symbolsutilityFREEDOM_IMPORT_MAP_HalgorithmIM_MAX_TEXT+100 moreinclude: subreq_batch3 files · 36 symbolsutilitySUBREQ_BATCH_HSQB_MAX_JOBSsqb_req+24 moreinclude: browser_ui46 files · 1166 symbolsutilityFREEDOM_PREFS_HPREFS_VERSIONPREFS_MAX_URL+1069 moresrc: text_shape42 files · 607 symbolsutilityFREEDOM_JS_POLICY_Hmembershipjsp_mode+533 moresrc: css38 files · 952 symbolsutilityFREEDOM_CSS_COLOR_Hbcc_rgb+843 moreinclude: page_view37 files · 1879 symbolsutilityFREEDOM_CSS_Hcss_statuscss_align+1698 moreinclude: browser19 files · 278 symbolsutilityFREEDOM_HOSTBLOCK_Hhb_sethb_list+229 moreinclude: svg_render16 files · 352 symbolsutilityFREEDOM_IMAGE_DECODE_Hguardsimg_format+336 moresrc: http_cache16 files · 226 symbolstestingFREEDOM_LOCAL_STORE_HLS_KEY_LENLS_SALT_LEN+187 moreinclude: secure_fetch13 files · 376 symbolsutilityFREEDOM_ANTI_FP_HFP_TIMER_RESOLUTION_MSFP_USER_AGENT+304 more

Details

Static architecture map of 312 files (c, h, py, sh) in 12 components: src: tab, include: browser_ui, src: text_shape, src: css, include: page_view, include: browser, include: svg_render, src: http_cache. Structure is extracted statically without LLM calls; component prose may be enriched locally.

Relations

src: tab (1) [Expand]

src: tab groups 51 files (c, h) around FREEDOM_HTML_PARSE_H, hp_status, max_bytes, hp_config, hp_document. dom_place: Where dom_move_children places the moved nodes (insertAdjacent* needs all...

Related Classes/Methods:

Sub-components

include (1.1)

include groups 14 files (h) around FREEDOM_HTML_PARSE_H, hp_status, max_bytes, hp_config, hp_document. dom_place: Where dom_move_children places the moved nodes (insertAdjacent* needs all...

src (1.2)

src groups 24 files (c, h) around FREEDOM_JS_CUSTOM_ELEMENTS_H, jdce_install, FREEDOM_JS_DOM_INTERNAL_H, jd_opaque_get, jd_idx. to_lower_buf: #include <stdint.h> #include <stdlib.h> #include <string.h> #include...

tests (1.3)

tests groups 13 files (c) around _POSIX_C_SOURCE, setup_doc, teardown_doc, DOC, IDX. setup_doc: #include "dom.h" #include "html_parse.h" static const char HTML[] =...

Files

include: browser_ui (2) [Expand]

include: browser_ui groups 46 files (c, h) around FREEDOM_PREFS_H, PREFS_VERSION, PREFS_MAX_URL, PREFS_MAX_TITLE, PREFS_MAX_BOOKMARKS. ui_input_state: Live editable state for one form text control, aliasing a block of the...

Related Classes/Methods:

Sub-components

calls into81 calls · 17 importscalls into8 calls · 0 importscalls into8 calls · 0 importscalls into21 calls · 0 importscalls into22 calls · 0 importscalls into18 calls · 15 importscalls into3 calls · 0 importscalls into404 calls · 18 importscalls into206 calls · 0 importsgui2 files · 664 symbolspresentation_GNU_SOURCEUI_TOOLBAR_HUI_TITLEBAR_H+646 moreinclude16 files · 161 symbolsutilityFREEDOM_PREFS_HPREFS_VERSIONPREFS_MAX_URL+155 moresrc13 files · 125 symbolsutilityfinite_or_zerobf_collapse_nbf_collapse+118 moretests15 files · 216 symbolstestingdbl_eqtest_two_positive_colla…test_two_negative_take_…+194 more
gui (2.1)

gui groups 2 files (c) around _GNU_SOURCE, UI_TOOLBAR_H, UI_TITLEBAR_H, UI_TABBAR_H, UI_TAB_MIN_W. ui_input_state: Live editable state for one form text control, aliasing a block of the...

include (2.2)

include groups 16 files (h) around FREEDOM_PREFS_H, PREFS_VERSION, PREFS_MAX_URL, PREFS_MAX_TITLE, PREFS_MAX_BOOKMARKS. block_flow (bf_) -- vertical margin collapsing for block-level boxes.

src (2.3)

src groups 13 files (c) around finite_or_zero, bf_collapse_n, bf_collapse, bf_margins_adjoin, bb_box_sizes. block_flow (bf_) -- vertical margin collapsing.

tests (2.4)

tests groups 15 files (c) around dbl_eq, test_two_positive_collapse_to_max, test_two_negative_take_the_most_negative, test_non_finite_is_absent, test_collapse_n_matches_binary. test_two_positive_collapse_to_max: Two positive margins collapse to the LARGER, never...

Files

src: text_shape (3) [Expand]

src: text_shape groups 42 files (c, h) around FREEDOM_JS_POLICY_H, membership, jsp_mode, allowlist, jsp_trusted. du_is_data_url: 16 MiB of encoded text (~12 MiB decoded) -- generous for any real...

Related Classes/Methods:

Sub-components

include (3.1)

include groups 14 files (h) around FREEDOM_JS_POLICY_H, membership, jsp_mode, allowlist, jsp_trusted. du_is_data_url: 16 MiB of encoded text (~12 MiB decoded) -- generous for any real...

src (3.2)

src groups 15 files (c) around lower, ci_starts_with, du_is_data_url, du_base64_payload, du_shape_ok. b64_val: 0-63 for a base64 alphabet character, -1 otherwise.

tests (3.3)

tests groups 13 files (c) around test_is_data_url_true, test_is_data_url_false, test_payload_basic, test_payload_no_mediatype, test_payload_empty. test_trusted_requires_both_signals: Hito 28: a host is TRUSTED (full author CSS +...

Files

src: css (4) [Expand]

src: css groups 38 files (c, h) around FREEDOM_CSS_COLOR_H, b, cc_rgb, cc_status, cc_pack. car_ops: The questions @supports asks the caller's own engine. prop is lowercased and...

Related Classes/Methods:

Sub-components

calls into19 calls · 0 importscalls into795 calls · 50 importscalls into3 calls · 0 importscalls into224 calls · 13 importscalls into285 calls · 0 importsinclude13 files · 203 symbolsutilityFREEDOM_CSS_COLOR_Hbcc_rgb+197 moresrc14 files · 587 symbolsutilityCSS_INIT_SELSCSS_INIT_DECLSemit+573 moretests11 files · 162 symbolstestingtoy_decltoy_selsup+147 more
include (4.1)

include groups 13 files (h) around FREEDOM_CSS_COLOR_H, b, cc_rgb, cc_status, cc_pack. car_ops: The questions @supports asks the caller's own engine. prop is lowercased and...

src (4.2)

src groups 14 files (c) around CSS_INIT_SELS, CSS_INIT_DECLS, emit, CSS_DECL_SLOTS_MIN, CSS_INIT_RULES. len_rebase_ctx: int r = snprintf(out + *o, space, "%.4f", px); if (r < 0 || (size_t)r...

tests (4.3)

tests groups 11 files (c) around toy_decl, toy_sel, sup, test_declaration_tests, test_boolean_combinators. test_css_atrule -- @supports evaluation and @layer ranks (spec/css_atrule.md).

Files

include: page_view (5) [Expand]

include: page_view groups 37 files (c, h) around FREEDOM_CSS_H, css_status, css_align, css_display, css_justify. bui_mask_img -- paints a mask-image: url() layer into a mask surface.

Related Classes/Methods:

Sub-components

depends on1 calls · 2 importscalls into54 calls · 0 importscalls into1 calls · 0 importscalls into28 calls · 26 importscalls into1 calls · 0 importscalls into1005 calls · 33 importscalls into605 calls · 0 importsgui1 files · 1 symbolsutilitybui_paint_mask_imageinclude13 files · 441 symbolsutilityFREEDOM_CSS_Hcss_statuscss_align+424 moresrc10 files · 515 symbolsutilityBX_TAG_MAXBX_DISPLAY_MAXis_ws+505 moretests13 files · 922 symbolstestingdbl_eqassert_edgestest_body_has_no_margin+886 more
gui (5.1)

gui groups 1 files (c) around bui_paint_mask_image. bui_mask_img -- paints a mask-image: url() layer into a mask surface.

include (5.2)

include groups 13 files (h) around FREEDOM_CSS_H, css_status, css_align, css_display, css_justify. bx_edges: anything longer fails closed instead of truncating into a wrong match....

src (5.3)

src groups 10 files (c) around BX_TAG_MAX, BX_DISPLAY_MAX, is_ws, copy_lower_trim, name_cmp. tag_row: One row of the user-agent sheet.

tests (5.4)

tests groups 13 files (c) around dbl_eq, assert_edges, test_body_has_no_margin, test_paragraph, test_heading_ladder. dbl_eq: #include <setjmp.h> #include <stdarg.h> #include <stddef.h> #include...

Files

include: browser (6) [Expand]

include: browser groups 19 files (c, h) around FREEDOM_HOSTBLOCK_H, hb_set, hb_list, hb_decision, hb_status. browser_free: Zero-initialise or reset a state.

Related Classes/Methods:

Sub-components

include (6.1)

include groups 7 files (h) around FREEDOM_HOSTBLOCK_H, hb_set, hb_list, hb_decision, hb_status. browser_free: Zero-initialise or reset a state.

src (6.2)

src groups 6 files (c) around _POSIX_C_SOURCE, free_page, clear_status, free_history, free_exceptions. clear_status: #include <stdlib.h> #include <string.h> static void...

tests (6.3)

tests groups 6 files (c) around _POSIX_C_SOURCE, test_init, test_navigate_history, test_navigate_from_middle_discards_future, test_back_forward_bounds. test_url_bar_selection: Omnibar selection model: extend builds a selection, ops...

Files

include: svg_render (7) [Expand]

include: svg_render groups 16 files (c, h) around FREEDOM_IMAGE_DECODE_H, guards, img_format, img_status, img_pixels. ui_theme_mode: ui_rgb button_text; ui_rgb menu_bg; ui_rgb menu_border; ui_rgb...

Related Classes/Methods:

Sub-components

gui (7.1)

gui groups 3 files (c, h) around FREEDOM_BROWSER_UI_INTERNAL_H, UI_FONT_SIZE, UI_TEXT_MARGIN, UI_HEADING_LEVELS, b. ui_theme_mode: ui_rgb button_text; ui_rgb menu_bg; ui_rgb menu_border; ui_rgb...

include (7.2)

include groups 5 files (h) around FREEDOM_IMAGE_DECODE_H, guards, img_format, img_status, img_pixels. img_pixels: A decoded bitmap that owns its pixel buffer.

src (7.3)

src groups 4 files (c) around exit, PNG_IHDR_MIN, read_be32, img_png_dimensions, img_dimensions_ok. jpeg_err_ctx: libjpeg error manager that longjmps instead of calling exit(), so a...

tests (7.4)

tests groups 4 files (c) around _DEFAULT_SOURCE, _POSIX_C_SOURCE, FREEDOM_BIN, OUT_FILE, ERR_FILE. run_freedom_raw: Runs the binary with a raw argument string (no implicit --headless)...

Files

src: http_cache (8) [Expand]

src: http_cache groups 16 files (c, h) around FREEDOM_LOCAL_STORE_H, LS_KEY_LEN, LS_SALT_LEN, LS_NONCE_LEN, LS_TAG_LEN. cf_set_store: Cache-aware GET.

Related Classes/Methods:

Sub-components

include (8.1)

include groups 5 files (h) around FREEDOM_LOCAL_STORE_H, LS_KEY_LEN, LS_SALT_LEN, LS_NONCE_LEN, LS_TAG_LEN. cf_set_store: Cache-aware GET.

src (8.2)

src groups 6 files (c) around _POSIX_C_SOURCE, trace, cf_set_store, cf_store, cacheable_request. trace: fetcher, and so the same policy, as an uncached request. #define...

tests (8.3)

tests groups 5 files (c) around _GNU_SOURCE, NOW, fake_fetch, setup, teardown.

Files

include: secure_fetch (9) [Expand]

include: secure_fetch groups 13 files (c, h) around FREEDOM_ANTI_FP_H, FP_TIMER_RESOLUTION_MS, FP_USER_AGENT, FP_ACCEPT_LANGUAGE, FP_ACCEPT_LANGUAGE_HEADER. fp_accept_language_header: #define FP_SEC_FETCH_DEST_NAV "document" #define...

Related Classes/Methods:

Sub-components

include (9.1)

include groups 4 files (h) around FREEDOM_ANTI_FP_H, FP_TIMER_RESOLUTION_MS, FP_USER_AGENT, FP_ACCEPT_LANGUAGE, FP_ACCEPT_LANGUAGE_HEADER. fp_accept_language_header: #define FP_SEC_FETCH_DEST_NAV "document" #define...

src (9.2)

src groups 4 files (c) around fp_coarsen_time_ms, fp_user_agent, fp_accept_language, fp_accept_language_header, fp_timezone. tag_valid: size_t n = strlen(ua); if (n >= IDN_UA_MAX) return -1; int printable = 0...

tests (9.3)

tests groups 5 files (c) around CHECK, main, test_coarsen_time, test_identity_is_fixed, test_legacy_identity_fixed. test_origin_key_unlinks_readback: The property that actually matters: the same canvas...

Files

include: tab (10) [Expand]

include: tab groups 7 files (c, h) around FREEDOM_FRAME_BROKER_H, FBK_MAX_FRAMES, FBK_MAX_DEPTH, FBK_MAX_MSG, FBK_ORIGIN_MAX. fbk_origin_of: Serialized origin ("https://host[:port]", lowercase) or "null" for...

Related Classes/Methods:

Sub-components

include (10.1)

include groups 3 files (h) around FREEDOM_FRAME_BROKER_H, FBK_MAX_FRAMES, FBK_MAX_DEPTH, FBK_MAX_MSG, FBK_ORIGIN_MAX. fbk_origin_of: Serialized origin ("https://host[:port]", lowercase) or "null" for...

src (10.2)

src groups 2 files (c) around lc, host_char_ok, fbk_origin_of, fbk_init, live. target_admits: int changed = 1; /* fixpoint: slots...

tests (10.3)

tests groups 2 files (c) around test_origin_of, build, test_parent_top_child_routes, test_siblings_not_addressable, test_target_origin. test_frame_broker -- CMocka suite for the pure iframe tree + postMessage router.

Files

include: prefetch (11) [Expand]

include: prefetch groups 6 files (c, h) around FREEDOM_IMPORT_MAP_H, algorithm, IM_MAX_TEXT, IM_MAX_ENTRIES, IM_MAX_SCOPES. im_resolve: Resolves specifier as imported from base (the importing module's URL).

Related Classes/Methods:

Sub-components

include (11.1)

include groups 2 files (h) around FREEDOM_IMPORT_MAP_H, algorithm, IM_MAX_TEXT, IM_MAX_ENTRIES, IM_MAX_SCOPES. im_resolve: Resolves specifier as imported from base (the importing module's URL).

src (11.2)

src groups 2 files (c) around IM_MAX_DEPTH, IM_URL_MAX, scope, im_entry, im_map. str: A JSON string into an owned UTF-8 buffer (escapes decoded; a lone surrogate or a...

tests (11.3)

tests groups 2 files (c) around tres, DOC, expect_res, test_exact_and_prefix_imports, test_scopes_win_by_longest_prefix. tres: Test URL resolver: absolute https passes, "/x" is origin-relative, "./x" and...

Files

include: subreq_batch (12)

include: subreq_batch groups 3 files (c, h) around SUBREQ_BATCH_H, SQB_MAX_JOBS, sqb_req, ok, sqb_res. sqb_res: #ifndef SUBREQ_BATCH_H #define SUBREQ_BATCH_H #include <stddef.h> #define...

Related Classes/Methods:

Files