📄 queue-sig.sml
字号:
(* queue-sig.sml * * COPYRIGHT (c) 1993 by AT&T Bell Laboratories. See COPYRIGHT file for details. * * Imperative fifos * *)signature QUEUE = sig type 'a queue exception Dequeue val mkQueue : unit -> 'a queue (* make a new queue *) val clear : 'a queue -> unit (* remove all elements *) val isEmpty : 'a queue -> bool (* test for empty queue *) val enqueue : 'a queue * 'a -> unit (* enqueue an element at the rear *) val dequeue : 'a queue -> 'a (* remove the front element (raise Dequeue if empty) *) val delete : ('a queue * ('a -> bool)) -> unit (* delete all elements satisfying the given predicate *) val head : 'a queue -> 'a val peek : 'a queue -> 'a option val length : 'a queue -> int val contents : 'a queue -> 'a list val app : ('a -> unit) -> 'a queue -> unit val map : ('a -> 'b) -> 'a queue -> 'b queue val foldl : ('a * 'b -> 'b) -> 'b -> 'a queue -> 'b val foldr : ('a * 'b -> 'b) -> 'b -> 'a queue -> 'b end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -