Delen via


Vouwfunctie

Volledig gekwalificeerde naam: Std.Arrays.Fold

function Fold<'State, 'T>(folder : (('State, 'T) -> 'State), state : 'State, array : 'T[]) : 'State

Samenvatting

Hiermee wordt een functie herhaald f door een matrix array, waardoor f(...f(f(initialState, array[0]), array[1]), ...)wordt geretourneerd.

Typeparameters

"Staat

Het type statussen waarop de functie folder werkt, dat wil bijvoorbeeld accepteren als het eerste argument en retourneert.

'T

Het type array elementen.

Invoer

map

Een functie die over de matrix moet worden gevouwen.

staat

De initiƫle status van de map.

array

Een matrix met waarden die moeten worden gevouwen.

Uitvoer

De uiteindelijke status die door de map wordt geretourneerd nadat alle elementen van arrayzijn herhaald.

Voorbeeld

let sum = Fold((x, y) -> x + y, 0, [1, 2, 3, 4, 5]); // `sum` is 15.