Legend:
Library
Module
Module type
Parameter
Class
Class type
The functor Make constructs an implementation of the signature SEK, and allows the user to choose the value of the settings described above. Be warned, however, that the number and the nature of the settings expected by this functor may change in the future. A relatively forward-compatible way of using this functor is to always pass it a structure that is built by including the structure DefaultSettings and overriding the definition of one or more settings.
A direction appears as a parameter to several operations, such as iter, which can traverse the sequence either forward (from front to back) or backward (from back to front).
The exception Empty is raised by pop and peek operations when applied to an empty sequence.
exceptionEnd
The exception End is raised by the iterator operations get, get_segment, get_and_move, and get_segment_and_jump when the iterator has moved past the end of the sequence.
The submodule Ephemeral, also available under the name E, offers an implementation of ephemeral (mutable) sequences. Please follow the link for details.
The submodule Persistent, also available under the name P, offers an implementation of persistent (immutable) sequences. Please follow the link for details.
snapshot s constructs and returns a persistent sequence whose elements are the elements of s. It is less efficient than snapshot_and_clear, whose use should be preferred, when possible.
Time complexity: O(K). Note that this operation introduces sharing: therefore, it may increase the cost of subsequent operations.
snapshot_and_clear s constructs and returns a persistent sequence whose elements are the elements of an ephemeral sequence s. As a side effect, it clears s.
Time complexity: O(min(K,n)). In other words, the cost is always O(K) and, in the specific case of short sequences, it is only O(n).
In the particular case where the ephemeral sequence s has been constructed by applying a series of push operations, the cost of snapshot_and_clear may be charged to these push operations, allowing one to consider that snapshot_and_clear costs O(1).
The submodule Emulated contains Sek-based replacements for several modules in OCaml's standard library: Array, List, Queue, Stack.
Miscellaneous
val released : unit -> unit
The function call released() does nothing if the library was compiled in release mode, and fails (with an assertion failure) if the library was compiled with assertions enabled.