}
(** A shell script. *)
+type variable =
+ | T_unit
+ | T_bool of bool
+ | T_string of string
+ | T_int of Big_int.big_int
+ | T_float of float
+(** Typed variable (see also [whenproto.x]) *)
+
+val string_of_variable : variable -> string
+
+val variable_of_rpc : Whenproto_aux.variable -> variable
+val rpc_of_variable : variable -> Whenproto_aux.variable
+
+type variables = variable Whenutils.StringMap.t
+(** A set of variables. *)
+
type preinfo = {
pi_job_name : string; (** Job name. *)
pi_serial : Big_int.big_int; (** Job serial number. *)
+ pi_variables : (string * variable) list; (** Variables set in job. *)
+ pi_running : preinfo_running_job list; (** List of running jobs. *)
+}
+and preinfo_running_job = {
+ pirun_job_name : string; (** Running job name. *)
+ pirun_serial : Big_int.big_int; (** Running job serial number. *)
+ pirun_start_time : float; (** Running job start time. *)
+ pirun_pid : int; (** Running job process ID. *)
}
(** Information available to pre function before the job runs. *)
type post = result -> unit
(** Pre and post functions. *)
-type variable =
- | T_unit
- | T_bool of bool
- | T_string of string
- | T_int of Big_int.big_int
- | T_float of float
-(** Typed variable (see also [whenproto.x]) *)
-
-val string_of_variable : variable -> string
-
-val variable_of_rpc : Whenproto_aux.variable -> variable
-val rpc_of_variable : variable -> Whenproto_aux.variable
-
-type variables = variable Whenutils.StringMap.t
-(** A set of variables. *)
-
type job_cond =
| When_job of whenexpr (** when ... : << >> *)
| Every_job of periodexpr (** every ... : << >> *)