LCOV - differential code coverage report
Current view: top level - src/backend/utils/adt - geo_ops.c (source / functions) Coverage Total Hit UBC CBC
Current: 603a3335f2b60b2c798da5c627b3bb288b92a7bd vs e395fbd32a07557de4ac98088928c1749d4845d8 Lines: 90.8 % 2098 1905 193 1905
Current Date: 2026-07-25 17:13:00 -0400 Functions: 95.1 % 268 255 13 255
Baseline: lcov-20260726-baseline Branches: 71.3 % 1114 794 320 794
Baseline Date: 2026-07-25 19:16:42 +0200 Line coverage date bins:
Legend: Lines:     hit not hit
Branches: + taken - not taken # not executed
(30,360] days: 78.0 % 214 167 47 167
(360..) days: 92.3 % 1884 1738 146 1738
Function coverage date bins:
(30,360] days: 100.0 % 7 7 7
(360..) days: 95.0 % 261 248 13 248
Branch coverage date bins:
(30,360] days: 19.2 % 234 45 189 45
(360..) days: 85.1 % 880 749 131 749

Function Name Sort by function name TLA Hit count Sort by function hit count Lines Sort by unexercised lines in function Branches Sort by unexercised branches in function
box_recv UBC 0 0.0 % (0 / 16) 0.0 % (0 / 4)
box_send UBC 0 0.0 % (0 / 8)
circle_recv UBC 0 0.0 % (0 / 9) 0.0 % (0 / 4)
circle_send UBC 0 0.0 % (0 / 7)
dist_polyc UBC 0 0.0 % (0 / 4)
line_recv UBC 0 0.0 % (0 / 9) 0.0 % (0 / 6)
line_send UBC 0 0.0 % (0 / 7)
lseg_recv UBC 0 0.0 % (0 / 8)
lseg_send UBC 0 0.0 % (0 / 8)
path_recv UBC 0 0.0 % (0 / 16) 0.0 % (0 / 8)
path_send UBC 0 0.0 % (0 / 9) 0.0 % (0 / 2)
poly_recv UBC 0 0.0 % (0 / 14) 0.0 % (0 / 8)
poly_send UBC 0 0.0 % (0 / 8) 0.0 % (0 / 2)
lseg_construct CBC 5 100.0 % (6 / 6)
point_recv CBC 12 100.0 % (6 / 6)
point_send CBC 12 100.0 % (6 / 6)
circle_contain_pt CBC 16 100.0 % (5 / 5)
box_area CBC 20 100.0 % (3 / 3)
box_diagonal CBC 20 100.0 % (5 / 5)
box_eq CBC 20 100.0 % (4 / 4)
box_ge CBC 20 100.0 % (4 / 4)
box_gt CBC 20 100.0 % (4 / 4)
box_height CBC 20 100.0 % (3 / 3)
box_le CBC 20 100.0 % (4 / 4)
box_lt CBC 20 100.0 % (4 / 4)
box_width CBC 20 100.0 % (3 / 3)
poly_circle CBC 20 85.7 % (6 / 7) 16.7 % (1 / 6)
poly_box CBC 28 100.0 % (5 / 5)
poly_center CBC 28 87.5 % (7 / 8) 16.7 % (1 / 6)
poly_path CBC 28 100.0 % (12 / 12) 100.0 % (2 / 2)
circle_box CBC 32 66.7 % (14 / 21) 16.7 % (5 / 30)
circle_poly CBC 32 100.0 % (4 / 4)
lseg_horizontal CBC 32 100.0 % (3 / 3)
lseg_length CBC 32 100.0 % (3 / 3)
lseg_vertical CBC 32 100.0 % (3 / 3)
path_area CBC 36 100.0 % (10 / 10) 100.0 % (4 / 4)
path_length CBC 36 100.0 % (11 / 11) 100.0 % (6 / 6)
path_open CBC 36 100.0 % (4 / 4)
box_div CBC 40 100.0 % (8 / 8)
line_horizontal CBC 40 100.0 % (3 / 3)
line_vertical CBC 40 100.0 % (3 / 3)
pt_contained_circle CBC 40 100.0 % (5 / 5)
poly_to_circle CBC 48 76.0 % (19 / 25) 26.2 % (11 / 42)
path_close CBC 52 100.0 % (4 / 4)
box_center CBC 60 85.7 % (6 / 7) 16.7 % (1 / 6)
path_poly CBC 60 100.0 % (13 / 13) 83.3 % (5 / 6)
circle_diameter CBC 64 100.0 % (3 / 3)
lseg_center CBC 64 66.7 % (12 / 18) 16.7 % (4 / 24)
lseg_in CBC 69 100.0 % (7 / 7) 100.0 % (2 / 2)
circle_div_pt CBC 72 100.0 % (7 / 7)
path_div_pt CBC 76 100.0 % (6 / 6) 100.0 % (2 / 2)
path_isopen CBC 76 100.0 % (3 / 3)
poly_npoints CBC 84 100.0 % (3 / 3)
point_div CBC 88 100.0 % (6 / 6)
line_decode CBC 92 90.0 % (18 / 20) 88.9 % (16 / 18)
box_above_eq CBC 100 100.0 % (4 / 4)
box_below_eq CBC 100 100.0 % (4 / 4)
box_distance CBC 100 100.0 % (6 / 6)
box_intersect CBC 100 100.0 % (11 / 11) 100.0 % (2 / 2)
box_mul CBC 100 100.0 % (8 / 8)
boxes_bound_box CBC 100 100.0 % (9 / 9)
path_isclosed CBC 108 100.0 % (3 / 3)
circle_distance CBC 112 100.0 % (7 / 7) 100.0 % (2 / 2)
line_in CBC 140 100.0 % (18 / 18) 94.4 % (17 / 18)
box_contain_lseg CBC 160 100.0 % (3 / 3) 75.0 % (3 / 4)
close_sb CBC 160 100.0 % (7 / 7) 100.0 % (2 / 2)
dist_bs CBC 160 100.0 % (4 / 4)
dist_sb CBC 160 100.0 % (4 / 4)
inter_sb CBC 160 100.0 % (4 / 4)
on_sb CBC 160 100.0 % (4 / 4)
poly_above CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_below CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_distance CBC 196 95.8 % (23 / 24) 93.8 % (15 / 16)
poly_left CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_overabove CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_overbelow CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_overleft CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_overright CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
poly_right CBC 196 100.0 % (7 / 7) 50.0 % (2 / 4)
box_add CBC 200 100.0 % (7 / 7)
box_sub CBC 200 100.0 % (7 / 7)
close_pb CBC 200 100.0 % (7 / 7) 100.0 % (2 / 2)
inter_lb CBC 200 92.3 % (24 / 26) 75.0 % (6 / 8)
point_mul CBC 200 100.0 % (6 / 6)
box_ar CBC 220 100.0 % (2 / 2)
dist_cpoly CBC 224 100.0 % (4 / 4)
dist_cpoly_internal CBC 224 100.0 % (5 / 5) 100.0 % (2 / 2)
box_ht CBC 240 100.0 % (2 / 2)
box_wd CBC 240 100.0 % (2 / 2)
point_box CBC 244 100.0 % (8 / 8)
circle_above CBC 256 100.0 % (4 / 4)
circle_below CBC 256 100.0 % (4 / 4)
circle_contained CBC 256 100.0 % (4 / 4)
circle_eq CBC 256 100.0 % (4 / 4)
circle_gt CBC 256 100.0 % (4 / 4)
circle_le CBC 256 100.0 % (4 / 4)
circle_left CBC 256 100.0 % (4 / 4)
circle_ne CBC 256 100.0 % (4 / 4)
circle_overabove CBC 256 100.0 % (4 / 4)
circle_overbelow CBC 256 100.0 % (4 / 4)
circle_overleft CBC 256 100.0 % (4 / 4)
circle_overright CBC 256 100.0 % (4 / 4)
circle_right CBC 256 100.0 % (4 / 4)
close_lseg CBC 256 100.0 % (9 / 9) 100.0 % (4 / 4)
lseg_distance CBC 256 100.0 % (4 / 4)
lseg_ge CBC 256 100.0 % (4 / 4)
lseg_gt CBC 256 100.0 % (4 / 4)
lseg_invsl CBC 256 100.0 % (2 / 2)
lseg_le CBC 256 100.0 % (4 / 4)
lseg_lt CBC 256 100.0 % (4 / 4)
lseg_ne CBC 256 100.0 % (4 / 4) 75.0 % (3 / 4)
lseg_parallel CBC 256 100.0 % (4 / 4)
lseg_perp CBC 256 100.0 % (4 / 4)
poly_contain CBC 256 100.0 % (7 / 7) 100.0 % (4 / 4)
circle_same CBC 257 100.0 % (4 / 4) 100.0 % (8 / 8)
lseg_eq CBC 257 100.0 % (4 / 4) 75.0 % (3 / 4)
circle_contain CBC 264 100.0 % (4 / 4)
poly_in CBC 269 93.8 % (15 / 16) 66.7 % (8 / 12)
circle_in CBC 270 97.1 % (33 / 34) 86.1 % (31 / 36)
dist_ppoly CBC 280 100.0 % (4 / 4)
dist_pb CBC 284 100.0 % (4 / 4)
poly_contain_pt CBC 296 100.0 % (4 / 4)
box_cn CBC 316 69.2 % (9 / 13) 16.7 % (4 / 24)
circle_add_pt CBC 320 100.0 % (7 / 7)
circle_mul_pt CBC 320 100.0 % (7 / 7)
circle_sub_pt CBC 320 100.0 % (7 / 7)
close_ls CBC 320 100.0 % (9 / 9) 100.0 % (4 / 4)
close_ps CBC 320 100.0 % (7 / 7) 100.0 % (2 / 2)
dist_ls CBC 320 100.0 % (4 / 4)
dist_ps CBC 320 100.0 % (4 / 4)
dist_sl CBC 320 100.0 % (4 / 4)
dist_sp CBC 320 100.0 % (4 / 4)
inter_sl CBC 320 100.0 % (4 / 4)
line_sl CBC 320 100.0 % (6 / 6) 100.0 % (4 / 4)
on_ps CBC 320 100.0 % (4 / 4)
on_sl CBC 320 100.0 % (4 / 4) 100.0 % (4 / 4)
pt_contained_poly CBC 321 100.0 % (4 / 4)
circle_ge CBC 324 100.0 % (4 / 4)
path_add CBC 324 95.2 % (20 / 21) 71.4 % (10 / 14)
path_distance CBC 324 96.2 % (25 / 26) 94.4 % (17 / 18)
path_n_ge CBC 324 100.0 % (4 / 4)
path_n_gt CBC 324 100.0 % (4 / 4)
path_n_le CBC 324 100.0 % (4 / 4)
path_n_lt CBC 324 100.0 % (4 / 4)
path_n_eq CBC 325 100.0 % (4 / 4)
circle_area CBC 340 100.0 % (3 / 3)
dist_pathp CBC 360 100.0 % (4 / 4)
dist_ppath CBC 360 100.0 % (4 / 4)
path_add_pt CBC 360 100.0 % (6 / 6) 100.0 % (2 / 2)
path_mul_pt CBC 360 100.0 % (6 / 6) 100.0 % (2 / 2)
path_sub_pt CBC 360 100.0 % (6 / 6) 100.0 % (2 / 2)
line_construct_pp CBC 361 100.0 % (8 / 8) 75.0 % (3 / 4)
point_div_point CBC 396 100.0 % (4 / 4)
close_pl CBC 400 100.0 % (7 / 7) 100.0 % (2 / 2)
dist_lp CBC 400 100.0 % (4 / 4)
dist_pl CBC 400 100.0 % (4 / 4)
line_distance CBC 400 90.9 % (10 / 11) 61.1 % (11 / 18)
line_interpt CBC 400 100.0 % (7 / 7) 100.0 % (2 / 2)
line_intersect CBC 400 100.0 % (4 / 4)
line_parallel CBC 400 100.0 % (4 / 4)
line_perp CBC 400 100.0 % (12 / 12) 100.0 % (8 / 8)
on_pl CBC 400 100.0 % (4 / 4)
on_ppath CBC 400 100.0 % (13 / 13) 100.0 % (6 / 6)
point_add CBC 400 100.0 % (6 / 6)
point_slope CBC 400 100.0 % (4 / 4)
point_sub CBC 400 100.0 % (6 / 6)
touched_lseg_inside_poly CBC 404 71.4 % (10 / 14) 66.7 % (8 / 12)
line_eq CBC 410 76.9 % (10 / 13) 81.2 % (26 / 32)
point_ne CBC 468 100.0 % (4 / 4)
box_closept_lseg CBC 480 100.0 % (28 / 28) 100.0 % (14 / 14)
dist_pc CBC 564 100.0 % (7 / 7) 100.0 % (2 / 2)
box_interpt_lseg CBC 640 90.0 % (27 / 30) 81.2 % (13 / 16)
dist_ppath_internal CBC 720 100.0 % (16 / 16) 91.7 % (11 / 12)
line_contain_point CBC 736 100.0 % (2 / 2)
circle_lt CBC 1052 100.0 % (4 / 4)
point_mul_point CBC 1480 100.0 % (3 / 3)
point_sub_point CBC 1880 100.0 % (3 / 3)
point_add_point CBC 2048 75.0 % (6 / 8) 16.7 % (2 / 12)
lseg_closept_lseg CBC 3512 100.0 % (20 / 20) 100.0 % (14 / 14)
path_npoints CBC 3620 100.0 % (3 / 3)
lseg_interpt CBC 3832 100.0 % (7 / 7) 100.0 % (2 / 2)
plist_same CBC 4061 100.0 % (18 / 18) 100.0 % (20 / 20)
poly_same CBC 4197 100.0 % (9 / 9) 100.0 % (6 / 6)
line_out CBC 4628 100.0 % (6 / 6)
lseg_out CBC 4871 100.0 % (3 / 3)
circle_ar CBC 5140 100.0 % (2 / 2)
circle_out CBC 6104 100.0 % (11 / 11)
single_encode CBC 6104 100.0 % (5 / 5)
box_contain CBC 8168 100.0 % (4 / 4)
box_same CBC 9173 100.0 % (4 / 4) 100.0 % (4 / 4)
box_circle CBC 12420 66.7 % (14 / 21) 16.7 % (5 / 30)
box_poly CBC 12420 100.0 % (16 / 16)
dist_cpoint CBC 12484 85.7 % (6 / 7) 50.0 % (1 / 2)
circle_radius CBC 12504 100.0 % (3 / 3)
circle_center CBC 12604 100.0 % (6 / 6)
circle_overlap CBC 12812 100.0 % (4 / 4)
box_in CBC 13239 100.0 % (15 / 15) 100.0 % (6 / 6)
lseg_intersect CBC 16912 100.0 % (4 / 4)
point_in CBC 17375 100.0 % (5 / 5)
box_below CBC 18452 100.0 % (4 / 4)
poly_overlap CBC 19416 100.0 % (7 / 7) 100.0 % (4 / 4)
poly_overlap_internal CBC 19612 100.0 % (18 / 18) 85.0 % (17 / 20)
path_in CBC 20613 96.8 % (30 / 31) 80.0 % (24 / 30)
pair_count CBC 20882 100.0 % (6 / 6) 100.0 % (4 / 4)
dist_polyp CBC 22872 100.0 % (4 / 4)
dist_ppoly_internal CBC 23376 100.0 % (17 / 17) 100.0 % (6 / 6)
path_out CBC 31871 100.0 % (3 / 3) 100.0 % (2 / 2)
box_left CBC 33348 100.0 % (4 / 4)
path_decode CBC 34202 100.0 % (39 / 39) 94.7 % (36 / 38)
box_above CBC 38480 100.0 % (4 / 4)
circle_to_poly CBC 40025 100.0 % (4 / 4)
circle_poly_internal CBC 40057 80.6 % (25 / 31) 32.6 % (15 / 46)
make_bound_box CBC 40338 100.0 % (18 / 18) 91.7 % (11 / 12)
box_overlap CBC 43112 100.0 % (4 / 4)
poly_out CBC 47755 100.0 % (3 / 3)
point_eq CBC 53469 100.0 % (4 / 4)
box_overbelow CBC 53624 100.0 % (4 / 4)
poly_contained CBC 56364 100.0 % (7 / 7) 100.0 % (4 / 4)
poly_contain_poly CBC 56620 100.0 % (11 / 11) 80.0 % (8 / 10)
box_overleft CBC 66472 100.0 % (4 / 4)
box_overabove CBC 74100 100.0 % (4 / 4)
box_overright CBC 74932 100.0 % (4 / 4)
box_right CBC 87828 100.0 % (4 / 4)
box_out CBC 89727 100.0 % (3 / 3)
pair_decode CBC 90926 95.7 % (22 / 23) 95.5 % (21 / 22)
on_pb CBC 92168 100.0 % (4 / 4)
box_contain_pt CBC 95124 100.0 % (4 / 4)
dist_bp CBC 103508 100.0 % (4 / 4)
box_closept_point CBC 103992 100.0 % (30 / 30) 100.0 % (16 / 16)
box_contained CBC 105528 100.0 % (4 / 4)
cr_circle CBC 120110 100.0 % (8 / 8)
lseg_inside_poly CBC 132184 100.0 % (27 / 27) 90.9 % (20 / 22)
point_out CBC 133638 100.0 % (3 / 3)
points_box CBC 161124 100.0 % (6 / 6)
point_inside CBC 164433 100.0 % (22 / 22) 90.0 % (9 / 10)
box_contain_box CBC 170316 100.0 % (5 / 5) 100.0 % (8 / 8)
box_construct CBC 173684 100.0 % (12 / 12) 100.0 % (4 / 4)
single_decode CBC 182294 100.0 % (3 / 3) 83.3 % (5 / 6)
point_eq_point CBC 202261 100.0 % (4 / 4) 83.3 % (15 / 18)
box_contain_point CBC 291856 100.0 % (3 / 3) 100.0 % (8 / 8)
path_encode CBC 307862 100.0 % (28 / 28) 83.3 % (10 / 12)
point_vert CBC 332086 100.0 % (4 / 4)
point_horiz CBC 354158 100.0 % (4 / 4)
point_left CBC 471794 100.0 % (4 / 4)
point_distance CBC 493126 100.0 % (4 / 4)
lseg_closept_point CBC 604064 100.0 % (6 / 6) 100.0 % (2 / 2)
point_invsl CBC 604320 100.0 % (6 / 6) 100.0 % (4 / 4)
lseg_closept_line CBC 604988 100.0 % (12 / 12) 100.0 % (8 / 8)
statlseg_construct CBC 673949 100.0 % (6 / 6)
construct_point CBC 688675 100.0 % (6 / 6)
lseg_crossing CBC 758628 100.0 % (28 / 28) 95.8 % (46 / 48)
point_below CBC 833637 100.0 % (4 / 4)
pair_encode CBC 909273 100.0 % (7 / 7)
path_inter CBC 920612 100.0 % (37 / 37) 91.7 % (22 / 24)
lseg_interpt_lseg CBC 978900 100.0 % (9 / 9) 100.0 % (6 / 6)
box_ov CBC 984076 100.0 % (5 / 5) 100.0 % (8 / 8)
line_closept_point CBC 1195440 66.7 % (6 / 9) 50.0 % (3 / 6)
line_invsl CBC 1195440 100.0 % (6 / 6) 100.0 % (4 / 4)
lseg_interpt_line CBC 1584860 100.0 % (13 / 13) 100.0 % (10 / 10)
lseg_sl CBC 2565380 100.0 % (2 / 2)
point_sl CBC 2566137 100.0 % (6 / 6) 100.0 % (4 / 4)
lseg_contain_point CBC 2676572 100.0 % (3 / 3)
line_interpt_line CBC 2781900 94.7 % (18 / 19) 92.9 % (13 / 14)
point_construct CBC 3466983 100.0 % (4 / 4)
line_construct CBC 4363641 100.0 % (15 / 15) 100.0 % (6 / 6)
point_dt CBC 10364506 75.0 % (6 / 8) 30.0 % (6 / 20)
point_right CBC 11220589 100.0 % (4 / 4)
point_above CBC 11378448 100.0 % (4 / 4)

Generated by: LCOV version 2.0-1