⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 queue.sml

📁 这是我们参加06年全国开源软件的竞赛作品
💻 SML
字号:
(* queue.sml * * COPYRIGHT (c) 1993 by AT&T Bell Laboratories.  See COPYRIGHT file for details. * * Imperative fifos * *)structure Queue :> QUEUE =  struct    type 'a queue = 'a Fifo.fifo ref    exception Dequeue = Fifo.Dequeue    fun mkQueue () = ref Fifo.empty    fun clear q = (q := Fifo.empty)    fun enqueue (q,x) = q := (Fifo.enqueue (!q, x))    fun dequeue q = let           val (newq, x) = Fifo.dequeue (!q)           in            q := newq;            x          end      fun delete (q, pred) = (q := Fifo.delete (!q, pred))    fun head q = Fifo.head (!q)    fun peek q = Fifo.peek (!q)    fun isEmpty q = Fifo.isEmpty (!q)    fun length q = Fifo.length (!q)    fun contents q = Fifo.contents (!q)    fun app f q = Fifo.app f (!q)    fun map f q = ref(Fifo.map f (!q))    fun foldl f b q = Fifo.foldl f b (!q)    fun foldr f b q = Fifo.foldr f b (!q)  end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -