Project

General

Profile

Statistics
| Branch: | Tag: | Revision:

lustrec / src / pluginType.ml @ e7cc5186

History | View | Annotate | Download (691 Bytes)

1 f6acf47b ploc
module type PluginType =
2
sig
3
  val name: string
4
  val activate: unit -> unit
5
  val options: (string * Arg.spec * string) list
6
  val check_force_stateful : unit -> bool
7
  val refine_machine_code: LustreSpec.top_decl list ->
8
    Machine_code.machine_t list -> Machine_code.machine_t list
9 7ab1c5bd ploc
  val c_backend_main_loop_body_prefix : string -> string -> Format.formatter ->  unit -> unit
10 f6acf47b ploc
  val c_backend_main_loop_body_suffix : Format.formatter ->  unit -> unit
11
end
12
13
module Default =
14
struct
15
  let check_force_stateful () = false
16
  let refine_machine_code prog machines = machines
17 7ab1c5bd ploc
  let c_backend_main_loop_body_prefix basename mname fmt () = ()
18 f6acf47b ploc
  let c_backend_main_loop_body_suffix fmt () = ()
19
end