Array.flat_map
flat_mapfunctionon_problems
Documentation
Applies a function to each element of the array, returning the Vector
that contains all results concatenated.
Arguments
function
: A function that takes an element in the array, transforms it, and returns aVector
.on_problems
: Specifies how to handle any problems that arise infunction
.
Examples
Replace each number n
in the array with itself repeated n times.
[0, 1, 2].to_array . flat_map (n -> Vector.fill n n)
Errors
The result of Errors thrown when executing the function depend on
on_problems
:
- Report_Error: The first error is thrown, and is wrapped in
Map_Error
. - No_Wrap: The first error is thrown, and is not wrapped in
Map_Error
. - Report_Warning: The result for that element is
Nothing
, the error is attached as a warning. Currently unimplemented. - Ignore: The result is
Nothing
, and the error is ignored.
Errors that are thrown when executing the supplied function are wrapped
in Map_Error
, which contains the index at which the error occurred.
In the Report_Warning
case, only MAX_MAP_WARNINGS
warnings are attached to result values. After that, the warnings are
dropped, but a count of the additional warnings is attached in an
Additional_Warnings
warning.