Stack

このページは最後に更新されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

last mod. 2009-09-10 (木) 14:16:55

Chapter 20 標準ライブラリ

module Stack: sig  end

先入れ後出し (Last-in first-out) のスタックです。 このモジュールでは、その場置き換え(in-place)方式のスタック (LIFOs) が実装されています。


type 'a t

型 'a の要素を保持するスタックの型です。

exception Empty

Stack.pop や Stack.top に空のスタックを適用した場合発生する例外です。

val create : unit -> 'a t

新しい空のスタックを返します。

val push : 'a -> 'a t -> unit

push x s は、要素 x をスタック s の一番上に追加します。

val pop : 'a t -> 'a

pop s はスタック s の一番上にある要素を取り除いて返します。スタックが空である場合は例外 Empty を発生します。

val top : 'a t -> 'a

top s は、スタック s の一番上にある要素を返します (取り除きません) 。スタックが空である場合は例外 Empty を発生します。

val clear : 'a t -> unit

スタックからすべての要素を消し去ります。m

val copy : 'a t -> 'a t

与えられたスタックのコピーを作成して返します。

val is_empty : 'a t -> bool

与えられたスタックが空ならば true を、そうでなければ false を返します。

val length : 'a t -> int

スタックの要素数を返します。

val iter : ('a -> unit) -> 'a t -> unit

iter f s は s のすべての要素に次々と関数 f を適用します。適用順は上から下です。スタック自体は変更されません。

新規 編集 添付