package batteries
Install
dune-project
Dependency
Authors
Maintainers
Sources
md5=1fd7bddce07cf5d244fc9427f7b5e4d4
sha512=c0f2a0fdc8253e0ea999d8d4c58bfbf32b18d251a2e1d9656bf279de5f01a33e9aabac3af4d95f465f8b671e7711ebd37218043face233340a0c11b08fa62f78
doc/batteries.unthreaded/BatStack/index.html
Module BatStack
Source
Last-in first-out stacks.
This module implements stacks (LIFOs), with in-place modification.
iter f s
applies f
in turn to all elements of s
, from the element at the top of the stack to the element at the bottom of the stack. The stack itself is unchanged.
include BatEnum.Enumerable with type 'a enumerable = 'a t
enum s
returns an enumeration of the elements of stack s
, from the most recently entered to the least recently entered. This enumeration is made on a copy of the input stack, and reading from it will not affect s
.
enum_destruct s
returns a destructive enumeration of the elements of stack s
, from the most recently entered to the least recently entered. Reading the enumeration will progressively empty s
.
of_enum e
returns a new stack containing all the elements of e
. This is equivalent to calling push
with the first element of the enumeration, then with the second, etc.
Note: if s
is a stack, s <> of_enum (enum s)
, as of_enum
reverses the input order.
Boilerplate code
Printing
val print :
?first:string ->
?last:string ->
?sep:string ->
('a BatInnerIO.output -> 'b -> unit) ->
'a BatInnerIO.output ->
'b t ->
unit