package oxbow
Source file mode.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17type t = string let normal = "normal" let locked = "locked" let equal = String.equal let to_string = Fun.id let resolve name ~declared = Option.to_result ~none:(Printf.sprintf "mode not declared: %S" name) @@ List.find_opt (equal name) declared ;; let declare name ~declared = if List.mem name declared then Error (Printf.sprintf "mode already declared: %S" name) else Ok name ;;