[Home] Module Microsoft.FSharp.Collections.Array2D


Basic operations on 2-dimensional arrays. F# and .NET multi-dimensional arrays are typically zero-based. However, .NET multi-dimensional arrays used in conjunction with external libraries (e.g. libraries associated with Visual Basic) be non-zero based, using a potentially different base for each dimension. The operations in this module will accept such arrays, and the basing on an input array will be propogated to a matching output array on the Array2D.map and Array2D.mapi operations. Non-zero-based arrays can also be created using Array2D.zero_create_based, Array2D.create_based and Array2D.init_based.

Values

ValueDescription
val base1 : 'T [,] -> int
Fetch the base-index for the first dimension of the array. See notes on the Array2D module re. zero-basing.
val base2 : 'T [,] -> int
Fetch the base-index for the second dimension of the array. See notes on the Array2D module re. zero-basing.
val blit : 'T [,] -> int -> int -> 'T [,] -> int -> int -> int -> int -> unit
Read a range of elements from the first array and write them into the second.
val copy : 'T [,] -> 'T [,]
Build a new array whose elements are the same as the input array. For non-zero-based arrays the basing on an input array will be propogated to the output array.
val create : int -> int -> 'T -> 'T [,]
Create an array whose elements are all initially the given value
val createBased : int -> int -> int -> int -> 'T -> 'T [,]
Create a based array whose elements are all initially the given value
val get : 'T [,] -> int -> int -> 'T
Fetch an element from a 2D array. You can also use the syntax 'array.[index1,index2]'
val init : int -> int -> (int -> int -> 'T) -> 'T [,]
Create an array given the dimensions and a generator function to compute the elements.
val initBased : int -> int -> int -> int -> (int -> int -> 'T) -> 'T [,]
Create a based array given the dimensions and a generator function to compute the elements.
val iter : ('T -> unit) -> 'T [,] -> unit
Apply the given function to each element of the array.
val iteri : (int -> int -> 'T -> unit) -> 'T [,] -> unit
Apply the given function to each element of the array. The integer indicies passed to the function indicates the index of element.
val length1 : 'T [,] -> int
Return the length of an array in the first dimension
val length2 : 'T [,] -> int
Return the length of an array in the second dimension
val map : ('T -> 'U) -> 'T [,] -> 'U [,]
Build a new array whose elements are the results of applying the given function to each of the elements of the array. For non-zero-based arrays the basing on an input array will be propogated to the output array.
val mapi : (int -> int -> 'T -> 'U) -> 'T [,] -> 'U [,]
Build a new array whose elements are the results of applying the given function to each of the elements of the array. The integer indices passed to the function indicates the element being transformed. For non-zero-based arrays the basing on an input array will be propogated to the output array.
val rebase : 'T [,] -> 'T [,]
Build a new array whose elements are the same as the input array but where a non-zero-based input array generates a corresponding zero-based output array.
val set : 'T [,] -> int -> int -> 'T -> unit
Set the value of an element in an array. You can also use the syntax 'array.[index1,index2] <- value'
val zeroCreate : int -> int -> 'T [,]
Create an array where the entries are initially Unchecked.defaultof<'T>.
val zeroCreateBased : int -> int -> int -> int -> 'T [,]
Create a based array where the entries are initially Unchecked.defaultof<'T>.

See Also

Microsoft.FSharp.Collections


Documentation for assembly FSharp.Core, version 1.9.6.16, generated using F# Programming Language version 1.9.6.16