utils.ml1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20(* * utils.ml * ----------- * Copyright : (c) 2019 - 2020, ZAN DoYe <zandoye@gmail.com> * Licence : MIT * * This file is a part of mew. * This module implements strict impure trie tree data structure. *) module Queue = struct let rec drop n q= if n > 0 then (ignore (Queue.take q); drop (n-1) q) let to_list_rev q= Queue.fold (fun l key-> key::l) [] q let to_list q= q |> to_list_rev |> List.rev end