1
|
module type S =
|
2
|
sig
|
3
|
val name: string
|
4
|
val activate: unit -> unit
|
5
|
val usage: Format.formatter -> unit
|
6
|
val options: (string * Arg.spec * string) list
|
7
|
val init: unit -> unit
|
8
|
val check_force_stateful : unit -> bool
|
9
|
val refine_machine_code: Lustre_types.top_decl list ->
|
10
|
Machine_code_types.machine_t list -> Machine_code_types.machine_t list
|
11
|
val c_backend_main_loop_body_prefix : string -> string -> Format.formatter -> unit -> unit
|
12
|
val c_backend_main_loop_body_suffix : Format.formatter -> unit -> unit
|
13
|
end
|
14
|
|
15
|
module Default =
|
16
|
struct
|
17
|
let usage fmt = Format.fprintf fmt "No specific help."
|
18
|
let init () = ()
|
19
|
let check_force_stateful () = false
|
20
|
let refine_machine_code prog machines = machines
|
21
|
let c_backend_main_loop_body_prefix basename mname fmt () = ()
|
22
|
let c_backend_main_loop_body_suffix fmt () = ()
|
23
|
end
|