(* Whom the celebration is of. Named [Subject] rather than [Class] because [class] is an OCaml keyword. Used by precedence in Plan 3 (RG 91). *) type t = Temporal | Saint | Bvm | Lord [@@deriving sexp] let all = [ Temporal; Saint; Bvm; Lord ] let to_string = function | Temporal -> "temporal" | Saint -> "saint" | Bvm -> "bvm" | Lord -> "lord" let of_string = function | "temporal" -> Some Temporal | "saint" -> Some Saint | "bvm" -> Some Bvm | "lord" -> Some Lord | _ -> None