module Stream:ストリームと解析器sig
..end
type 'a
t
'a
型の値を保持するストリームの型。exception Failure
exception Error of string
警告: これらの関数は高速にアクセスできるストリームを作成します。
これらの関数で作成されたストリームを [< >]
で作成したストリームと混ぜることはできません。
そのようなストリームにアクセスすると Failure
例外が発生します。
val from : (int -> 'a option) -> 'a t
Stream.from f
は関数 f
によって構築されたストリームを返します。
ストリームの新たな要素を作成するために、関数 f
を現在のストリームの番号とともに呼び出します。
関数 f
は値がある場合には Some <value>
を返し、ストリームの終端の場合には None
を返さなければなりません。val of_list : 'a list -> 'a t
val of_string : string -> char t
val of_channel : in_channel -> char t
val iter : ('a -> unit) -> 'a t -> unit
Stream.iter f s
はストリーム s
全体を走査し、各要素に順番に関数 f
を適用します。val next : 'a t -> 'a
Stream.Failure
例外が発生します。val empty : 'a t -> unit
()
を返し、そうでなければ Stream.Failure
例外を発生させます。val peek : 'a t -> 'a option
Some
で包んだものを返します。
ストリームが空の場合には None
を返します。val junk : 'a t -> unit
val count : 'a t -> int
val npeek : int -> 'a t -> 'a list
npeek n
はストリームの最初の n
個の要素のリストを返します。
残りの要素が n
個より少ない場合は、その要素すべてをリストにして返します。