code / tomo

Lines41.3K C23.7K Markdown9.7K YAML5.0K Tomo2.3K
7 others 763
Python231 Shell230 make212 INI47 Text21 SVG16 Lua6
(40 lines)
1 '\" t
2 .\" Copyright (c) 2026 Bruce Hill
3 .\" All rights reserved.
4 .\"
5 .TH List.random 3 2026-03-14 "Tomo man-pages"
6 .SH NAME
7 List.random \- pick a random element
8 .SH LIBRARY
9 Tomo Standard Library
10 .SH SYNOPSIS
11 .nf
12 .BI List.random\ :\ func(list:\ [T],\ random:\ func(min,max:Int64->Int64)?\ =\ none\ ->\ T?)
13 .fi
14 .SH DESCRIPTION
15 Selects a random element from the list.
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 list from which to select a random element. -
26 random func(min,max:Int64->Int64)? If provided, this function will be used to get a random index in the list. Returned values must be between \fBmin\fR and \fBmax\fR (inclusive). (Used for deterministic pseudorandom number generation) none
27 .TE
28 .SH RETURN
29 A random element from the list or `none` if the list is empty.
31 .SH EXAMPLES
32 .EX
33 nums := [10, 20, 30]
34 pick := nums.random()!
35 assert nums.has(pick)
36 empty : [Int]
37 assert empty.random() == none
38 .EE
39 .SH SEE ALSO
40 .BR Tomo-List (3)