struct
type t = {
name : string;
version : [`V_0_1_6_beta | `V_2_0_2_beta];
}
let to_json {name; version}: Yojson.Basic.json =
`Assoc [
"name", `String name;
"version",
(match version with
|`V_0_1_6_beta -> `String "V_0_1_6_beta"
|`V_2_0_2_beta -> `String "V_2_0_2_beta");
]
let default_v1 = {name = "default_v1"; version = `V_0_1_6_beta}
let default_v2 = {name = "default_v2"; version = `V_2_0_2_beta}
let get_tool t =
let open Machine.Tool.Default in
match t.version with
|`V_0_1_6_beta -> hisat
|`V_2_0_2_beta -> hisat2
let name t = t.name
end