fsprojects/FSharpx.Collections


Deque

Namespace: FSharpx.Collections.Experimental

Functions and values

Function or valueDescription
cons x q
Signature: x:'T -> q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(n), worst case. Returns a new deque with the element added to the beginning.

empty ()
Signature: unit -> Deque<'?13632>
Type parameters: '?13632

O(1). Returns deque of no elements.

head q
Signature: q:Deque<'T> -> 'T
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns the first element.

init q
Signature: q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns a new deque of the elements before the last element.

isEmpty q
Signature: q:Deque<'T> -> bool
Type parameters: 'T

O(1). Returns true if the deque has no elements.

last q
Signature: q:Deque<'T> -> 'T
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns the last element.

length q
Signature: q:Deque<'T> -> int
Type parameters: 'T

O(1). Returns the count of elememts.

lookup i q
Signature: i:int -> q:Deque<'T> -> 'T
Type parameters: 'T

O(n), worst case. Returns element by index.

ofCatLists xs ys
Signature: xs:'?13654 list -> ys:'?13654 list -> Deque<'?13654>
Type parameters: '?13654

O(ys). Returns a deque of the two lists concatenated.

ofSeq xs
Signature: xs:seq<'?13656> -> Deque<'?13656>
Type parameters: '?13656

O(n/2). Returns a deque of the seq.

remove i q
Signature: i:int -> q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(n), worst case. Returns deque with element removed by index.

rev q
Signature: q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(1). Returns deque reversed.

singleton x
Signature: x:'?13664 -> Deque<'?13664>
Type parameters: '?13664

O(1). Returns a deque of one element.

snoc x q
Signature: x:'T -> q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns a new deque with the element added to the end.

tail q
Signature: q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns a new deque of the elements trailing the first element.

tryGetHead q
Signature: q:Deque<'T> -> 'T option
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns option first element.

tryGetInit q
Signature: q:Deque<'T> -> Deque<'T> option
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns option deque of the elements before the last element.

tryGetLast q
Signature: q:Deque<'T> -> 'T option
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns option last element.

tryGetTail q
Signature: q:Deque<'T> -> Deque<'T> option
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns option deque of the elements trailing the first element.

tryLookup i q
Signature: i:int -> q:Deque<'T> -> 'T option
Type parameters: 'T

O(n), worst case. Returns option element by index.

tryRemove i q
Signature: i:int -> q:Deque<'T> -> Deque<'T> option
Type parameters: 'T

O(n), worst case. Returns option deque with element removed by index.

tryUncons q
Signature: q:Deque<'T> -> ('T * Deque<'T>) option
Type parameters: 'T

O(1) amortized, /O(n), worst case. Returns option first element and tail.

tryUnsnoc q
Signature: q:Deque<'T> -> (Deque<'T> * 'T) option
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns option init and the last element.

tryUpdate i y q
Signature: i:int -> y:'T -> q:Deque<'T> -> Deque<'T> option
Type parameters: 'T

O(n), worst case. Returns option deque with element updated by index.

uncons q
Signature: q:Deque<'T> -> 'T * Deque<'T>
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns the first element and tail.

unsnoc q
Signature: q:Deque<'T> -> Deque<'T> * 'T
Type parameters: 'T

O(1) amortized, O(n), worst case. Returns init and the last element.

update i y q
Signature: i:int -> y:'T -> q:Deque<'T> -> Deque<'T>
Type parameters: 'T

O(n), worst case. Returns deque with element updated by index.

Active patterns

Active patternDescription
( |Cons|Nil| ) q
Signature: q:Deque<'T> -> Choice<('T * Deque<'T>),unit>
Type parameters: 'T

CompiledName: |Cons|Nil|

( |Snoc|Nil| ) q
Signature: q:Deque<'T> -> Choice<(Deque<'T> * 'T),unit>
Type parameters: 'T

CompiledName: |Snoc|Nil|

Fork me on GitHub