package batteries
Install
Dune Dependency
Authors
Maintainers
Sources
md5=ea26b5c72e6731e59d856626049cca4d
sha512=55975b62c26f6db77433a3ac31f97af609fc6789bb62ac38b267249c78fd44ff37fe81901f1cf560857b9493a6046dd37b0d1c0234c66bd59e52843aac3ce6cb
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