sig
type t =
[ `And of Ketrew_program.t list
| `Exec of string list
| `Shell_command of string ]
val to_yojson : Ketrew_program.t -> Yojson.Safe.json
val of_yojson :
Yojson.Safe.json -> [ `Error of string | `Ok of Ketrew_program.t ]
val to_shell_commands : Ketrew_program.t -> string list
val to_single_shell_command : Ketrew_program.t -> string
val log : Ketrew_program.t -> Ketrew_pervasives.Log.t
val to_string_hum : Ketrew_program.t -> string
end