1 people like it.
Like the snippet!
Flat Array2D 'a [,] -> 'a array
Flat a 2 dimensional array in a one dimension array 'a [,] -> 'a array
1:
2:
3:
4:
5:
6:
7:
8:
|
let array2DFlat (arr:'a [,]) =
let rec array2DFlat (arr:'a [,]) i (acc:'a array) =
match Array2D.length1 arr with
| x when i = x -> acc
| _ -> array2DFlat arr (i + 1)
acc
|> Array.append arr.[i, 0..(Array2D.length2 arr - 1)]
array2DFlat arr 0 [||]
|
val array2DFlat : arr:'a [,] -> 'a array
Full name: Script.array2DFlat
val arr : 'a [,]
val array2DFlat : ('a [,] -> int -> 'a array -> 'a array)
val i : int
val acc : 'a array
type 'T array = 'T []
Full name: Microsoft.FSharp.Core.array<_>
module Array2D
from Microsoft.FSharp.Collections
val length1 : array:'T [,] -> int
Full name: Microsoft.FSharp.Collections.Array2D.length1
val x : int
module Array
from Microsoft.FSharp.Collections
val append : array1:'T [] -> array2:'T [] -> 'T []
Full name: Microsoft.FSharp.Collections.Array.append
val length2 : array:'T [,] -> int
Full name: Microsoft.FSharp.Collections.Array2D.length2
More information