code / tomo

Lines41.3K C23.7K Markdown9.7K YAML5.0K Tomo2.3K
7 others 763
Python231 Shell230 make212 INI47 Text21 SVG16 Lua6
(38 lines)
1 '\" t
2 .\" Copyright (c) 2026 Bruce Hill
3 .\" All rights reserved.
4 .\"
5 .TH List.heap_pop 3 2026-03-08 "Tomo man-pages"
6 .SH NAME
7 List.heap_pop \- heap pop
8 .SH LIBRARY
9 Tomo Standard Library
10 .SH SYNOPSIS
11 .nf
12 .BI List.heap_pop\ :\ func(list:\ @[T],\ by:\ func(x,y:&T->Int32)\ =\ T.compare\ ->\ T?)
13 .fi
14 .SH DESCRIPTION
15 Removes and returns the top element of a heap or `none` if the list is empty. By default, this is the *minimum* value in the heap.
18 .SH ARGUMENTS
20 .TS
21 allbox;
22 lb lb lbx lb
23 l l l l.
24 Name Type Description Default
25 list @[T] The mutable reference to the heap. -
26 by func(x,y:&T->Int32) The comparison function used to determine order. If not specified, the default comparison function for the item type will be used. T.compare
27 .TE
28 .SH RETURN
29 The removed top element of the heap or `none` if the list is empty.
31 .SH EXAMPLES
32 .EX
33 my_heap := &[30, 10, 20]
34 my_heap.heapify()
35 assert my_heap.heap_pop() == 10
36 .EE
37 .SH SEE ALSO
38 .BR Tomo-List (3)