[Home] Namespace Microsoft.FSharp.Collections


Modules (as contributed by assembly 'FSharp.Core')

ModuleDescription
Microsoft.FSharp.Collections.Array 1-dimensional arrays.
Microsoft.FSharp.Collections.Array2 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 [[Array2.map]] and [[Array2.mapi]] operations. Non-zero-based arrays can also be created using [[Array2.zero_create_based]], [[Array2.create_based]] and [[Array2.init_based]]. This module is only available for F# on .NET 2.0. If using .NET 1.x then use Microsoft.FSharp.Compatiblity.CompatMatrix instead.
Microsoft.FSharp.Collections.Array3 Basic operations on 3-dimensional arrays. Only available for F# on .NET 2.0.
Microsoft.FSharp.Collections.CommonExtensions
Microsoft.FSharp.Collections.ComparisonIdentity Common notions of comparison identity used with sorted data structures.
Microsoft.FSharp.Collections.HashIdentity Common notions of value identity used with hash tables.
Microsoft.FSharp.Collections.IEnumerable
Microsoft.FSharp.Collections.List Basic operations on lists.
Microsoft.FSharp.Collections.Map Immutable maps using structural comparison Maps based on structural comparison are efficient. They are not a suitable choice if keys are recursive data structures or require non-structural comparison semantics.
Microsoft.FSharp.Collections.ResizeArray Generic operations on the type System.Collections.Generic.List, which is called ResizeArray in the F# libraries.
Microsoft.FSharp.Collections.Seq Basic operations on IEnumerables.
Microsoft.FSharp.Collections.Set

Type Definitions

TypeDescription
type HashMultiMap Hash tables, by default based on F# structural "hash" and (=) functions. This is precisely the same type as that manipulated by the functions in [[Microsoft.FSharp.Compatibility.OCaml.Hashtbl]]. The table may map a single key to multiple bindings.
type HashSet Mutable hash sets based by default on F# structural "hash" and (=) functions. Implemented via a hash table and/or Dictionary.
type HashStats Sinks recording statistical properties of one or more hash tables.
type list The type of immutable singly-linked lists. Use the constructors [] and '::' (infix) to create values of this type, or the notation [1;2;3]. Use the values in the [[List]] module to manipulate values of this type, or pattern match against the values directly. Note: an abbreviation for List<'a>
type List The type of immutable singly-linked lists. Use the constructors [] and '::' (infix) to create values of this type, or the notation [1;2;3]. Use the values in the [[List]] module to manipulate values of this type, or pattern match against the values directly.
type Map Immutable maps. Keys are ordered by F# structural comparison, potentially using implementations of the IComparable interface on key values. Maps based on structural comparison are efficient for small keys. They are not a suitable choice if keys are recursive data structures or require non-structural comparison semantics.
type Permutation
type ResizeArray Note: an abbreviation for List<'a>
type seq Note: an abbreviation for IEnumerable<'a>
type Set Immutable sets based on binary trees, where comparison is the F# structural comparison function, potentially using implementations of the IComparable interface on key values. See the Set module for further operations on sets. These sets can be used with elements of any type, but you should check that structural hashing and equality on the element type are correct for your type. Efficiency: Structural comparison is relatively efficient but is not a suitable choice in all circumstances, e.g. it may not compare efficiently on non-reference types and deeply-structured types.

Deprecated/Unsafe Type Definitions

TypeDescription
type CHashSet

Note: Consider using Microsoft.FSharp.Collections.HashSet or Microsoft.FSharp.Collections.Tagged.HashSet

Note: an abbreviation for HashSet<'a>
type CHashTable

Note: Consider using Microsoft.FSharp.Collections.HashMultiMap or Microsoft.FSharp.Collections.Tagged.HashMultiMap

Note: an abbreviation for HashTable<'a,'b>
type HashTable

Note: The type HashTable has been renamed to HashMultiMap because the type doesn't conform to the expected behaviour of .NET Dictionaries (it can bind keys to multiple values). Please adjust your references to this type

Note: an abbreviation for HashMultiMap<'a,'b>
type IHashOps

Note: Collections.IHashOps was an abbreviation for System.Collections.Generic.IEqualityComparer and is now deprecated. Please use that name instead

Note: an abbreviation for IEqualityComparer<'key>

See Also

Namespaces


Documentation for assembly FSharp.Core, version 1.9.4.19, generated using F# version 1.9.4.19