package batteries
Install
Dune Dependency
Authors
Maintainers
Sources
md5=d02c4f044e53edca010de46f9139ce00
sha512=99a5afa3604c4cf0c849c670111d617f7f255acb0da043b73ddffdf0e299948bce52516ee31921f269de6088156c4e0a187e0b931543c6819c6b25966b303281
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