Project

General

Profile

Revision ad4774b0 src/plugins.ml

View differences:

src/plugins.ml
7 7
  List.flatten (
8 8
    List.map Options_management.plugin_opt (
9 9
      List.map (fun m ->
10
	let module M = (val m : PluginType.PluginType) in
10
	let module M = (val m : PluginType.S) in
11 11
	(M.name, M.activate, M.options)
12 12
      ) plugins
13 13
    ))
14 14

  
15 15
let check_force_stateful () =
16 16
  List.exists (fun m ->
17
	let module M = (val m : PluginType.PluginType) in
17
	let module M = (val m : PluginType.S) in
18 18
	M.check_force_stateful ()
19 19
  ) plugins
20 20

  
21 21
let refine_machine_code prog machine_code =
22 22
  List.fold_left (fun accu m ->
23
    let module M = (val m : PluginType.PluginType) in
23
    let module M = (val m : PluginType.S) in
24 24
    M.refine_machine_code prog accu
25 25
  ) machine_code plugins
26 26

  
27 27

  
28 28
let c_backend_main_loop_body_prefix basename mname fmt () = 
29
  List.iter (fun (m: (module PluginType.PluginType)) -> 
30
    let module M = (val m : PluginType.PluginType) in
29
  List.iter (fun (m: (module PluginType.S)) -> 
30
    let module M = (val m : PluginType.S) in
31 31
    M.c_backend_main_loop_body_prefix basename mname fmt ()) plugins
32 32

  
33 33
let c_backend_main_loop_body_suffix fmt () = 
34
  List.iter (fun (m: (module PluginType.PluginType)) -> 
35
    let module M = (val m : PluginType.PluginType) in
34
  List.iter (fun (m: (module PluginType.S)) -> 
35
    let module M = (val m : PluginType.S) in
36 36
    M.c_backend_main_loop_body_suffix fmt ()) plugins
37 37

  
38 38
(* Specific treatment of annotations when inlining, specific of declared plugins *)

Also available in: Unified diff