Module Frenetic_kernel.Util

Utility functions for Frenetic_kernel. These are used in multiple modules and don't have an obvious home type.

val make_string_of : (Format.formatter ‑> 'a ‑> 'b) ‑> 'a ‑> string

Given a user-defined formatter and a type, make a string. This is a lot like sprintf, and encourages sharing the formatting code.

val pp_exceptions : unit ‑> unit

register pretty printer for located exceptions Location.exception

val map_fst : ('a * 'b) list ‑> f:('a ‑> 'c) ‑> ('c * 'b) list
val map_snd : ('a * 'b) list ‑> f:('b ‑> 'c) ‑> ('a * 'c) list
val open_file : string ‑> unit

Opens file with associated default application. This uses `open` on MacOS and `xdg-open` on Linux.

val compile_dot : ?⁠format:string ‑> ?⁠engine:string ‑> ?⁠title:string ‑> string ‑> string
val show_dot : ?⁠format:string ‑> ?⁠title:string ‑> ?⁠engine:string ‑> string ‑> unit
val show_dot_file : ?⁠format:string ‑> ?⁠title:string ‑> ?⁠engine:string ‑> string ‑> unit